LLVM 18.0.0git
|
DWARFDebugInfoEntry - A DIE with only the minimum required data. More...
#include "llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h"
Public Member Functions | |
DWARFDebugInfoEntry ()=default | |
bool | extractFast (const DWARFUnit &U, uint64_t *OffsetPtr, const DWARFDataExtractor &DebugInfoData, uint64_t UEndOffset, uint32_t ParentIdx) |
Extracts a debug info entry, which is a child of a given unit, starting at a given offset. | |
uint64_t | getOffset () const |
std::optional< uint32_t > | getParentIdx () const |
Returns index of the parent die. | |
std::optional< uint32_t > | getSiblingIdx () const |
Returns index of the sibling die. | |
void | setSiblingIdx (uint32_t Idx) |
Set index of sibling. | |
dwarf::Tag | getTag () const |
bool | hasChildren () const |
const DWARFAbbreviationDeclaration * | getAbbreviationDeclarationPtr () const |
DWARFDebugInfoEntry - A DIE with only the minimum required data.
Definition at line 22 of file DWARFDebugInfoEntry.h.
|
default |
bool DWARFDebugInfoEntry::extractFast | ( | const DWARFUnit & | U, |
uint64_t * | OffsetPtr, | ||
const DWARFDataExtractor & | DebugInfoData, | ||
uint64_t | UEndOffset, | ||
uint32_t | ParentIdx | ||
) |
Extracts a debug info entry, which is a child of a given unit, starting at a given offset.
If DIE can't be extracted, returns false and doesn't change OffsetPtr. High performance extraction should use this call.
Definition at line 22 of file DWARFDebugInfoEntry.cpp.
References assert(), llvm::DWARFAbbreviationDeclaration::attributes(), llvm::createStringError(), llvm::DWARFAbbreviationDeclaration::getFixedAttributesByteSize(), llvm::DataExtractor::getULEB128(), llvm::invalid_argument, llvm::DataExtractor::isValidOffset(), and llvm::DWARFFormValue::skipValue().
|
inline |
Definition at line 72 of file DWARFDebugInfoEntry.h.
Referenced by llvm::dwarflinker_parallel::DIEAttributeCloner::clone(), llvm::dwarflinker_parallel::CompileUnit::cloneDIE(), llvm::dwarflinker_parallel::CompileUnit::find(), llvm::DWARFDie::getAbbreviationDeclarationPtr(), and llvm::DWARFDie::attribute_iterator::operator++().
|
inline |
|
inline |
Returns index of the parent die.
Definition at line 48 of file DWARFDebugInfoEntry.h.
Referenced by llvm::dwarflinker_parallel::DependencyTracker::addItemToWorklist(), llvm::DWARFDie::dump(), llvm::DWARFUnit::getParentEntry(), llvm::DWARFUnit::getPreviousSiblingEntry(), and llvm::dwarflinker_parallel::DependencyTracker::markDIEEntryAsKeptRec().
|
inline |
Returns index of the sibling die.
Definition at line 56 of file DWARFDebugInfoEntry.h.
Referenced by llvm::DWARFUnit::getLastChildEntry(), llvm::DWARFUnit::getSiblingEntry(), and llvm::dwarflinker_parallel::DependencyTracker::maybeAddReferencedRoots().
|
inline |
Definition at line 66 of file DWARFDebugInfoEntry.h.
References llvm::DWARFAbbreviationDeclaration::getTag().
Referenced by llvm::dwarflinker_parallel::DependencyTracker::addItemToWorklist(), llvm::dwarflinker_parallel::DIEAttributeCloner::clone(), llvm::dwarflinker_parallel::DIEAttributeCloner::cloneAddressAttr(), llvm::dwarflinker_parallel::CompileUnit::cloneDIE(), llvm::dwarflinker_parallel::DIEAttributeCloner::cloneScalarAttr(), and llvm::dwarflinker_parallel::DependencyTracker::maybeAddReferencedRoots().
|
inline |
Definition at line 70 of file DWARFDebugInfoEntry.h.
References llvm::DWARFAbbreviationDeclaration::hasChildren().
Referenced by llvm::DWARFUnit::getFirstChildEntry(), llvm::DWARFUnit::getLastChildEntry(), and llvm::DWARFDie::hasChildren().
|
inline |