|
LLVM
4.0.0
|
PDBContext This data structure is the top level entity that deals with PDB debug information parsing. More...
#include <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, DIDumpType DumpType=DIDT_All, bool DumpEH=false, bool SummarizeTypes=false) 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 |
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::DIContext::CK_PDB, and llvm::DIContext::getKind().
|
overridevirtual |
Implements llvm::DIContext.
Definition at line 32 of file PDBContext.cpp.
|
overridevirtual |
Implements llvm::DIContext.
Definition at line 87 of file PDBContext.cpp.
References llvm::DIInliningInfo::addFrame(), and getLineInfoForAddress().
|
overridevirtual |
Implements llvm::DIContext.
Definition at line 35 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 68 of file PDBContext.cpp.
References getLineInfoForAddress(), llvm::pdb::LineNumbers, and llvm::SmallVectorTemplateBase< T, isPodLike >::push_back().
|
delete |
1.8.6