LLVM: llvm::dwarf_linker::parallel::DwarfEmitterImpl Class Reference (original) (raw)

This class emits DWARF data to the output stream. More...

#include "[DWARFLinker/Parallel/DWARFEmitterImpl.h](DWARFEmitterImpl%5F8h%5Fsource.html)"

Public Member Functions
DwarfEmitterImpl (DWARFLinker::OutputFileType OutFileType, raw_pwrite_stream &OutFile)
Error init (Triple TheTriple, StringRef Swift5ReflectionSegmentName)
Initialize AsmPrinter data.
const Triple & getTargetTriple ()
Returns triple of output stream.
void finish ()
Dump the file to the disk.
void emitAbbrevs (const SmallVector< std::unique_ptr< DIEAbbrev > > &Abbrevs, unsigned DwarfVersion)
Emit abbreviations.
void emitCompileUnitHeader (DwarfUnit &Unit)
Emit compile unit header.
void emitDIE (DIE &Die)
Emit DIE recursively.
uint64_t getDebugInfoSectionSize () const
Returns size of generated .debug_info section.
void emitDebugNames (DWARF5AccelTable &Table, DebugNamesUnitsOffsets &CUOffsets, CompUnitIDToIdx &UnitIDToIdxMap)
Emits .debug_names section according to the specified Table.
void emitAppleNames (AccelTable< AppleAccelTableStaticOffsetData > &Table)
Emits .apple_names section according to the specified Table.
void emitAppleNamespaces (AccelTable< AppleAccelTableStaticOffsetData > &Table)
Emits .apple_namespaces section according to the specified Table.
void emitAppleObjc (AccelTable< AppleAccelTableStaticOffsetData > &Table)
Emits .apple_objc section according to the specified Table.
void emitAppleTypes (AccelTable< AppleAccelTableStaticTypeData > &Table)
Emits .apple_types section according to the specified Table.

This class emits DWARF data to the output stream.

It emits already generated section data and specific data, which could not be generated by CompileUnit.

Definition at line 49 of file DWARFEmitterImpl.h.

emitAbbrevs()

emitAppleNames()

emitAppleNamespaces()

emitAppleObjc()

emitAppleTypes()

emitCompileUnitHeader()

void DwarfEmitterImpl::emitCompileUnitHeader ( DwarfUnit & Unit )

emitDebugNames()

emitDIE()

void DwarfEmitterImpl::emitDIE ( DIE & Die )

finish()

void llvm::dwarf_linker::parallel::DwarfEmitterImpl::finish ( ) inline

getDebugInfoSectionSize()

uint64_t llvm::dwarf_linker::parallel::DwarfEmitterImpl::getDebugInfoSectionSize ( ) const inline

getTargetTriple()

const Triple & llvm::dwarf_linker::parallel::DwarfEmitterImpl::getTargetTriple ( ) inline

init()

Initialize AsmPrinter data.

Definition at line 25 of file DWARFEmitterImpl.cpp.

References llvm::MCTargetOptions::AsmVerbose, llvm::dwarf_linker::DWARFLinkerBase::Assembly, llvm::Target::createAsmPrinter(), llvm::Target::createAsmStreamer(), llvm::Target::createMCAsmBackend(), llvm::Target::createMCAsmInfo(), llvm::Target::createMCCodeEmitter(), llvm::Target::createMCInstPrinter(), llvm::Target::createMCInstrInfo(), llvm::Target::createMCObjectFileInfo(), llvm::Target::createMCObjectStreamer(), llvm::Target::createMCRegInfo(), llvm::Target::createMCSubtargetInfo(), llvm::createStringError(), llvm::Target::createTargetMachine(), llvm::MCTargetOptions::EnableDwarfDirectory, llvm::Triple::getTriple(), llvm::mc::InitMCTargetOptionsFromFlags(), llvm::TargetRegistry::lookupTarget(), llvm::MCTargetOptions::MCUseDwarfDirectory, llvm::dwarf_linker::DWARFLinkerBase::Object, and llvm::Error::success().


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