LLVM 20.0.0git
Classes | Public Member Functions | List of all members
llvm::DWARFDie Class Reference

Utility class that carries the DWARF compile/type unit and the debug info entry in an object. More...

#include "llvm/DebugInfo/DWARF/DWARFDie.h"

Classes

class  attribute_iterator
 
class  iterator
 

Public Member Functions

 DWARFDie ()=default
 
 DWARFDie (DWARFUnit *Unit, const DWARFDebugInfoEntry *D)
 
bool isValid () const
 
 operator bool () const
 
const DWARFDebugInfoEntrygetDebugInfoEntry () const
 
DWARFUnitgetDwarfUnit () const
 
const DWARFAbbreviationDeclarationgetAbbreviationDeclarationPtr () const
 Get the abbreviation declaration for this DIE.
 
uint64_t getOffset () const
 Get the absolute offset into the debug info or types section.
 
dwarf::Tag getTag () const
 
bool hasChildren () const
 
bool isNULL () const
 Returns true for a valid DIE that terminates a sibling chain.
 
bool isSubprogramDIE () const
 Returns true if DIE represents a subprogram (not inlined).
 
bool isSubroutineDIE () const
 Returns true if DIE represents a subprogram or an inlined subroutine.
 
DWARFDie getParent () const
 Get the parent of this DIE object.
 
DWARFDie getSibling () const
 Get the sibling of this DIE object.
 
DWARFDie getPreviousSibling () const
 Get the previous sibling of this DIE object.
 
DWARFDie getFirstChild () const
 Get the first child of this DIE object.
 
DWARFDie getLastChild () const
 Get the last child of this DIE object.
 
void dump (raw_ostream &OS, unsigned indent=0, DIDumpOptions DumpOpts=DIDumpOptions()) const
 Dump the DIE and all of its attributes to the supplied stream.
 
LLVM_DUMP_METHOD void dump () const
 Convenience zero-argument overload for debugging.
 
std::optional< DWARFFormValuefind (dwarf::Attribute Attr) const
 Extract the specified attribute from this DIE.
 
std::optional< DWARFFormValuefind (ArrayRef< dwarf::Attribute > Attrs) const
 Extract the first value of any attribute in Attrs from this DIE.
 
std::optional< DWARFFormValuefindRecursively (ArrayRef< dwarf::Attribute > Attrs) const
 Extract the first value of any attribute in Attrs from this DIE and recurse into any DW_AT_specification or DW_AT_abstract_origin referenced DIEs.
 
DWARFDie getAttributeValueAsReferencedDie (dwarf::Attribute Attr) const
 Extract the specified attribute from this DIE as the referenced DIE.
 
DWARFDie getAttributeValueAsReferencedDie (const DWARFFormValue &V) const
 
DWARFDie resolveTypeUnitReference () const
 
std::optional< uint64_tgetRangesBaseAttribute () const
 Extract the range base attribute from this DIE as absolute section offset.
 
std::optional< uint64_tgetLocBaseAttribute () const
 
std::optional< uint64_tgetHighPC (uint64_t LowPC) const
 Get the DW_AT_high_pc attribute value as an address.
 
bool getLowAndHighPC (uint64_t &LowPC, uint64_t &HighPC, uint64_t &SectionIndex) const
 Retrieves DW_AT_low_pc and DW_AT_high_pc from CU.
 
Expected< DWARFAddressRangesVectorgetAddressRanges () const
 Get the address ranges for this DIE.
 
bool addressRangeContainsAddress (const uint64_t Address) const
 
Expected< DWARFLocationExpressionsVectorgetLocations (dwarf::Attribute Attr) const
 
const chargetSubroutineName (DINameKind Kind) const
 If a DIE represents a subprogram (or inlined subroutine), returns its mangled name (or short name, if mangled is missing).
 
const chargetName (DINameKind Kind) const
 Return the DIE name resolving DW_AT_specification or DW_AT_abstract_origin references if necessary.
 
void getFullName (raw_string_ostream &, std::string *OriginalFullName=nullptr) const
 
const chargetShortName () const
 Return the DIE short name resolving DW_AT_specification or DW_AT_abstract_origin references if necessary.
 
const chargetLinkageName () const
 Return the DIE linkage name resolving DW_AT_specification or DW_AT_abstract_origin references if necessary.
 
uint64_t getDeclLine () const
 Returns the declaration line (start line) for a DIE, assuming it specifies a subprogram.
 
