Base class describing the header of any kind of "unit." Some information is specific to certain unit types. More...
#include "[llvm/DebugInfo/DWARF/DWARFUnit.h](DWARFUnit%5F8h%5Fsource.html)"
Base class describing the header of any kind of "unit." Some information is specific to certain unit types.
We separate this class out so we can parse the header before deciding what specific kind of unit to construct.
Definition at line 55 of file DWARFUnit.h .
◆ applyIndexEntry()Parse a unit header from debug_info starting at offset_ptr.
Note that [SectionKind](classllvm%5F1%5F1SectionKind.html "SectionKind - This is a simple POD value that classifies the properties of a section.") is used as a hint to guess the unit type for DWARF formats prior to DWARFv5. In DWARFv5 the unit type is explicitly defined in the header and the hint is ignored.
Definition at line 262 of file DWARFUnit.cpp .
References assert() , llvm::DWARFContext::checkAddressSizeSupported() , llvm::createStringError() , llvm::DW_SECT_EXT_TYPES , getAddressByteSize() , llvm::DWARFDataExtractorBase< Relocator >::getInitialLength() , getLength() , llvm::DWARFContext::getMaxSupportedVersion() , getNextUnitOffset() , llvm::DWARFDataExtractorBase< Relocator >::getRelocatedValue() , llvm::DataExtractor::getU16() , llvm::DataExtractor::getU64() , llvm::DataExtractor::getU8() , getUnitLengthFieldByteSize() , llvm::DataExtractor::getUnsigned() , getVersion() , llvm::invalid_argument , llvm::DWARFContext::isSupportedVersion() , isTypeUnit() , llvm::DataExtractor::isValidOffset() , llvm::joinErrors() , llvm::DataExtractor::size() , and llvm::Error::success() .
◆ getAbbrOffset()
uint64_t llvm::DWARFUnitHeader::getAbbrOffset ( ) const
inline
◆ getAddressByteSize()
uint8_t llvm::DWARFUnitHeader::getAddressByteSize ( ) const
inline
◆ getDwarfOffsetByteSize()
uint8_t llvm::DWARFUnitHeader::getDwarfOffsetByteSize ( ) const
inline
◆ getDWOId()
std::optional< uint64_t > llvm::DWARFUnitHeader::getDWOId ( ) const
inline
◆ getIndexEntry()◆ getLength()
uint64_t llvm::DWARFUnitHeader::getLength ( ) const
inline
◆ getNextUnitOffset()
uint64_t llvm::DWARFUnitHeader::getNextUnitOffset ( ) const
inline
◆ getOffset()
uint64_t llvm::DWARFUnitHeader::getOffset ( ) const
inline
◆ getRefAddrByteSize()
uint8_t llvm::DWARFUnitHeader::getRefAddrByteSize ( ) const
inline
◆ getSize()
uint8_t llvm::DWARFUnitHeader::getSize ( ) const
inline
◆ getTypeHash()
uint64_t llvm::DWARFUnitHeader::getTypeHash ( ) const
inline
◆ getTypeOffset()
uint64_t llvm::DWARFUnitHeader::getTypeOffset ( ) const
inline
◆ getUnitLengthFieldByteSize()
uint8_t llvm::DWARFUnitHeader::getUnitLengthFieldByteSize ( ) const
inline
◆ getUnitType()
uint8_t llvm::DWARFUnitHeader::getUnitType ( ) const
inline
◆ getVersion()
uint16_t llvm::DWARFUnitHeader::getVersion ( ) const
inline
◆ isTypeUnit()
bool llvm::DWARFUnitHeader::isTypeUnit ( ) const
inline
◆ setDWOId()
void llvm::DWARFUnitHeader::setDWOId ( uint64_t Id )
inline
The documentation for this class was generated from the following files: