LLVM 22.0.0git
llvm::gsym::GsymContext Class Reference

GSYM DI Context This data structure is the top level entity that deals with GSYM symbolication. More...

#include "llvm/DebugInfo/GSYM/GsymContext.h"

Inheritance diagram for llvm::gsym::GsymContext:
[legend]

Public Member Functions

 GsymContext (std::unique_ptr< GsymReader > Reader)
 ~GsymContext ()
 GsymContext (GsymContext &)=delete
GsymContextoperator= (GsymContext &)=delete
void dump (raw_ostream &OS, DIDumpOptions DIDumpOpts) override
std::optional< DILineInfogetLineInfoForAddress (object::SectionedAddress Address, DILineInfoSpecifier Specifier=DILineInfoSpecifier()) override
std::optional< DILineInfogetLineInfoForDataAddress (object::SectionedAddress Address) override
DILineInfoTable getLineInfoForAddressRange (object::SectionedAddress Address, uint64_t Size, DILineInfoSpecifier Specifier=DILineInfoSpecifier()) override
DIInliningInfo getInliningInfoForAddress (object::SectionedAddress Address, DILineInfoSpecifier Specifier=DILineInfoSpecifier()) override
std::vector< DILocalgetLocalsForAddress (object::SectionedAddress Address) override
Public Member Functions inherited from llvm::DIContext
 DIContext (DIContextKind K)
virtual ~DIContext ()=default
DIContextKind getKind () const
virtual bool verify (raw_ostream &OS, DIDumpOptions DumpOpts={})

Static Public Member Functions

static bool classof (const DIContext *DICtx)

Additional Inherited Members

Public Types inherited from llvm::DIContext
enum  DIContextKind { CK_DWARF , CK_PDB , CK_BTF , CK_GSYM }

Detailed Description

GSYM DI Context This data structure is the top level entity that deals with GSYM symbolication.

This data structure exists only when there is a need for a transparent interface to different symbolication formats (e.g. GSYM, PDB and DWARF). More control and power over the debug information access can be had by using the GSYM interfaces directly.

Definition at line 30 of file GsymContext.h.

Constructor & Destructor Documentation

◆ GsymContext() [1/2]

GsymContext::GsymContext ( std::unique_ptr< GsymReader > Reader)

Definition at line 18 of file GsymContext.cpp.

References llvm::DIContext::CK_GSYM, llvm::DIContext::DIContext(), and llvm::move().

Referenced by GsymContext(), and operator=().

◆ ~GsymContext()

GsymContext::~GsymContext ( )
default

◆ GsymContext() [2/2]

llvm::gsym::GsymContext::GsymContext ( GsymContext & )
delete

References GsymContext().

Member Function Documentation

◆ classof()

bool llvm::gsym::GsymContext::classof ( const DIContext * DICtx)
inlinestatic

◆ dump()

void GsymContext::dump ( raw_ostream & OS,
DIDumpOptions DIDumpOpts )
overridevirtual

Implements llvm::DIContext.

Definition at line 21 of file GsymContext.cpp.

◆ getInliningInfoForAddress()

DIInliningInfo GsymContext::getInliningInfoForAddress ( object::SectionedAddress Address,
DILineInfoSpecifier Specifier = DILineInfoSpecifier() )
overridevirtual

◆ getLineInfoForAddress()

std::optional< DILineInfo > GsymContext::getLineInfoForAddress ( object::SectionedAddress Address,
DILineInfoSpecifier Specifier = DILineInfoSpecifier() )
overridevirtual

◆ getLineInfoForAddressRange()

DILineInfoTable GsymContext::getLineInfoForAddressRange ( object::SectionedAddress Address,
uint64_t Size,
DILineInfoSpecifier Specifier = DILineInfoSpecifier() )
overridevirtual

◆ getLineInfoForDataAddress()

std::optional< DILineInfo > GsymContext::getLineInfoForDataAddress ( object::SectionedAddress Address)
overridevirtual

Implements llvm::DIContext.

Definition at line 97 of file GsymContext.cpp.

References llvm::Address.

◆ getLocalsForAddress()

std::vector< DILocal > GsymContext::getLocalsForAddress ( object::SectionedAddress Address)
overridevirtual

Implements llvm::DIContext.

Definition at line 163 of file GsymContext.cpp.

References llvm::Address.

◆ operator=()

GsymContext & llvm::gsym::GsymContext::operator= ( GsymContext & )
delete

References GsymContext().


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