std::string getDeclFile (DILineInfoSpecifier::FileLineInfoKind Kind) const
 
void getCallerFrame (uint32_t &CallFile, uint32_t &CallLine, uint32_t &CallColumn, uint32_t &CallDiscriminator) const
 Retrieves values of DW_AT_call_file, DW_AT_call_line and DW_AT_call_column from DIE (or zeroes if they are missing).
 
iterator_range< attribute_iteratorattributes () const
 Get an iterator range to all attributes in the current DIE only.
 
std::optional< uint64_tgetTypeSize (uint64_t PointerSize)
 Gets the type size (in bytes) for this DIE.
 
iterator begin () const
 
iterator end () const
 
std::reverse_iterator< iteratorrbegin () const
 
std::reverse_iterator< iteratorrend () const
 
iterator_range< iteratorchildren () const
 

Detailed Description

Utility class that carries the DWARF compile/type unit and the debug info entry in an object.

When accessing information from a debug info entry we always need to DWARF compile/type unit in order to extract the info correctly as some information is relative to the compile/type unit. Prior to this class the DWARFUnit and the DWARFDebugInfoEntry was passed around separately and there was the possibility for error if the wrong DWARFUnit was used to extract a unit relative offset. This class helps to ensure that this doesn't happen and also simplifies the attribute extraction calls by not having to specify the DWARFUnit for each call.

Definition at line 42 of file DWARFDie.h.

Constructor & Destructor Documentation

◆ DWARFDie() [1/2]

llvm::DWARFDie::DWARFDie ( )
default

◆ DWARFDie() [2/2]

llvm::DWARFDie::DWARFDie ( DWARFUnit Unit,
const DWARFDebugInfoEntry D 
)
inline

Definition at line 48 of file DWARFDie.h.

Member Function Documentation

◆ addressRangeContainsAddress()

bool DWARFDie::addressRangeContainsAddress ( const uint64_t  Address) const

Definition at line 398 of file DWARFDie.cpp.

References llvm::Address, llvm::consumeError(), and getAddressRanges().

◆ attributes()

iterator_range< DWARFDie::attribute_iterator > DWARFDie::attributes ( ) const

Get an iterator range to all attributes in the current DIE only.

Returns
an iterator range for the attributes of the current DIE.

Definition at line 670 of file DWARFDie.cpp.

References llvm::make_range().

Referenced by dump().

◆ begin()

DWARFDie::iterator llvm::DWARFDie::begin ( ) const
inline

Definition at line 387 of file DWARFDie.h.

References getFirstChild().

Referenced by children(), and rend().

◆ children()

iterator_range< DWARFDie::iterator > llvm::DWARFDie::children ( ) const
inline

◆ dump() [1/2]

LLVM_DUMP_METHOD void DWARFDie::dump ( ) const

Convenience zero-argument overload for debugging.

Definition at line 638 of file DWARFDie.cpp.

References dump(), and llvm::errs().

Referenced by dump().

◆ dump() [2/2]

void DWARFDie::dump ( raw_ostream OS,
unsigned  indent = 0,
DIDumpOptions  DumpOpts = DIDumpOptions() 
) const

◆ end()

DWARFDie::iterator llvm::DWARFDie::end ( ) const
inline

Definition at line 391 of file DWARFDie.h.

References getLastChild().

Referenced by children(), and rbegin().

◆ find() [1/2]

std::optional< DWARFFormValue > DWARFDie::find ( ArrayRef< dwarf::Attribute Attrs) const

Extract the first value of any attribute in Attrs from this DIE.

Extract the first attribute that matches from this DIE only. This call doesn't look for the attribute value in any DW_AT_specification or DW_AT_abstract_origin referenced DIEs. The attributes will be searched linearly in the order they are specified within Attrs.

Parameters
Attrsan array of DWARF attribute to look for.
Returns
an optional that has a valid DWARFFormValue for the first matching attribute in Attrs, or std::nullopt if none of the attributes in Attrs exist in this DIE.

Definition at line 260 of file DWARFDie.cpp.

References getAbbreviationDeclarationPtr(), getOffset(), and isValid().

◆ find() [2/2]

std::optional< DWARFFormValue > DWARFDie::find ( dwarf::Attribute  Attr) const

Extract the specified attribute from this DIE.

Extract an attribute value from this DIE only. This call doesn't look for the attribute value in any DW_AT_specification or DW_AT_abstract_origin referenced DIEs.

