LLVM API Documentation
#include <DWARFUnit.h>
Definition at line 77 of file DWARFUnit.h.
DWARFUnit::DWARFUnit | ( | DWARFContext & | Context, |
const DWARFDebugAbbrev * | DA, | ||
StringRef | IS, | ||
StringRef | RS, | ||
StringRef | SS, | ||
StringRef | SOS, | ||
StringRef | AOS, | ||
const RelocAddrMap * | M, | ||
bool | LE, | ||
const DWARFUnitSectionBase & | UnitSection | ||
) |
Definition at line 20 of file DWARFUnit.cpp.
References clear().
DWARFUnit::~DWARFUnit | ( | ) | [virtual] |
Definition at line 30 of file DWARFUnit.cpp.
void DWARFUnit::clear | ( | ) |
Definition at line 100 of file DWARFUnit.cpp.
Referenced by DWARFUnit(), and extract().
void DWARFUnit::collectAddressRanges | ( | DWARFAddressRangesVector & | CURanges | ) |
Definition at line 299 of file DWARFUnit.cpp.
References llvm::DWARFDebugInfoEntryMinimal::getAddressRanges(), and getCompileUnitDIE().
bool DWARFUnit::extract | ( | DataExtractor | debug_info, |
uint32_t * | offset_ptr | ||
) |
Definition at line 75 of file DWARFUnit.cpp.
References clear(), extractImpl(), and llvm::DataExtractor::isValidOffset().
bool DWARFUnit::extractImpl | ( | DataExtractor | debug_info, |
uint32_t * | offset_ptr | ||
) | [protected, virtual] |
Reimplemented in llvm::DWARFTypeUnit.
Definition at line 55 of file DWARFUnit.cpp.
References llvm::DWARFDebugAbbrev::getAbbreviationDeclarationSet(), getNextUnitOffset(), llvm::DataExtractor::getU16(), llvm::DataExtractor::getU32(), llvm::DataExtractor::getU8(), llvm::DWARFContext::isSupportedVersion(), and llvm::DataExtractor::isValidOffset().
Referenced by extract(), and llvm::DWARFTypeUnit::extractImpl().
bool DWARFUnit::extractRangeList | ( | uint32_t | RangeListOffset, |
DWARFDebugRangeList & | RangeList | ||
) | const |
extractRangeList - extracts the range list referenced by this compile unit from .debug_ranges section. Returns true on success. Requires that compile unit is already extracted.
Definition at line 91 of file DWARFUnit.cpp.
References llvm::DWARFDebugRangeList::extract().
Referenced by llvm::DWARFDebugInfoEntryMinimal::getAddressRanges().
const DWARFAbbreviationDeclarationSet* llvm::DWARFUnit::getAbbreviations | ( | ) | const [inline] |
Definition at line 161 of file DWARFUnit.h.
Referenced by llvm::DWARFCompileUnit::dump(), llvm::DWARFTypeUnit::dump(), and llvm::DWARFDebugInfoEntryMinimal::extractFast().
uint8_t llvm::DWARFUnit::getAddressByteSize | ( | ) | const [inline] |
Definition at line 164 of file DWARFUnit.h.
Referenced by llvm::DWARFCompileUnit::dump(), llvm::DWARFTypeUnit::dump(), llvm::DWARFDebugInfoEntryMinimal::extractFast(), llvm::DWARFFormValue::extractValue(), llvm::DWARFContext::getLineTableForUnit(), and llvm::DWARFFormValue::skipValue().
bool DWARFUnit::getAddrOffsetSectionItem | ( | uint32_t | Index, |
uint64_t & | Result | ||
) | const |
Definition at line 33 of file DWARFUnit.cpp.
References llvm::DataExtractor::getAddress(), and llvm::StringRef::size().
Referenced by llvm::DWARFFormValue::dump(), and llvm::DWARFFormValue::getAsAddress().
uint64_t llvm::DWARFUnit::getBaseAddress | ( | ) | const [inline] |
Definition at line 165 of file DWARFUnit.h.
Referenced by llvm::DWARFDebugInfoEntryMinimal::getAddressRanges().
const char * DWARFUnit::getCompilationDir | ( | ) |
Definition at line 113 of file DWARFUnit.cpp.
References llvm::dwarf::DW_AT_comp_dir.
Referenced by getFileNameForUnit().
const DWARFDebugInfoEntryMinimal* llvm::DWARFUnit::getCompileUnitDIE | ( | bool | extract_cu_die_only = true | ) | [inline] |
Definition at line 172 of file DWARFUnit.h.
Referenced by collectAddressRanges(), llvm::DWARFCompileUnit::dump(), llvm::DWARFTypeUnit::dump(), and llvm::DWARFContext::getLineTableForUnit().
DWARFContext& llvm::DWARFUnit::getContext | ( | ) | const [inline] |
Definition at line 123 of file DWARFUnit.h.
DataExtractor llvm::DWARFUnit::getDebugInfoExtractor | ( | ) | const [inline] |
Definition at line 140 of file DWARFUnit.h.
Referenced by llvm::DWARFDebugInfoEntryMinimal::dump(), llvm::DWARFDebugInfoEntryMinimal::dumpAttribute(), llvm::DWARFDebugInfoEntryMinimal::extractFast(), and llvm::DWARFDebugInfoEntryMinimal::getAttributeValue().
uint64_t DWARFUnit::getDWOId | ( | ) |
Definition at line 120 of file DWARFUnit.cpp.
References llvm::dwarf::DW_AT_GNU_dwo_id.
virtual uint32_t llvm::DWARFUnit::getHeaderSize | ( | ) | const [inline, protected, virtual] |
Size in bytes of the unit header.
Reimplemented in llvm::DWARFTypeUnit.
Definition at line 114 of file DWARFUnit.h.
DWARFDebugInfoEntryInlinedChain DWARFUnit::getInlinedChainForAddress | ( | uint64_t | Address | ) |
getInlinedChainForAddress - fetches inlined chain for a given address. Returns empty chain if there is no subprogram containing address. The chain is valid as long as parsed compile unit DIEs are not cleared.
Definition at line 342 of file DWARFUnit.cpp.
References llvm::DWARFDebugInfoEntryMinimal::getInlinedChainForAddress().
Referenced by getFunctionNameForAddress(), and llvm::DWARFContext::getInliningInfoForAddress().
uint32_t llvm::DWARFUnit::getLength | ( | ) | const [inline] |
Definition at line 159 of file DWARFUnit.h.
Referenced by llvm::DWARFCompileUnit::dump(), llvm::DWARFTypeUnit::dump(), and llvm::DWARFTypeUnit::extractImpl().
uint32_t llvm::DWARFUnit::getNextUnitOffset | ( | ) | const [inline] |
Definition at line 158 of file DWARFUnit.h.
Referenced by llvm::DWARFCompileUnit::dump(), llvm::DWARFTypeUnit::dump(), llvm::DWARFDebugInfoEntryMinimal::extractFast(), and extractImpl().
uint32_t llvm::DWARFUnit::getOffset | ( | ) | const [inline] |
Definition at line 157 of file DWARFUnit.h.
Referenced by llvm::DWARFCompileUnit::dump(), llvm::DWARFTypeUnit::dump(), llvm::DWARFFormValue::dump(), and llvm::DWARFFormValue::getAsReference().
const RelocAddrMap* llvm::DWARFUnit::getRelocMap | ( | ) | const [inline] |
Definition at line 147 of file DWARFUnit.h.
Referenced by llvm::DWARFFormValue::extractValue().
DataExtractor llvm::DWARFUnit::getStringExtractor | ( | ) | const [inline] |
Definition at line 143 of file DWARFUnit.h.
Referenced by llvm::DWARFFormValue::getAsCString().
StringRef llvm::DWARFUnit::getStringOffsetSection | ( | ) | const [inline] |
Definition at line 126 of file DWARFUnit.h.
Referenced by llvm::DWARFFormValue::dump().
bool DWARFUnit::getStringOffsetSectionItem | ( | uint32_t | Index, |
uint32_t & | Result | ||
) | const |
Definition at line 43 of file DWARFUnit.cpp.
References llvm::DataExtractor::getU32(), and llvm::StringRef::size().
Referenced by llvm::DWARFFormValue::getAsCString().
StringRef llvm::DWARFUnit::getStringSection | ( | ) | const [inline] |
Definition at line 125 of file DWARFUnit.h.
Referenced by llvm::DWARFFormValue::dump().
const DWARFUnitSectionBase& llvm::DWARFUnit::getUnitSection | ( | ) | const [inline] |
getUnitSection - Return the DWARFUnitSection containing this unit.
Definition at line 188 of file DWARFUnit.h.
uint16_t llvm::DWARFUnit::getVersion | ( | ) | const [inline] |
Definition at line 160 of file DWARFUnit.h.
Referenced by llvm::DWARFCompileUnit::dump(), llvm::DWARFTypeUnit::dump(), llvm::DWARFDebugInfoEntryMinimal::extractFast(), llvm::DWARFFormValue::extractValue(), and llvm::DWARFFormValue::skipValue().
void llvm::DWARFUnit::setAddrOffsetSection | ( | StringRef | AOS, |
uint32_t | Base | ||
) | [inline] |
Definition at line 127 of file DWARFUnit.h.
void llvm::DWARFUnit::setBaseAddress | ( | uint64_t | base_addr | ) | [inline] |
Definition at line 167 of file DWARFUnit.h.
void llvm::DWARFUnit::setRangesSection | ( | StringRef | RS, |
uint32_t | Base | ||
) | [inline] |
Definition at line 131 of file DWARFUnit.h.