class DWARFDebugNames
Declaration
class DWARFDebugNames : public DWARFAcceleratorTable { /* full declaration omitted */ };
Description
.debug_names section consists of one or more units. Each unit starts with a header, which is followed by a list of compilation units, local and foreign type units. These may be followed by an (optional) hash lookup table, which consists of an array of buckets and hashes similar to the apple tables above. The only difference is that the hashes array is 1-based, and consequently an empty bucket is denoted by 0 and not UINT32_MAX. Next is the name table, which consists of an array of names and array of entry offsets. This is different from the apple tables, which store names next to the actual entries. The structure of the entries is described by an abbreviations table, which comes after the name table. Unlike the apple tables, which have a uniform entry structure described in the header, each .debug_names entry may have different index attributes (DW_IDX_???) attached to it. The last segment consists of a list of entries, which is a 0-terminated list referenced by the name table and interpreted with the help of the abbreviation table.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h:224
Inherits from: DWARFAcceleratorTable
Member Variables
Inherited from DWARFAcceleratorTable:
Method Overview
- public DWARFDebugNames(const llvm::DWARFDataExtractor & AccelSection, llvm::DataExtractor StringSection)
- public llvm::DWARFDebugNames::const_iterator begin() const
- public void dump(llvm::raw_ostream & OS) const
- public llvm::DWARFDebugNames::const_iterator end() const
- public iterator_range<llvm::DWARFDebugNames::ValueIterator> equal_range(llvm::StringRef Key) const
- public llvm::Error extract()
- public const llvm::DWARFDebugNames::NameIndex * getCUNameIndex(uint64_t CUOffset)
Inherited from DWARFAcceleratorTable:
Methods
¶DWARFDebugNames(
const llvm::DWARFDataExtractor& AccelSection,
llvm::DataExtractor StringSection)
DWARFDebugNames(
const llvm::DWARFDataExtractor& AccelSection,
llvm::DataExtractor StringSection)
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h:578
Parameters
- const llvm::DWARFDataExtractor& AccelSection
- llvm::DataExtractor StringSection
¶llvm::DWARFDebugNames::const_iterator begin()
const
llvm::DWARFDebugNames::const_iterator begin()
const
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h:589
¶void dump(llvm::raw_ostream& OS) const
void dump(llvm::raw_ostream& OS) const
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h:583
Parameters
¶llvm::DWARFDebugNames::const_iterator end() const
llvm::DWARFDebugNames::const_iterator end() const
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h:590
¶iterator_range<
llvm::DWARFDebugNames::ValueIterator>
equal_range(llvm::StringRef Key) const
iterator_range<
llvm::DWARFDebugNames::ValueIterator>
equal_range(llvm::StringRef Key) const
Description
Look up all entries in the accelerator table matching \c Key.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h:586
Parameters
- llvm::StringRef Key
¶llvm::Error extract()
llvm::Error extract()
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h:582
¶const llvm::DWARFDebugNames::NameIndex*
getCUNameIndex(uint64_t CUOffset)
const llvm::DWARFDebugNames::NameIndex*
getCUNameIndex(uint64_t CUOffset)
Description
Return the Name Index covering the compile unit at CUOffset, or nullptr if there is no Name Index covering that unit.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h:594
Parameters
- uint64_t CUOffset