Parameters
Attrthe attribute to extract.
Returns
an optional DWARFFormValue that will have the form value if the attribute was successfully extracted.

Definition at line 250 of file DWARFDie.cpp.

References getAbbreviationDeclarationPtr(), getOffset(), and isValid().

Referenced by llvm::analyzeContextInfo(), llvm::dwarf_linker::parallel::CompileUnit::cloneAndEmitDebugMacro(), llvm::dwarf_linker::parallel::CompileUnit::CompileUnit(), llvm::logicalview::LVDWARFReader::createScopes(), llvm::gsym::CUInfo::CUInfo(), findRecursively(), getAddressRanges(), getAttributeValueAsReferencedDie(), llvm::DWARFUnit::getBaseAddress(), getCallerFrame(), llvm::getDwoId(), getDwoId(), getHighPC(), llvm::DWARFContext::getInliningInfoForAddress(), getLocations(), getLocBaseAttribute(), getLowAndHighPC(), llvm::getPCMFile(), getPCMFile(), getRangesBaseAttribute(), getTypeSizeImpl(), hashFullyQualifiedName(), llvm::dwarf_linker::parallel::DWARFLinkerImpl::LinkContext::isClangModuleRef(), llvm::dwarf_linker::parallel::DWARFLinkerImpl::link(), llvm::dwarf_linker::parallel::DWARFLinkerImpl::LinkContext::loadClangModule(), parseInlineInfo(), resolveTypeUnitReference(), llvm::dwarf_linker::parallel::AcceleratorRecordsSaver::save(), llvm::DWARFUnit::tryExtractDIEsIfNeeded(), and llvm::updatePruning().

◆ findRecursively()

std::optional< DWARFFormValue > DWARFDie::findRecursively ( ArrayRef< dwarf::Attribute Attrs) const

Extract the first value of any attribute in Attrs from this DIE and recurse into any DW_AT_specification or DW_AT_abstract_origin referenced DIEs.

Parameters
Attrsan array of DWARF attribute to look for.
Returns
an optional that has a valid DWARFFormValue for the first matching attribute in Attrs, or std::nullopt if none of the attributes in Attrs exist in this DIE or in any DW_AT_specification or DW_AT_abstract_origin DIEs.

Definition at line 274 of file DWARFDie.cpp.

References D, llvm::SmallVectorBase< Size_T >::empty(), find(), getAttributeValueAsReferencedDie(), llvm::SmallSet< T, N, C >::insert(), isValid(), llvm::SmallVectorImpl< T >::pop_back_val(), and llvm::SmallVectorTemplateBase< T, bool >::push_back().

Referenced by convertFunctionLineTable(), getDeclFile(), getDeclLine(), getLinkageName(), getShortName(), and parseInlineInfo().

◆ getAbbreviationDeclarationPtr()

const DWARFAbbreviationDeclaration * llvm::DWARFDie::getAbbreviationDeclarationPtr ( ) const
inline

Get the abbreviation declaration for this DIE.

Returns
the abbreviation declaration or NULL for null tags.

Definition at line 58 of file DWARFDie.h.

References assert(), llvm::DWARFDebugInfoEntry::getAbbreviationDeclarationPtr(), and isValid().

Referenced by llvm::DWARFDie::attribute_iterator::attribute_iterator(), dump(), find(), getTag(), and isNULL().

◆ getAddressRanges()

Expected< DWARFAddressRangesVector > DWARFDie::getAddressRanges ( ) const

Get the address ranges for this DIE.

Get the hi/low PC range if both attributes are available or exrtracts the non-contiguous address ranges from the DW_AT_ranges attribute.

Extracts the range information from this DIE only. This call doesn't look for the range in any DW_AT_specification or DW_AT_abstract_origin DIEs.

Returns
a address range vector that might be empty if no address range information is available.

Definition at line 381 of file DWARFDie.cpp.

References find(), llvm::DWARFUnit::findRnglistFromIndex(), llvm::DWARFUnit::findRnglistFromOffset(), getLowAndHighPC(), and isNULL().

Referenced by addressRangeContainsAddress(), llvm::DWARFUnit::collectAddressRanges(), dumpAttribute(), parseInlineInfo(), and llvm::DWARFUnit::updateAddressDieMap().

◆ getAttributeValueAsReferencedDie() [1/2]

DWARFDie DWARFDie::getAttributeValueAsReferencedDie ( const DWARFFormValue V) const

◆ getAttributeValueAsReferencedDie() [2/2]

