LLVM API Documentation

Classes | Public Types | Public Member Functions | Static Public Member Functions
llvm::DWARFContext Class Reference

#include <DWARFContext.h>

Inheritance diagram for llvm::DWARFContext:
Inheritance graph
[legend]
Collaboration diagram for llvm::DWARFContext:
Collaboration graph
[legend]

List of all members.

Classes

struct  Section

Public Types

typedef DWARFUnitSection
< DWARFCompileUnit >
::iterator_range 
cu_iterator_range
typedef DWARFUnitSection
< DWARFTypeUnit >
::iterator_range 
tu_iterator_range
typedef MapVector
< object::SectionRef, Section,
std::map< object::SectionRef,
unsigned > > 
TypeSectionMap

Public Member Functions

 DWARFContext ()
void dump (raw_ostream &OS, DIDumpType DumpType=DIDT_All) override
cu_iterator_range compile_units ()
 Get compile units in this context.
tu_iterator_range type_units ()
 Get type units in this context.
cu_iterator_range dwo_compile_units ()
 Get compile units in the DWO context.
tu_iterator_range dwo_type_units ()
 Get type units in the DWO context.
unsigned getNumCompileUnits ()
 Get the number of compile units in this context.
unsigned getNumTypeUnits ()
 Get the number of compile units in this context.
unsigned getNumDWOCompileUnits ()
 Get the number of compile units in the DWO context.
unsigned getNumDWOTypeUnits ()
 Get the number of compile units in the DWO context.
DWARFCompileUnitgetCompileUnitAtIndex (unsigned index)
 Get the compile unit at the specified index for this compile unit.
DWARFCompileUnitgetDWOCompileUnitAtIndex (unsigned index)
 Get the compile unit at the specified index for the DWO compile units.
const DWARFDebugAbbrevgetDebugAbbrev ()
 Get a pointer to the parsed DebugAbbrev object.
const DWARFDebugLocgetDebugLoc ()
 Get a pointer to the parsed DebugLoc object.
const DWARFDebugAbbrevgetDebugAbbrevDWO ()
 Get a pointer to the parsed dwo abbreviations object.
const DWARFDebugLocDWOgetDebugLocDWO ()
 Get a pointer to the parsed DebugLoc object.
const DWARFDebugArangesgetDebugAranges ()
 Get a pointer to the parsed DebugAranges object.
const DWARFDebugFramegetDebugFrame ()
 Get a pointer to the parsed frame information object.
const DWARFDebugLine::LineTablegetLineTableForUnit (DWARFUnit *cu)
 Get a pointer to a parsed line table corresponding to a compile unit.
DILineInfo getLineInfoForAddress (uint64_t Address, DILineInfoSpecifier Specifier=DILineInfoSpecifier()) override
DILineInfoTable getLineInfoForAddressRange (uint64_t Address, uint64_t Size, DILineInfoSpecifier Specifier=DILineInfoSpecifier()) override
DIInliningInfo getInliningInfoForAddress (uint64_t Address, DILineInfoSpecifier Specifier=DILineInfoSpecifier()) override
virtual bool isLittleEndian () const =0
virtual uint8_t getAddressSize () const =0
virtual const SectiongetInfoSection ()=0
virtual const TypeSectionMapgetTypesSections ()=0
virtual StringRef getAbbrevSection ()=0
virtual const SectiongetLocSection ()=0
virtual const SectiongetLocDWOSection ()=0
virtual StringRef getARangeSection ()=0
virtual StringRef getDebugFrameSection ()=0
virtual const SectiongetLineSection ()=0
virtual const SectiongetLineDWOSection ()=0
virtual StringRef getStringSection ()=0
virtual StringRef getRangeSection ()=0
virtual StringRef getPubNamesSection ()=0
virtual StringRef getPubTypesSection ()=0
virtual StringRef getGnuPubNamesSection ()=0
virtual StringRef getGnuPubTypesSection ()=0
virtual const SectiongetInfoDWOSection ()=0
virtual const TypeSectionMapgetTypesDWOSections ()=0
virtual StringRef getAbbrevDWOSection ()=0
virtual StringRef getStringDWOSection ()=0
virtual StringRef getStringOffsetDWOSection ()=0
virtual StringRef getRangeDWOSection ()=0
virtual StringRef getAddrSection ()=0

Static Public Member Functions

static bool classof (const DIContext *DICtx)
static bool isSupportedVersion (unsigned version)

Detailed Description

DWARFContext This data structure is the top level entity that deals with dwarf debug information parsing. The actual data is supplied through pure virtual methods that a concrete implementation provides.

Definition at line 30 of file DWARFContext.h.


Member Typedef Documentation

Definition at line 78 of file DWARFContext.h.

Definition at line 79 of file DWARFContext.h.

Definition at line 173 of file DWARFContext.h.


Constructor & Destructor Documentation

llvm::DWARFContext::DWARFContext ( ) [inline]

Definition at line 70 of file DWARFContext.h.


