LLVM 17.0.0git
|
A helper struct providing information about the byte size of DW_FORM values that vary in size depending on the DWARF version, address byte size, or DWARF32/DWARF64. More...
#include "llvm/BinaryFormat/Dwarf.h"
Public Member Functions | |
uint8_t | getRefAddrByteSize () const |
The definition of the size of form DW_FORM_ref_addr depends on the version. | |
uint8_t | getDwarfOffsetByteSize () const |
The size of a reference is determined by the DWARF 32/64-bit format. | |
operator bool () const | |
Public Attributes | |
uint16_t | Version |
uint8_t | AddrSize |
DwarfFormat | Format |
bool | DwarfUsesRelocationsAcrossSections = false |
True if DWARF v2 output generally uses relocations for references to other .debug_* sections. | |
A helper struct providing information about the byte size of DW_FORM values that vary in size depending on the DWARF version, address byte size, or DWARF32/DWARF64.
|
inline |
The size of a reference is determined by the DWARF 32/64-bit format.
Definition at line 749 of file Dwarf.h.
References Format, and llvm::dwarf::getDwarfOffsetByteSize().
Referenced by llvm::DWARFYAML::emitDebugInfo(), llvm::DWARFUnitHeader::extract(), llvm::DWARFUnitHeader::getDwarfOffsetByteSize(), llvm::StrOffsetsContributionDescriptor::getDwarfOffsetByteSize(), llvm::dwarf::getFixedFormByteSize(), getRefAddrByteSize(), llvm::DIEExpr::sizeOf(), llvm::DIELabel::sizeOf(), llvm::DIEDelta::sizeOf(), llvm::DIELocList::sizeOf(), and writeDIE().
|
inline |
The definition of the size of form DW_FORM_ref_addr depends on the version.
In DWARF v2 it's the size of an address; after that, it's the size of a reference.
Definition at line 742 of file Dwarf.h.
References AddrSize, getDwarfOffsetByteSize(), and Version.
Referenced by llvm::dwarf::getFixedFormByteSize(), llvm::DWARFUnitHeader::getRefAddrByteSize(), llvm::DIEEntry::sizeOf(), and writeDIE().
|
inlineexplicit |
uint8_t llvm::dwarf::FormParams::AddrSize |
Definition at line 733 of file Dwarf.h.
Referenced by llvm::DWARFUnitHeader::extract(), llvm::DWARFUnitHeader::getAddressByteSize(), llvm::DWARFDebugLine::Prologue::getAddressSize(), llvm::dwarf::getFixedFormByteSize(), getRefAddrByteSize(), operator bool(), llvm::DWARFDebugLine::Prologue::parse(), llvm::DIELabel::sizeOf(), and writeDIE().
bool llvm::dwarf::FormParams::DwarfUsesRelocationsAcrossSections = false |
True if DWARF v2 output generally uses relocations for references to other .debug_* sections.
Definition at line 737 of file Dwarf.h.
Referenced by llvm::DIEString::sizeOf().
DwarfFormat llvm::dwarf::FormParams::Format |
Definition at line 734 of file Dwarf.h.
Referenced by llvm::DWARFDebugLine::Prologue::dump(), llvm::DwarfStreamer::emitLineTableForUnit(), llvm::DWARFUnitHeader::extract(), getDwarfOffsetByteSize(), llvm::DWARFUnitHeader::getFormat(), llvm::StrOffsetsContributionDescriptor::getFormat(), llvm::DWARFUnitHeader::getUnitLengthFieldByteSize(), llvm::DWARFDebugLine::Prologue::isDWARF64(), llvm::DWARFDebugLine::Prologue::parse(), and llvm::DIELocList::sizeOf().
uint16_t llvm::dwarf::FormParams::Version |
Definition at line 732 of file Dwarf.h.
Referenced by llvm::DWARFUnitHeader::extract(), llvm::DWARFDebugNames::NameIndex::getEntry(), getRefAddrByteSize(), llvm::DWARFDebugLine::Prologue::getVersion(), llvm::DWARFUnitHeader::getVersion(), llvm::StrOffsetsContributionDescriptor::getVersion(), operator bool(), and llvm::DWARFDebugLine::Prologue::parse().