LLVM 22.0.0git
llvm::pdb::DbiModuleDescriptorBuilder Class Reference

#include "llvm/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.h"

Public Types

using MergeSymbolsCallback

Public Member Functions

LLVM_ABI DbiModuleDescriptorBuilder (StringRef ModuleName, uint32_t ModIndex, msf::MSFBuilder &Msf)
LLVM_ABI ~DbiModuleDescriptorBuilder ()
 DbiModuleDescriptorBuilder (const DbiModuleDescriptorBuilder &)=delete
DbiModuleDescriptorBuilderoperator= (const DbiModuleDescriptorBuilder &)=delete
LLVM_ABI void setPdbFilePathNI (uint32_t NI)
LLVM_ABI void setObjFileName (StringRef Name)
void setMergeSymbolsCallback (void *Ctx, MergeSymbolsCallback Callback)
void setStringTableFixups (std::vector< StringTableFixup > &&Fixups)
LLVM_ABI void setFirstSectionContrib (const SectionContrib &SC)
LLVM_ABI void addSymbol (codeview::CVSymbol Symbol)
LLVM_ABI void addSymbolsInBulk (ArrayRef< uint8_t > BulkSymbols)
LLVM_ABI void addUnmergedSymbols (void *SymSrc, uint32_t SymLength)
LLVM_ABI void addDebugSubsection (std::shared_ptr< codeview::DebugSubsection > Subsection)
LLVM_ABI void addDebugSubsection (const codeview::DebugSubsectionRecord &SubsectionContents)
LLVM_ABI uint16_t getStreamIndex () const
StringRef getModuleName () const
StringRef getObjFileName () const
unsigned getModuleIndex () const
ArrayRef< std::string > source_files () const
LLVM_ABI uint32_t calculateSerializedLength () const
uint32_t getNextSymbolOffset () const
 Return the offset within the module symbol stream of the next symbol record passed to addSymbol.
LLVM_ABI void finalize ()
LLVM_ABI Error finalizeMsfLayout ()
LLVM_ABI Error commit (BinaryStreamWriter &ModiWriter)
 Commit the DBI descriptor to the DBI stream.
LLVM_ABI Error commitSymbolStream (const msf::MSFLayout &MsfLayout, WritableBinaryStreamRef MsfBuffer)
 Commit the accumulated symbols to the module symbol stream.

Friends

class DbiStreamBuilder

Detailed Description

Definition at line 64 of file DbiModuleDescriptorBuilder.h.

Member Typedef Documentation

◆ MergeSymbolsCallback

