class DWARFListTableHeader

Declaration

class DWARFListTableHeader { /* full declaration omitted */ };

Description

A class representing the header of a list table such as the range list table in the .debug_rnglists section.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:55

Member Variables

private llvm::DWARFListTableHeader::Header HeaderData
private dwarf::DwarfFormat Format
The table's format, either DWARF32 or DWARF64.
private uint64_t HeaderOffset
The offset at which the header (and hence the table) is located within its section.
private llvm::StringRef SectionName
The name of the section the list is located in.
private llvm::StringRef ListTypeString
A characterization of the list for dumping purposes, e.g. "range" or "location".

Method Overview

  • public DWARFListTableHeader(llvm::StringRef SectionName, llvm::StringRef ListTypeString)
  • public void clear()
  • public void dump(llvm::DataExtractor Data, llvm::raw_ostream & OS, llvm::DIDumpOptions DumpOpts = {}) const
  • public llvm::Error extract(llvm::DWARFDataExtractor Data, uint64_t * OffsetPtr)
  • public uint8_t getAddrSize() const
  • public dwarf::DwarfFormat getFormat() const
  • public uint64_t getHeaderOffset() const
  • public static uint8_t getHeaderSize(dwarf::DwarfFormat Format)
  • public uint64_t getLength() const
  • public llvm::StringRef getListTypeString() const
  • public Optional<uint64_t> getOffsetEntry(llvm::DataExtractor Data, uint32_t Index) const
  • public static Optional<uint64_t> getOffsetEntry(llvm::DataExtractor Data, uint64_t OffsetTableOffset, dwarf::DwarfFormat Format, uint32_t Index)
  • public uint32_t getOffsetEntryCount() const
  • public llvm::StringRef getSectionName() const
  • public uint16_t getVersion() const
  • public uint64_t length() const

Methods

DWARFListTableHeader(
    llvm::StringRef SectionName,
    llvm::StringRef ListTypeString)

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:86

Parameters

llvm::StringRef SectionName
llvm::StringRef ListTypeString

void clear()

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:89

void dump(llvm::DataExtractor Data,
          llvm::raw_ostream& OS,
          llvm::DIDumpOptions DumpOpts = {}) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:113

Parameters

llvm::DataExtractor Data
llvm::raw_ostream& OS
llvm::DIDumpOptions DumpOpts = {}

llvm::Error extract(llvm::DWARFDataExtractor Data,
                    uint64_t* OffsetPtr)

Description

Extract the table header and the array of offsets.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:133

Parameters

llvm::DWARFDataExtractor Data
uint64_t* OffsetPtr

uint8_t getAddrSize() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:93

dwarf::DwarfFormat getFormat() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:99

uint64_t getHeaderOffset() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:92

static uint8_t getHeaderSize(
    dwarf::DwarfFormat Format)

Description

Return the size of the table header including the length but not including the offsets.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:103

Parameters

dwarf::DwarfFormat Format

uint64_t getLength() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:94

llvm::StringRef getListTypeString() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:98

Optional<uint64_t> getOffsetEntry(
    llvm::DataExtractor Data,
    uint32_t Index) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:115

Parameters

llvm::DataExtractor Data
uint32_t Index

static Optional<uint64_t> getOffsetEntry(
    llvm::DataExtractor Data,
    uint64_t OffsetTableOffset,
    dwarf::DwarfFormat Format,
    uint32_t Index)

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:122

Parameters

llvm::DataExtractor Data
uint64_t OffsetTableOffset
dwarf::DwarfFormat Format
uint32_t Index

uint32_t getOffsetEntryCount() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:96

llvm::StringRef getSectionName() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:97

uint16_t getVersion() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:95

uint64_t length() const

Description

Returns the length of the table, including the length field, or 0 if the length has not been determined (e.g. because the table has not yet been parsed, or there was a problem in parsing).

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h:138