DWARFDie DWARFDie::getAttributeValueAsReferencedDie ( dwarf::Attribute  Attr) const

Extract the specified attribute from this DIE as the referenced DIE.

Regardless of the reference type, return the correct DWARFDie instance if the attribute exists. The returned DWARFDie object might be from another DWARFUnit, but that is all encapsulated in the new DWARFDie object.

Extract an attribute value from this DIE only. This call doesn't look for the attribute value in any DW_AT_specification or DW_AT_abstract_origin referenced DIEs.

Parameters
Attrthe attribute to extract.
Returns
a valid DWARFDie instance if the attribute exists, or an invalid DWARFDie object if it doesn't.

Definition at line 307 of file DWARFDie.cpp.

References DWARFDie(), F, find(), and getAttributeValueAsReferencedDie().

Referenced by dumpAttribute(), findRecursively(), getAttributeValueAsReferencedDie(), GetParentDeclContextDIE(), getTypeSizeImpl(), and llvm::DWARFUnit::updateVariableDieMap().

◆ getCallerFrame()

void DWARFDie::getCallerFrame ( uint32_t CallFile,
uint32_t CallLine,
uint32_t CallColumn,
uint32_t CallDiscriminator 
) const

Retrieves values of DW_AT_call_file, DW_AT_call_line and DW_AT_call_column from DIE (or zeroes if they are missing).

This function looks for DW_AT_call attributes in this DIE only, it will not resolve the attribute values in any DW_AT_specification or DW_AT_abstract_origin DIEs.

Parameters
CallFilefilled in with non-zero if successful, zero if there is no DW_AT_call_file attribute in this DIE.
CallLinefilled in with non-zero if successful, zero if there is no DW_AT_call_line attribute in this DIE.
CallColumnfilled in with non-zero if successful, zero if there is no DW_AT_call_column attribute in this DIE.
CallDiscriminatorfilled in with non-zero if successful, zero if there is no DW_AT_GNU_discriminator attribute in this DIE.

Definition at line 487 of file DWARFDie.cpp.

References find(), and llvm::dwarf::toUnsigned().

Referenced by llvm::DWARFContext::getInliningInfoForAddress().

◆ getDebugInfoEntry()

const DWARFDebugInfoEntry * llvm::DWARFDie::getDebugInfoEntry ( ) const
inline

◆ getDeclFile()

std::string DWARFDie::getDeclFile ( DILineInfoSpecifier::FileLineInfoKind  Kind) const

◆ getDeclLine()

uint64_t DWARFDie::getDeclLine ( ) const

Returns the declaration line (start line) for a DIE, assuming it specifies a subprogram.

This may be fetched from specification or abstract origin for this subprogram by resolving DW_AT_sepcification or DW_AT_abstract_origin references if necessary.

Definition at line 475 of file DWARFDie.cpp.

References findRecursively(), and llvm::dwarf::toUnsigned().

Referenced by llvm::DWARFContext::getInliningInfoForAddress(), and llvm::DWARFContext::getLineInfoForDataAddress().

◆ getDwarfUnit()

DWARFUnit * llvm::DWARFDie::getDwarfUnit ( ) const
inline

◆ getFirstChild()

DWARFDie DWARFDie::getFirstChild ( ) const

Get the first child of this DIE object.

Returns
a valid DWARFDie instance if this object has children or an invalid DWARFDie instance if it doesn't.

Definition at line 658 of file DWARFDie.cpp.

References DWARFDie(), llvm::DWARFUnit::getFirstChild(), and isValid().

Referenced by begin(), dump(), and llvm::DWARFUnit::updateAddressDieMap().

◆ getFullName()

void DWARFDie::getFullName ( raw_string_ostream OS,
std::string *  OriginalFullName = nullptr 
) const

Definition at line 233 of file DWARFDie.cpp.

References llvm::dumpTypeUnqualifiedName(), getShortName(), getTag(), and OS.

◆ getHighPC()

std::optional< uint64_t > DWARFDie::getHighPC ( uint64_t  LowPC) const

Get the DW_AT_high_pc attribute value as an address.

In DWARF version 4 and later the high PC can be encoded as an offset from the DW_AT_low_pc. This function takes care of extracting the value as an address or offset and adds it to the low PC if needed and returns the value as an optional in case the DIE doesn't have a DW_AT_high_pc attribute.

Parameters
LowPCthe low PC that might be needed to calculate the high PC.
Returns
an optional address value for the attribute.

Definition at line 349 of file DWARFDie.cpp.