Initial value:
Error (*)(void *Ctx, void *Symbols,
Provides write only access to a subclass of WritableBinaryStream.

Definition at line 80 of file DbiModuleDescriptorBuilder.h.

Constructor & Destructor Documentation

◆ DbiModuleDescriptorBuilder() [1/2]

DbiModuleDescriptorBuilder::DbiModuleDescriptorBuilder ( StringRef ModuleName,
uint32_t ModIndex,
msf::MSFBuilder & Msf )

Definition at line 43 of file DbiModuleDescriptorBuilder.cpp.

Referenced by DbiModuleDescriptorBuilder(), and operator=().

◆ ~DbiModuleDescriptorBuilder()

DbiModuleDescriptorBuilder::~DbiModuleDescriptorBuilder ( )
default

References LLVM_ABI.

◆ DbiModuleDescriptorBuilder() [2/2]

llvm::pdb::DbiModuleDescriptorBuilder::DbiModuleDescriptorBuilder ( const DbiModuleDescriptorBuilder & )
delete

Member Function Documentation

◆ addDebugSubsection() [1/2]

void DbiModuleDescriptorBuilder::addDebugSubsection ( const codeview::DebugSubsectionRecord & SubsectionContents)

Definition at line 219 of file DbiModuleDescriptorBuilder.cpp.

◆ addDebugSubsection() [2/2]

LLVM_ABI void llvm::pdb::DbiModuleDescriptorBuilder::addDebugSubsection ( std::shared_ptr< codeview::DebugSubsection > Subsection)

References LLVM_ABI.

◆ addSymbol()

void DbiModuleDescriptorBuilder::addSymbol ( codeview::CVSymbol Symbol)

Definition at line 70 of file DbiModuleDescriptorBuilder.cpp.

References addSymbolsInBulk().

◆ addSymbolsInBulk()

void DbiModuleDescriptorBuilder::addSymbolsInBulk ( ArrayRef< uint8_t > BulkSymbols)

◆ addUnmergedSymbols()

void DbiModuleDescriptorBuilder::addUnmergedSymbols ( void * SymSrc,
uint32_t SymLength )

◆ calculateSerializedLength()

uint32_t DbiModuleDescriptorBuilder::calculateSerializedLength ( ) const

Definition at line 113 of file DbiModuleDescriptorBuilder.cpp.

References llvm::alignTo().

◆ commit()

Error DbiModuleDescriptorBuilder::commit ( BinaryStreamWriter & ModiWriter)

◆ commitSymbolStream()

◆ finalize()

void DbiModuleDescriptorBuilder::finalize ( )

◆ finalizeMsfLayout()

Error DbiModuleDescriptorBuilder::finalizeMsfLayout ( )

◆ getModuleIndex()

unsigned llvm::pdb::DbiModuleDescriptorBuilder::getModuleIndex ( ) const
inline

Definition at line 110 of file DbiModuleDescriptorBuilder.h.

◆ getModuleName()

StringRef llvm::pdb::DbiModuleDescriptorBuilder::getModuleName ( ) const
inline

Definition at line 107 of file DbiModuleDescriptorBuilder.h.

◆ getNextSymbolOffset()

uint32_t llvm::pdb::DbiModuleDescriptorBuilder::getNextSymbolOffset ( ) const
inline

Return the offset within the module symbol stream of the next symbol record passed to addSymbol.

Add four to account for the signature.

Definition at line 118 of file DbiModuleDescriptorBuilder.h.

Referenced by finalize().

◆ getObjFileName()

StringRef llvm::pdb::DbiModuleDescriptorBuilder::getObjFileName ( ) const
inline

Definition at line 108 of file DbiModuleDescriptorBuilder.h.

◆ getStreamIndex()

uint16_t DbiModuleDescriptorBuilder::getStreamIndex ( ) const

Definition at line 53 of file DbiModuleDescriptorBuilder.cpp.

◆ operator=()

DbiModuleDescriptorBuilder & llvm::pdb::DbiModuleDescriptorBuilder::operator= ( const DbiModuleDescriptorBuilder & )
delete

◆ setFirstSectionContrib()

void DbiModuleDescriptorBuilder::setFirstSectionContrib ( const SectionContrib & SC)

Definition at line 65 of file DbiModuleDescriptorBuilder.cpp.

◆ setMergeSymbolsCallback()

void llvm::pdb::DbiModuleDescriptorBuilder::setMergeSymbolsCallback ( void * Ctx,
MergeSymbolsCallback Callback )
inline

Definition at line 83 of file DbiModuleDescriptorBuilder.h.

◆ setObjFileName()

void DbiModuleDescriptorBuilder::setObjFileName ( StringRef Name)

Definition at line 57 of file DbiModuleDescriptorBuilder.cpp.

◆ setPdbFilePathNI()

void DbiModuleDescriptorBuilder::setPdbFilePathNI ( uint32_t NI)

Definition at line 61 of file DbiModuleDescriptorBuilder.cpp.

◆ setStringTableFixups()

void llvm::pdb::DbiModuleDescriptorBuilder::setStringTableFixups ( std::vector< StringTableFixup > && Fixups)
inline

Definition at line 88 of file DbiModuleDescriptorBuilder.h.

◆ source_files()

ArrayRef< std::string > llvm::pdb::DbiModuleDescriptorBuilder::source_files ( ) const
inline

Definition at line 112 of file DbiModuleDescriptorBuilder.h.

◆ DbiStreamBuilder

friend class DbiStreamBuilder
friend

Definition at line 65 of file DbiModuleDescriptorBuilder.h.

References DbiStreamBuilder, and LLVM_ABI.

Referenced by DbiStreamBuilder.


The documentation for this class was generated from the following files: