LLVM: llvm::DWARFDebugLine::Prologue Struct Reference (original) (raw)
#include "[llvm/DebugInfo/DWARF/DWARFDebugLine.h](DWARFDebugLine%5F8h%5Fsource.html)"
| Public Attributes | |
|---|---|
| uint64_t | TotalLength |
| The size in bytes of the statement information for this compilation unit (not including the total_length field itself). | |
| dwarf::FormParams | FormParams |
| Version, address size (starting in v5), and DWARF32/64 format; these parameters affect interpretation of forms (used in the directory and file tables starting with v5). | |
| uint64_t | PrologueLength |
| The number of bytes following the prologue_length field to the beginning of the first byte of the statement program itself. | |
| uint8_t | SegSelectorSize |
| In v5, size in bytes of a segment selector. | |
| uint8_t | MinInstLength |
| The size in bytes of the smallest target machine instruction. | |
| uint8_t | MaxOpsPerInst |
| The maximum number of individual operations that may be encoded in an instruction. | |
| uint8_t | DefaultIsStmt |
| The initial value of theis_stmtregister. | |
| int8_t | LineBase |
| This parameter affects the meaning of the special opcodes. See below. | |
| uint8_t | LineRange |
| This parameter affects the meaning of the special opcodes. See below. | |
| uint8_t | OpcodeBase |
| The number assigned to the first special opcode. | |
| ContentTypeTracker | ContentTypes |
| This tracks which optional file format content types are present. | |
| std::vector< uint8_t > | StandardOpcodeLengths |
| std::vector< DWARFFormValue > | IncludeDirectories |
| std::vector< FileNameEntry > | FileNames |
Definition at line 60 of file DWARFDebugLine.h.
| DWARFDebugLine::Prologue::Prologue | ( | ) |
|---|
◆ clear()
| void DWARFDebugLine::Prologue::clear | ( | ) |
|---|
Definition at line 105 of file DWARFDebugLine.cpp.
References ContentTypes, DefaultIsStmt, llvm::dwarf::DWARF32, FileNames, FormParams, IncludeDirectories, LineBase, LineRange, MaxOpsPerInst, MinInstLength, OpcodeBase, PrologueLength, SegSelectorSize, StandardOpcodeLengths, and TotalLength.
Referenced by parse(), and Prologue().
◆ dump()
Definition at line 117 of file DWARFDebugLine.cpp.
References llvm::DWARFDebugLine::FileNameEntry::Checksum, llvm::consumeError(), ContentTypes, DefaultIsStmt, llvm::MD5::MD5Result::digest(), llvm::DWARFDebugLine::FileNameEntry::DirIdx, llvm::DWARFFormValue::dump(), FileNames, llvm::format(), llvm::dwarf::FormatString(), llvm::formatv(), FormParams, getAddressSize(), llvm::DWARFFormValue::getAsCString(), llvm::dwarf::getDwarfOffsetByteSize(), getVersion(), I, IncludeDirectories, llvm::DWARFDebugLine::FileNameEntry::Length, LineBase, LineRange, MaxOpsPerInst, MinInstLength, llvm::DWARFDebugLine::FileNameEntry::ModTime, llvm::DWARFDebugLine::FileNameEntry::Name, OpcodeBase, PrologueLength, SegSelectorSize, llvm::DWARFDebugLine::FileNameEntry::Source, StandardOpcodeLengths, TotalLength, totalLengthIsValid(), and versionIsSupported().
◆ getAddressSize()
| uint8_t llvm::DWARFDebugLine::Prologue::getAddressSize ( ) const | inline |
|---|
◆ getFileNameByIndex()
Definition at line 1479 of file DWARFDebugLine.cpp.
References llvm::sys::path::append(), assert(), llvm::StringRef::empty(), llvm::sys::path::filename(), getFileNameEntry(), getVersion(), hasFileAtIndex(), IncludeDirectories, llvm::dwarf_linker::isPathAbsoluteOnWindowsOrPosix(), llvm::dwarf::toString(), and llvm::dwarf::toStringRef().
◆ getFileNameEntry()
◆ getFormParams()
◆ getLastValidFileIndex()
| std::optional< uint64_t > DWARFDebugLine::Prologue::getLastValidFileIndex | ( | ) | const |
|---|
◆ getLength()
| uint64_t DWARFDebugLine::Prologue::getLength | ( | ) | const |
|---|
◆ getVersion()
| uint16_t llvm::DWARFDebugLine::Prologue::getVersion ( ) const | inline |
|---|
◆ hasFileAtIndex()
| bool DWARFDebugLine::Prologue::hasFileAtIndex | ( | uint64_t | FileIndex | ) | const |
|---|
◆ isDWARF64()
| bool llvm::DWARFDebugLine::Prologue::isDWARF64 ( ) const | inline |
|---|
◆ parse()
Definition at line 363 of file DWARFDebugLine.cpp.
References assert(), clear(), ContentTypes, llvm::createStringError(), DefaultIsStmt, FileNames, FormParams, llvm::DataExtractor::getAddressSize(), getAddressSize(), llvm::DWARFDataExtractorBase< Relocator >::getInitialLength(), llvm::DWARFDataExtractorBase< Relocator >::getRelocatedValue(), llvm::DataExtractor::getU16(), llvm::DataExtractor::getU8(), getVersion(), I, IncludeDirectories, llvm::invalid_argument, llvm::joinErrors(), LineBase, LineRange, MaxOpsPerInst, MinInstLength, llvm::not_supported, OpcodeBase, parseV2DirFileTables(), parseV5DirFileTables(), PrologueLength, SegSelectorSize, sizeofPrologueLength(), StandardOpcodeLengths, llvm::Error::success(), llvm::toString(), TotalLength, and versionIsSupported().
◆ sizeofPrologueLength()
| uint32_t llvm::DWARFDebugLine::Prologue::sizeofPrologueLength ( ) const | inline |
|---|
◆ sizeofTotalLength()
| uint32_t llvm::DWARFDebugLine::Prologue::sizeofTotalLength ( ) const | inline |
|---|
◆ totalLengthIsValid()
| bool DWARFDebugLine::Prologue::totalLengthIsValid | ( | ) | const |
|---|
◆ ContentTypes
◆ DefaultIsStmt
uint8_t llvm::DWARFDebugLine::Prologue::DefaultIsStmt
◆ FileNames
std::vector<FileNameEntry> llvm::DWARFDebugLine::Prologue::FileNames
◆ FormParams
Version, address size (starting in v5), and DWARF32/64 format; these parameters affect interpretation of forms (used in the directory and file tables starting with v5).
Definition at line 69 of file DWARFDebugLine.h.
Referenced by clear(), llvm::dwarf_linker::parallel::CompileUnit::cloneAndEmitLineTable(), dump(), llvm::dwarf_linker::classic::DwarfStreamer::emitLineTableForUnit(), getAddressSize(), getFormParams(), getVersion(), isDWARF64(), and parse().
◆ IncludeDirectories
std::vector<DWARFFormValue> llvm::DWARFDebugLine::Prologue::IncludeDirectories
◆ LineBase
int8_t llvm::DWARFDebugLine::Prologue::LineBase
◆ LineRange
uint8_t llvm::DWARFDebugLine::Prologue::LineRange
◆ MaxOpsPerInst
uint8_t llvm::DWARFDebugLine::Prologue::MaxOpsPerInst
◆ MinInstLength
uint8_t llvm::DWARFDebugLine::Prologue::MinInstLength
The size in bytes of the smallest target machine instruction.
Statement program opcodes that alter the address register first multiply their operands by this value.
Definition at line 78 of file DWARFDebugLine.h.
Referenced by clear(), dump(), and parse().
◆ OpcodeBase
uint8_t llvm::DWARFDebugLine::Prologue::OpcodeBase
◆ PrologueLength
uint64_t llvm::DWARFDebugLine::Prologue::PrologueLength
◆ SegSelectorSize
uint8_t llvm::DWARFDebugLine::Prologue::SegSelectorSize
◆ StandardOpcodeLengths
std::vector<uint8_t> llvm::DWARFDebugLine::Prologue::StandardOpcodeLengths
◆ TotalLength
uint64_t llvm::DWARFDebugLine::Prologue::TotalLength
The documentation for this struct was generated from the following files:
- include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
- lib/DebugInfo/DWARF/DWARFDebugLine.cpp