Member Function Documentation

static bool llvm::DWARFContext::classof ( const DIContext DICtx) [inline, static]

Definition at line 72 of file DWARFContext.h.

References llvm::DIContext::CK_DWARF, and llvm::DIContext::getKind().

Get compile units in this context.

Definition at line 82 of file DWARFContext.h.

Referenced by llvm::DWARFDebugAranges::generate().

void DWARFContext::dump ( raw_ostream OS,
DIDumpType  DumpType = DIDT_All 
) [override, virtual]

Get compile units in the DWO context.

Definition at line 94 of file DWARFContext.h.

Get type units in the DWO context.

Definition at line 100 of file DWARFContext.h.

Implemented in llvm::DWARFContextInMemory.

virtual StringRef llvm::DWARFContext::getAbbrevSection ( ) [pure virtual]

Implemented in llvm::DWARFContextInMemory.

virtual uint8_t llvm::DWARFContext::getAddressSize ( ) const [pure virtual]

Implemented in llvm::DWARFContextInMemory.

virtual StringRef llvm::DWARFContext::getAddrSection ( ) [pure virtual]

Implemented in llvm::DWARFContextInMemory.

virtual StringRef llvm::DWARFContext::getARangeSection ( ) [pure virtual]

Get the compile unit at the specified index for this compile unit.

Definition at line 130 of file DWARFContext.h.

Get a pointer to the parsed DebugAbbrev object.

Definition at line 221 of file DWARFContext.cpp.

Get a pointer to the parsed dwo abbreviations object.

Definition at line 232 of file DWARFContext.cpp.

Get a pointer to the parsed DebugAranges object.

Definition at line 264 of file DWARFContext.cpp.

References llvm::DWARFDebugAranges::generate().

Get a pointer to the parsed frame information object.

Definition at line 273 of file DWARFContext.cpp.

Implemented in llvm::DWARFContextInMemory.

Get a pointer to the parsed DebugLoc object.

Definition at line 242 of file DWARFContext.cpp.

Get a pointer to the parsed DebugLoc object.

Definition at line 254 of file DWARFContext.cpp.

Get the compile unit at the specified index for the DWO compile units.

Definition at line 136 of file DWARFContext.h.

Implemented in llvm::DWARFContextInMemory.

Implemented in llvm::DWARFContextInMemory.

Implemented in llvm::DWARFContextInMemory.

virtual const Section& llvm::DWARFContext::getInfoSection ( ) [pure virtual]

Implemented in llvm::DWARFContextInMemory.

DIInliningInfo DWARFContext::getInliningInfoForAddress ( uint64_t  Address,
DILineInfoSpecifier  Specifier = DILineInfoSpecifier() 
) [override, virtual]

Implemented in llvm::DWARFContextInMemory.

DILineInfo DWARFContext::getLineInfoForAddress ( uint64_t  Address,
DILineInfoSpecifier  Specifier = DILineInfoSpecifier() 
) [override, virtual]
DILineInfoTable DWARFContext::getLineInfoForAddressRange ( uint64_t  Address,
uint64_t  Size,
DILineInfoSpecifier  Specifier = DILineInfoSpecifier() 
) [override, virtual]
virtual const Section& llvm::DWARFContext::getLineSection ( ) [pure virtual]

Implemented in llvm::DWARFContextInMemory.

virtual const Section& llvm::DWARFContext::getLocDWOSection ( ) [pure virtual]

Implemented in llvm::DWARFContextInMemory.

virtual const Section& llvm::DWARFContext::getLocSection ( ) [pure virtual]

Implemented in llvm::DWARFContextInMemory.

Get the number of compile units in this context.

Definition at line 106 of file DWARFContext.h.

Get the number of compile units in the DWO context.

Definition at line 118 of file DWARFContext.h.

Get the number of compile units in the DWO context.

Definition at line 124 of file DWARFContext.h.

Get the number of compile units in this context.

Definition at line 112 of file DWARFContext.h.

Implemented in llvm::DWARFContextInMemory.

Implemented in llvm::DWARFContextInMemory.

Implemented in llvm::DWARFContextInMemory.

virtual StringRef llvm::DWARFContext::getRangeSection ( ) [pure virtual]

Implemented in llvm::DWARFContextInMemory.

Implemented in llvm::DWARFContextInMemory.

Implemented in llvm::DWARFContextInMemory.

virtual StringRef llvm::DWARFContext::getStringSection ( ) [pure virtual]

Implemented in llvm::DWARFContextInMemory.

Implemented in llvm::DWARFContextInMemory.

Implemented in llvm::DWARFContextInMemory.

virtual bool llvm::DWARFContext::isLittleEndian ( ) const [pure virtual]
static bool llvm::DWARFContext::isSupportedVersion ( unsigned  version) [inline, static]

Definition at line 198 of file DWARFContext.h.

Referenced by llvm::DWARFUnit::extractImpl().

Get type units in this context.

Definition at line 88 of file DWARFContext.h.


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