LLVM
8.0.1
|
PDBContext This data structure is the top level entity that deals with PDB debug information parsing. More...
#include "llvm/DebugInfo/PDB/PDBContext.h"
Public Member Functions | |
PDBContext (const object::COFFObjectFile &Object, std::unique_ptr< IPDBSession > PDBSession) | |
PDBContext (PDBContext &)=delete | |
PDBContext & | operator= (PDBContext &)=delete |
void | dump (raw_ostream &OS, DIDumpOptions DIDumpOpts) override |
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 |
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 } |
PDBContext This data structure is the top level entity that deals with PDB debug information parsing.
This data structure exists only when there is a need for a transparent interface to different debug information formats (e.g. PDB and DWARF). More control and power over the debug information access can be had by using the PDB interfaces directly.
Definition at line 33 of file PDBContext.h.
PDBContext::PDBContext | ( | const object::COFFObjectFile & | Object, |
std::unique_ptr< IPDBSession > | PDBSession | ||
) |
Definition at line 24 of file PDBContext.cpp.
References llvm::ErrorOr< T >::get(), and llvm::object::COFFObjectFile::getImageBase().
|
delete |
Definition at line 40 of file PDBContext.h.
References llvm::Address, llvm::dump(), llvm::getFunctionName(), llvm::DIContext::getKind(), and Size.
|
overridevirtual |
Implements llvm::DIContext.
Definition at line 32 of file PDBContext.cpp.
|
overridevirtual |
Implements llvm::DIContext.
Definition at line 86 of file PDBContext.cpp.
References llvm::DIInliningInfo::addFrame(), llvm::Address, llvm::pdb::Function, getLineInfoForAddress(), llvm::LinkageName, llvm::None, and llvm::pdb::PublicSymbol.
|
overridevirtual |
Implements llvm::DIContext.
Definition at line 34 of file PDBContext.cpp.
References assert(), llvm::DILineInfo::Column, llvm::pdb::Data, llvm::DILineInfo::FileName, llvm::DILineInfoSpecifier::FLIKind, llvm::DILineInfoSpecifier::FNKind, llvm::DILineInfo::FunctionName, llvm::DILineInfo::Line, llvm::pdb::LineNumbers, llvm::DILineInfoSpecifier::None, llvm::pdb::None, and llvm::ARMBuildAttrs::Symbol.
Referenced by getInliningInfoForAddress(), and getLineInfoForAddressRange().
|
overridevirtual |
Implements llvm::DIContext.
Definition at line 67 of file PDBContext.cpp.
References getLineInfoForAddress(), llvm::pdb::LineNumbers, and llvm::SmallVectorTemplateBase< T, bool >::push_back().
|
delete |