LLVM  10.0.0svn
Classes | Public Member Functions | Static Public Member Functions | List of all members
llvm::DWARFListTableHeader Class Reference

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

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

Public Member Functions

 DWARFListTableHeader (StringRef SectionName, StringRef ListTypeString)
 
void clear ()
 
uint64_t getHeaderOffset () const
 
uint8_t getAddrSize () const
 
uint64_t getLength () const
 
uint16_t getVersion () const
 
StringRef getSectionName () const
 
StringRef getListTypeString () const
 
dwarf::DwarfFormat getFormat () const
 
void dump (raw_ostream &OS, DIDumpOptions DumpOpts={}) const
 
Optional< uint64_t > getOffsetEntry (uint32_t Index) const
 
Error extract (DWARFDataExtractor Data, uint64_t *OffsetPtr)
 Extract the table header and the array of offsets. More...
 
uint64_t length () const
 Returns the length of the table, including the length field, or 0 if the length has not been determined (e.g. More...
 

Static Public Member Functions

static uint8_t getHeaderSize (dwarf::DwarfFormat Format)
 Return the size of the table header including the length but not including the offsets. More...
 

Detailed Description

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

Definition at line 56 of file DWARFListTable.h.

Constructor & Destructor Documentation

◆ DWARFListTableHeader()

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

Definition at line 91 of file DWARFListTable.h.

Member Function Documentation

◆ clear()

void llvm::DWARFListTableHeader::clear ( )
inline

◆ dump()

void DWARFListTableHeader::dump ( raw_ostream OS,
DIDumpOptions  DumpOpts = {} 
) const

◆ extract()

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

◆ getAddrSize()

uint8_t llvm::DWARFListTableHeader::getAddrSize ( ) const
inline

◆ getFormat()

dwarf::DwarfFormat llvm::DWARFListTableHeader::getFormat ( ) const
inline

Definition at line 104 of file DWARFListTable.h.

References llvm::Format.

Referenced by llvm::DWARFListTableBase< DWARFDebugRnglist >::getFormat().

◆ getHeaderOffset()

uint64_t llvm::DWARFListTableHeader::getHeaderOffset ( ) const
inline

◆ getHeaderSize()

static uint8_t llvm::DWARFListTableHeader::getHeaderSize ( dwarf::DwarfFormat  Format)
inlinestatic

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

Definition at line 108 of file DWARFListTable.h.

References llvm::dump(), llvm::dwarf::DWARF32, llvm::dwarf::DWARF64, and llvm_unreachable.

Referenced by dump(), extract(), llvm::DWARFListTableBase< DWARFDebugRnglist >::getHeaderSize(), and parseRngListTableHeader().

◆ getLength()

uint64_t llvm::DWARFListTableHeader::getLength ( ) const
inline

Definition at line 100 of file DWARFListTable.h.

◆ getListTypeString()

StringRef llvm::DWARFListTableHeader::getListTypeString ( ) const
inline

Definition at line 103 of file DWARFListTable.h.

◆ getOffsetEntry()

Optional<uint64_t> llvm::DWARFListTableHeader::getOffsetEntry ( uint32_t  Index) const
inline

◆ getSectionName()

StringRef llvm::DWARFListTableHeader::getSectionName ( ) const
inline

Definition at line 102 of file DWARFListTable.h.

References AMDGPU::ElfNote::SectionName.

◆ getVersion()

uint16_t llvm::DWARFListTableHeader::getVersion ( ) const
inline

Definition at line 101 of file DWARFListTable.h.

Referenced by dumpLoclistsSection().

◆ length()

uint64_t DWARFListTableHeader::length ( ) const

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).

Definition at line 112 of file DWARFListTable.cpp.

References llvm::dwarf::getUnitLengthFieldByteSize().

Referenced by dumpLoclistsSection(), extract(), and llvm::DWARFListTableBase< DWARFDebugRnglist >::length().


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