LLVM: llvm::DWARFTypeUnit Class Reference (original) (raw)
Public Member Functions
DWARFTypeUnit (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)
getTypeHash () const
void
dump (raw_ostream &OS, DIDumpOptions DumpOpts={}) override
Public Member Functions inherited from llvm::DWARFUnit
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 ()
getContext () const
getVersion () const
getDwarfOffsetByteSize () const
Size in bytes of the parsed unit header.
getUnitType () const
isTypeUnit () const
getStringOffsetSection () const
void
setSkeletonUnit (DWARFUnit *SU)
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)
std::optional< object::SectionedAddress >
getAddrOffsetSectionItem (uint32_t Index) const
getStringOffsetSectionItem (uint32_t Index) const
getDebugInfoExtractor () const
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 ()
getDwarfStringOffsetsByteSize () const
getAbbreviationsOffset () const
const DWARFAbbreviationDeclarationSet *
std::optional< object::SectionedAddress >
getUnitDIE (bool ExtractUnitDIEOnly=true)
getNonSkeletonUnitDIE (bool ExtractUnitDIEOnly=true, StringRef DWOAlternativeLocation={})
std::optional< uint64_t >
getDWOId ()
void
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 >
Expected< DWARFLocationExpressionsVector >
findLoclistFromOffset (uint64_t Offset)
getSubroutineForAddress (uint64_t Address)
Returns subprogram DIE with address range encompassing the provided address.
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.
Return the DWARFUnitVector containing this unit.
getNumDIEs ()
Returns the number of DIEs in the unit.
getDIEIndex (const DWARFDie &D) const
Return the index of a DIE inside the unit's DIE vector.
getDIEAtIndex (unsigned Index)
Return the DIE object at the given index Index.
getParent (const DWARFDebugInfoEntry *Die)
getSibling (const DWARFDebugInfoEntry *Die)
getPreviousSibling (const DWARFDebugInfoEntry *Die)
getFirstChild (const DWARFDebugInfoEntry *Die)
getLastChild (const DWARFDebugInfoEntry *Die)
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.
dies ()
tryExtractDIEsIfNeeded (bool CUDieOnly)
Definition at line 24 of file DWARFTypeUnit.h.