|
| DWARFCompileUnit (DWARFContext &Context, const DWARFSection &Section, const DWARFUnitHeader &Header, const DWARFDebugAbbrev *DA, const DWARFSection *RS, const DWARFSection *LocSection, StringRef SS, const DWARFSection &SOS, const DWARFSection *AOS, const DWARFSection &LS, bool LE, bool IsDWO, const DWARFUnitVector &UnitVector) |
|
| ~DWARFCompileUnit () override |
| VTable anchor.
|
|
void | dump (raw_ostream &OS, DIDumpOptions DumpOpts) override |
| Dump this compile unit to OS .
|
|
| DWARFUnit (DWARFContext &Context, const DWARFSection &Section, const DWARFUnitHeader &Header, const DWARFDebugAbbrev *DA, const DWARFSection *RS, const DWARFSection *LocSection, StringRef SS, const DWARFSection &SOS, const DWARFSection *AOS, const DWARFSection &LS, bool LE, bool IsDWO, const DWARFUnitVector &UnitVector) |
|
virtual | ~DWARFUnit () |
|
bool | isLittleEndian () const |
|
bool | isDWOUnit () const |
|
DWARFContext & | getContext () const |
|
const DWARFSection & | getInfoSection () const |
|
uint64_t | getOffset () const |
|
const dwarf::FormParams & | getFormParams () const |
|
uint16_t | getVersion () const |
|
uint8_t | getAddressByteSize () const |
|
uint8_t | getRefAddrByteSize () const |
|
uint8_t | getDwarfOffsetByteSize () const |
|
uint32_t | getHeaderSize () const |
| Size in bytes of the parsed unit header.
|
|
uint64_t | getLength () const |
|
dwarf::DwarfFormat | getFormat () const |
|
uint8_t | getUnitType () const |
|
bool | isTypeUnit () const |
|
uint64_t | getAbbrOffset () const |
|
uint64_t | getNextUnitOffset () const |
|
const DWARFSection & | getLineSection () const |
|
StringRef | getStringSection () const |
|
const DWARFSection & | getStringOffsetSection () const |
|
void | setSkeletonUnit (DWARFUnit *SU) |
|
DWARFUnit * | getLinkedUnit () |
|
void | setAddrOffsetSection (const DWARFSection *AOS, uint64_t Base) |
|
std::optional< uint64_t > | getAddrOffsetSectionBase () const |
|
std::optional< uint64_t > | getIndexedAddressOffset (uint64_t Index) |
| Returns offset to the indexed address value inside .debug_addr section.
|
|
void | updateAddressDieMap (DWARFDie Die) |
| Recursively update address to Die map.
|
|
void | updateVariableDieMap (DWARFDie Die) |
| Recursively update address to variable Die map.
|
|
void | setRangesSection (const DWARFSection *RS, uint64_t Base) |
|
uint64_t | getLocSectionBase () const |
|
std::optional< object::SectionedAddress > | getAddrOffsetSectionItem (uint32_t Index) const |
|
Expected< uint64_t > | getStringOffsetSectionItem (uint32_t Index) const |
|
DWARFDataExtractor | getDebugInfoExtractor () const |
|
DataExtractor | getStringExtractor () const |
|
const DWARFLocationTable & | getLocationTable () |
|
Error | extractRangeList (uint64_t RangeListOffset, DWARFDebugRangeList &RangeList) const |
| Extract the range list referenced by this compile unit from the .debug_ranges section.
|
|
void | clear () |
|
const std::optional< StrOffsetsContributionDescriptor > & | getStringOffsetsTableContribution () |
|
uint8_t | getDwarfStringOffsetsByteSize () const |
|
uint64_t | getStringOffsetsBase () const |
|
uint64_t | getAbbreviationsOffset () const |
|
const DWARFAbbreviationDeclarationSet * | getAbbreviations () const |
|
std::optional< object::SectionedAddress > | getBaseAddress () |
|
DWARFDie | getUnitDIE (bool ExtractUnitDIEOnly=true) |
|
DWARFDie | getNonSkeletonUnitDIE (bool ExtractUnitDIEOnly=true, StringRef DWOAlternativeLocation={}) |
|
const char * | getCompilationDir () |
|
std::optional< uint64_t > | getDWOId () |
|
void | setDWOId (uint64_t NewID) |
|
Expected< DWARFAddressRangesVector > | findRnglistFromOffset (uint64_t Offset) |
| Return a vector of address ranges resulting from a (possibly encoded) range list starting at a given offset in the appropriate ranges section.
|
|
Expected< DWARFAddressRangesVector > | findRnglistFromIndex (uint32_t Index) |
| Return a vector of address ranges retrieved from an encoded range list whose offset is found via a table lookup given an index (DWARF v5 and later).
|
|
std::optional< uint64_t > | getRnglistOffset (uint32_t Index) |
| Return a rangelist's offset based on an index.
|
|
std::optional< uint64_t > | getLoclistOffset (uint32_t Index) |
|
Expected< DWARFAddressRangesVector > | collectAddressRanges () |
|
Expected< DWARFLocationExpressionsVector > | findLoclistFromOffset (uint64_t Offset) |
|
DWARFDie | getSubroutineForAddress (uint64_t Address) |
| Returns subprogram DIE with address range encompassing the provided address.
|
|
DWARFDie | getVariableForAddress (uint64_t Address) |
| Returns variable DIE for the address provided.
|
|
void | getInlinedChainForAddress (uint64_t Address, SmallVectorImpl< DWARFDie > &InlinedChain) |
| getInlinedChainForAddress - fetches inlined chain for a given address.
|
|
const DWARFUnitVector & | getUnitVector () const |
| Return the DWARFUnitVector containing this unit.
|
|
unsigned | getNumDIEs () |
| Returns the number of DIEs in the unit.
|
|
uint32_t | getDIEIndex (const DWARFDie &D) const |
| Return the index of a DIE inside the unit's DIE vector.
|
|
DWARFDie | getDIEAtIndex (unsigned Index) |
| Return the DIE object at the given index Index .
|
|
DWARFDie | getParent (const DWARFDebugInfoEntry *Die) |
|
DWARFDie | getSibling (const DWARFDebugInfoEntry *Die) |
|
DWARFDie | getPreviousSibling (const DWARFDebugInfoEntry *Die) |
|
DWARFDie | getFirstChild (const DWARFDebugInfoEntry *Die) |
|
DWARFDie | getLastChild (const DWARFDebugInfoEntry *Die) |
|
DWARFDie | getDIEForOffset (uint64_t Offset) |
| Return the DIE object for a given offset Offset inside the unit's DIE vector.
|
|
std::optional< uint32_t > | getDIEIndexForOffset (uint64_t Offset) |
| Return the DIE index for a given offset Offset inside the unit's DIE vector.
|
|
uint32_t | getLineTableOffset () const |
|
die_iterator_range | dies () |
|
virtual void | dump (raw_ostream &OS, DIDumpOptions DumpOpts)=0 |
|
Error | tryExtractDIEsIfNeeded (bool CUDieOnly) |
|
Definition at line 22 of file DWARFCompileUnit.h.