LLVM: llvm::MCDwarfLineTableHeader Struct Reference (original) (raw)

#include "[llvm/MC/MCDwarf.h](MCDwarf%5F8h%5Fsource.html)"

Public Member Functions
MCDwarfLineTableHeader ()=default
LLVM_ABI Expected< unsigned > tryGetFile (StringRef &Directory, StringRef &FileName, std::optional< MD5::MD5Result > Checksum, std::optional< StringRef > Source, uint16_t DwarfVersion, unsigned FileNumber=0)
LLVM_ABI std::pair< MCSymbol *, MCSymbol * > Emit (MCStreamer *MCOS, MCDwarfLineTableParams Params, std::optional< MCDwarfLineStr > &LineStr) const
LLVM_ABI std::pair< MCSymbol *, MCSymbol * > Emit (MCStreamer *MCOS, MCDwarfLineTableParams Params, ArrayRef< char > SpecialOpcodeLengths, std::optional< MCDwarfLineStr > &LineStr) const
void resetMD5Usage ()
void trackMD5Usage (bool MD5Used)
bool isMD5UsageConsistent () const
void setRootFile (StringRef Directory, StringRef FileName, std::optional< MD5::MD5Result > Checksum, std::optional< StringRef > Source)
void resetFileTable ()
Public Attributes
MCSymbol * Label = nullptr
SmallVector< std::string, 3 > MCDwarfDirs
SmallVector< MCDwarfFile, 3 > MCDwarfFiles
StringMap< unsigned > SourceIdMap
std::string CompilationDir
MCDwarfFile RootFile
bool HasAnySource = false

Definition at line 277 of file MCDwarf.h.

llvm::MCDwarfLineTableHeader::MCDwarfLineTableHeader ( ) default

Emit() [1/2]

Definition at line 550 of file MCDwarf.cpp.

References llvm::MCContext::createTempSymbol(), DWARF2_LINE_DEFAULT_IS_STMT, llvm::MCDwarfLineTableParams::DWARF2LineBase, llvm::MCDwarfLineTableParams::DWARF2LineRange, llvm::MCStreamer::emitAbsoluteSymbolDiff(), llvm::MCStreamer::emitDwarfLineStartLabel(), llvm::MCStreamer::emitDwarfUnitLength(), llvm::MCStreamer::emitInt16(), llvm::MCStreamer::emitInt8(), llvm::MCStreamer::emitLabel(), llvm::MCContext::getAsmInfo(), llvm::MCAsmInfo::getCodePointerSize(), llvm::MCStreamer::getContext(), llvm::MCContext::getDwarfFormat(), llvm::dwarf::getDwarfOffsetByteSize(), llvm::MCContext::getDwarfVersion(), llvm::MCAsmInfo::getMinInstAlignment(), Label, llvm::Length, and llvm::ArrayRef< T >::size().

Emit() [2/2]

isMD5UsageConsistent()

bool llvm::MCDwarfLineTableHeader::isMD5UsageConsistent ( ) const inline

resetFileTable()

void llvm::MCDwarfLineTableHeader::resetFileTable ( ) inline

resetMD5Usage()

void llvm::MCDwarfLineTableHeader::resetMD5Usage ( ) inline

setRootFile()

trackMD5Usage()

void llvm::MCDwarfLineTableHeader::trackMD5Usage ( bool MD5Used) inline

tryGetFile()

Definition at line 648 of file MCDwarf.cpp.

References assert(), CompilationDir, llvm::StringRef::empty(), llvm::sys::path::filename(), llvm::find(), HasAnySource, llvm::inconvertibleErrorCode(), isRootFile(), llvm::make_error(), MCDwarfDirs, MCDwarfFiles, llvm::sys::path::parent_path(), RootFile, SourceIdMap, llvm::toStringRef(), and trackMD5Usage().

CompilationDir

std::string llvm::MCDwarfLineTableHeader::CompilationDir

HasAnySource

bool llvm::MCDwarfLineTableHeader::HasAnySource = false

Label

MCSymbol* llvm::MCDwarfLineTableHeader::Label = nullptr

MCDwarfDirs

SmallVector<std::string, 3> llvm::MCDwarfLineTableHeader::MCDwarfDirs

MCDwarfFiles

RootFile

SourceIdMap


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