class TpiStreamBuilder

Declaration

class TpiStreamBuilder { /* full declaration omitted */ };

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:40

Member Variables

private msf::MSFBuilder& Msf
private llvm::BumpPtrAllocator& Allocator
private uint32_t TypeRecordCount = 0
private size_t TypeRecordBytes = 0
private llvm::pdb::PdbRaw_TpiVer VerHeader = PdbRaw_TpiVer::PdbTpiV80
private std::vector<ArrayRef<uint8_t>> TypeRecBuffers
private std::vector<uint32_t> TypeHashes
private std::vector<codeview::TypeIndexOffset> TypeIndexOffsets
private uint32_t HashStreamIndex = kInvalidStreamIndex
private std::unique_ptr<BinaryByteStream> HashValueStream
private const llvm::pdb::TpiStreamHeader* Header
private uint32_t Idx

Method Overview

Methods

TpiStreamBuilder(msf::MSFBuilder& Msf,
                 uint32_t StreamIdx)

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:42

Parameters

msf::MSFBuilder& Msf
uint32_t StreamIdx

TpiStreamBuilder(
    const llvm::pdb::TpiStreamBuilder&)

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:45

Parameters

const llvm::pdb::TpiStreamBuilder&

void addTypeRecord(ArrayRef<uint8_t> Type,
                   Optional<uint32_t> Hash)

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:49

Parameters

ArrayRef<uint8_t> Type
Optional<uint32_t> Hash

void addTypeRecords(ArrayRef<uint8_t> Types,
                    ArrayRef<uint16_t> Sizes,
                    ArrayRef<uint32_t> Hashes)

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:50

Parameters

ArrayRef<uint8_t> Types
ArrayRef<uint16_t> Sizes
ArrayRef<uint32_t> Hashes

uint32_t calculateHashBufferSize() const

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:64

uint32_t calculateIndexOffsetSize() const

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:65

uint32_t calculateSerializedLength()

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:59

llvm::Error commit(
    const msf::MSFLayout& Layout,
    llvm::WritableBinaryStreamRef Buffer)

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:57

Parameters

const msf::MSFLayout& Layout
llvm::WritableBinaryStreamRef Buffer

llvm::Error finalize()

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:66

llvm::Error finalizeMsfLayout()

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:53

uint32_t getRecordCount() const

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:55

void setVersionHeader(
    llvm::pdb::PdbRaw_TpiVer Version)

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:48

Parameters

llvm::pdb::PdbRaw_TpiVer Version

void updateTypeIndexOffsets(
    ArrayRef<uint16_t> Sizes)

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:62

Parameters

ArrayRef<uint16_t> Sizes

~TpiStreamBuilder()

Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:43