References llvm::Address, llvm::dwarf::computeTombstoneAddress(), find(), llvm::DWARFUnit::getAddressByteSize(), and llvm::Offset.

Referenced by getLowAndHighPC().

◆ getLastChild()

DWARFDie DWARFDie::getLastChild ( ) const

Get the last child of this DIE object.

Returns
a valid null DWARFDie instance if this object has children or an invalid DWARFDie instance if it doesn't.

Definition at line 664 of file DWARFDie.cpp.

References DWARFDie(), llvm::DWARFUnit::getLastChild(), and isValid().

Referenced by end().

◆ getLinkageName()

const char * DWARFDie::getLinkageName ( ) const

Return the DIE linkage name resolving DW_AT_specification or DW_AT_abstract_origin references if necessary.

Returns null if no name is found.

Definition at line 466 of file DWARFDie.cpp.

References findRecursively(), isValid(), and llvm::dwarf::toString().

Referenced by getName(), getQualifiedNameIndex(), and llvm::dwarf_linker::parallel::AcceleratorRecordsSaver::save().

◆ getLocations()

Expected< DWARFLocationExpressionsVector > DWARFDie::getLocations ( dwarf::Attribute  Attr) const

◆ getLocBaseAttribute()

std::optional< uint64_t > DWARFDie::getLocBaseAttribute ( ) const

Definition at line 345 of file DWARFDie.cpp.

References find(), and llvm::dwarf::toSectionOffset().

◆ getLowAndHighPC()

bool DWARFDie::getLowAndHighPC ( uint64_t LowPC,
uint64_t HighPC,
uint64_t SectionIndex 
) const

Retrieves DW_AT_low_pc and DW_AT_high_pc from CU.

Returns true if both attributes are present.

Definition at line 366 of file DWARFDie.cpp.

References F, find(), getHighPC(), and llvm::dwarf::toSectionedAddress().

Referenced by dumpAttribute(), and getAddressRanges().

◆ getName()

const char * DWARFDie::getName ( DINameKind  Kind) const

Return the DIE name resolving DW_AT_specification or DW_AT_abstract_origin references if necessary.

For the LinkageName case it additionaly searches for ShortName if LinkageName is not found. Returns null if no name is found.

Definition at line 448 of file DWARFDie.cpp.

References getLinkageName(), getShortName(), isValid(), llvm::LinkageName, Name, and llvm::None.

Referenced by llvm::dwarf_linker::parallel::CompileUnit::CompileUnit(), llvm::DWARFTypeUnit::dump(), dumpAttribute(), getQualifiedNameIndex(), getSubroutineName(), and hashFullyQualifiedName().

◆ getOffset()

uint64_t llvm::DWARFDie::getOffset ( ) const
inline

Get the absolute offset into the debug info or types section.

Returns
the DIE offset or -1U if invalid.

Definition at line 66 of file DWARFDie.h.

References assert(), llvm::DWARFDebugInfoEntry::getOffset(), and isValid().

Referenced by llvm::dwarf_linker::parallel::DIEAttributeCloner::clone(), convertFunctionLineTable(), dump(), find(), and parseInlineInfo().

◆ getParent()

DWARFDie DWARFDie::getParent ( ) const

Get the parent of this DIE object.

Returns
a valid DWARFDie instance if this object has a parent or an invalid DWARFDie instance if it doesn't.

Definition at line 640 of file DWARFDie.cpp.

References DWARFDie(), llvm::DWARFUnit::getParent(), and isValid().

Referenced by dump(), dumpParentChain(), llvm::DWARFUnit::getInlinedChainForAddress(), GetParentDeclContextDIE(), and hashFullyQualifiedName().

◆ getPreviousSibling()

DWARFDie DWARFDie::getPreviousSibling ( ) const

Get the previous sibling of this DIE object.

Returns
a valid DWARFDie instance if this object has a sibling or an invalid DWARFDie instance if it doesn't.

Definition at line 652 of file DWARFDie.cpp.

References DWARFDie(), llvm::DWARFUnit::getPreviousSibling(), and isValid().

Referenced by std::reverse_iterator< llvm::DWARFDie::iterator >::operator++(), llvm::DWARFDie::iterator::operator--(), and std::reverse_iterator< llvm::DWARFDie::iterator >::reverse_iterator().

◆ getRangesBaseAttribute()

std::optional< uint64_t > DWARFDie::getRangesBaseAttribute ( ) const

Extract the range base attribute from this DIE as absolute section offset.

This is a utility function that checks for either the DW_AT_rnglists_base or DW_AT_GNU_ranges_base attribute.

Returns
anm optional absolute section offset value for the attribute.

Definition at line 341 of file DWARFDie.cpp.

References find(), and llvm::dwarf::toSectionOffset().

◆ getShortName()

const char * DWARFDie::getShortName ( ) const

Return the DIE short name resolving DW_AT_specification or DW_AT_abstract_origin references if necessary.

Returns null if no name is found.

Definition at line 459 of file DWARFDie.cpp.

References findRecursively(), isValid(), and llvm::dwarf::toString().

Referenced by getFullName(), getName(), and llvm::dwarf_linker::parallel::AcceleratorRecordsSaver::save().

◆ getSibling()

DWARFDie DWARFDie::getSibling ( ) const

Get the sibling of this DIE object.

Returns
a valid DWARFDie instance if this object has a sibling or an invalid DWARFDie instance if it doesn't.

Definition at line 646 of file DWARFDie.cpp.

References DWARFDie(), llvm::DWARFUnit::getSibling(), and isValid().

Referenced by std::reverse_iterator< llvm::DWARFDie::iterator >::base(), dump(), llvm::DWARFDie::iterator::operator++(), std::reverse_iterator< llvm::DWARFDie::iterator >::operator--(), and llvm::DWARFUnit::updateAddressDieMap().

◆ getSubroutineName()

const char * DWARFDie::getSubroutineName ( DINameKind  Kind) const

If a DIE represents a subprogram (or inlined subroutine), returns its mangled name (or short name, if mangled is missing).

This name may be fetched from specification or abstract origin for this subprogram. Returns null if no name is found.

Definition at line 442 of file DWARFDie.cpp.

References getName(), and isSubroutineDIE().

Referenced by llvm::DWARFContext::getInliningInfoForAddress().

◆ getTag()

dwarf::Tag llvm::DWARFDie::getTag ( ) const
inline

◆ getTypeSize()

std::optional< uint64_t > DWARFDie::getTypeSize ( uint64_t  PointerSize)

Gets the type size (in bytes) for this DIE.

Parameters
PointerSizethe pointer size of the containing CU.
Returns
if this is a type DIE, or this DIE contains a DW_AT_type, returns the size of the type.

Definition at line 563 of file DWARFDie.cpp.

References getTypeSizeImpl().

Referenced by llvm::DWARFUnit::updateVariableDieMap().

◆ hasChildren()

bool llvm::DWARFDie::hasChildren ( ) const
inline

Definition at line 78 of file DWARFDie.h.

References assert(), llvm::DWARFDebugInfoEntry::hasChildren(), and isValid().

◆ isNULL()

bool llvm::DWARFDie::isNULL ( ) const
inline

Returns true for a valid DIE that terminates a sibling chain.

Definition at line 84 of file DWARFDie.h.

References getAbbreviationDeclarationPtr().

Referenced by getAddressRanges(), and std::reverse_iterator< llvm::DWARFDie::iterator >::operator--().

◆ isSubprogramDIE()

bool DWARFDie::isSubprogramDIE ( ) const

Returns true if DIE represents a subprogram (not inlined).

Definition at line 243 of file DWARFDie.cpp.

References getTag().

Referenced by llvm::DWARFUnit::getInlinedChainForAddress().

◆ isSubroutineDIE()

bool DWARFDie::isSubroutineDIE ( ) const

Returns true if DIE represents a subprogram or an inlined subroutine.

Definition at line 245 of file DWARFDie.cpp.

References getTag().

Referenced by getSubroutineName(), and llvm::DWARFUnit::updateAddressDieMap().

◆ isValid()

bool llvm::DWARFDie::isValid ( ) const
inline

◆ operator bool()

llvm::DWARFDie::operator bool ( ) const
inlineexplicit

Definition at line 51 of file DWARFDie.h.

References isValid().

◆ rbegin()

std::reverse_iterator< DWARFDie::iterator > llvm::DWARFDie::rbegin ( ) const
inline

Definition at line 471 of file DWARFDie.h.

References end().

◆ rend()

std::reverse_iterator< DWARFDie::iterator > llvm::DWARFDie::rend ( ) const
inline

Definition at line 475 of file DWARFDie.h.

References begin().

◆ resolveTypeUnitReference()

DWARFDie DWARFDie::resolveTypeUnitReference ( ) const

The documentation for this class was generated from the following files: