class PDBContext
Declaration
class PDBContext : public DIContext { /* full declaration omitted */ };
Description
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.
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:32
Inherits from: DIContext
Member Variables
- private std::unique_ptr<IPDBSession> Session
Method Overview
- public PDBContext(const object::COFFObjectFile & Object, std::unique_ptr<IPDBSession> PDBSession)
- public PDBContext(llvm::pdb::PDBContext &)
- public static bool classof(const llvm::DIContext * DICtx)
- public void dump(llvm::raw_ostream & OS, llvm::DIDumpOptions DIDumpOpts)
- private std::string getFunctionName(uint64_t Address, llvm::DINameKind NameKind) const
- public llvm::DIInliningInfo getInliningInfoForAddress(object::SectionedAddress Address, llvm::DILineInfoSpecifier Specifier = llvm::DILineInfoSpecifier())
- public llvm::DILineInfo getLineInfoForAddress(object::SectionedAddress Address, llvm::DILineInfoSpecifier Specifier = llvm::DILineInfoSpecifier())
- public llvm::DILineInfoTable getLineInfoForAddressRange(object::SectionedAddress Address, uint64_t Size, llvm::DILineInfoSpecifier Specifier = llvm::DILineInfoSpecifier())
- public llvm::DILineInfo getLineInfoForDataAddress(object::SectionedAddress Address)
- public std::vector<DILocal> getLocalsForAddress(object::SectionedAddress Address)
Inherited from DIContext:
- public dump
- public getInliningInfoForAddress
- public getKind
- public getLineInfoForAddress
- public getLineInfoForAddressRange
- public getLineInfoForDataAddress
- public getLocalsForAddress
- public verify
Methods
¶PDBContext(
const object::COFFObjectFile& Object,
std::unique_ptr<IPDBSession> PDBSession)
PDBContext(
const object::COFFObjectFile& Object,
std::unique_ptr<IPDBSession> PDBSession)
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:34
Parameters
- const object::COFFObjectFile& Object
- std::unique_ptr<IPDBSession> PDBSession
¶PDBContext(llvm::pdb::PDBContext&)
PDBContext(llvm::pdb::PDBContext&)
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:36
Parameters
¶static bool classof(const llvm::DIContext* DICtx)
static bool classof(const llvm::DIContext* DICtx)
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:39
Parameters
- const llvm::DIContext* DICtx
¶void dump(llvm::raw_ostream& OS,
llvm::DIDumpOptions DIDumpOpts)
void dump(llvm::raw_ostream& OS,
llvm::DIDumpOptions DIDumpOpts)
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:43
Parameters
- llvm::raw_ostream& OS
- llvm::DIDumpOptions DIDumpOpts
¶std::string getFunctionName(
uint64_t Address,
llvm::DINameKind NameKind) const
std::string getFunctionName(
uint64_t Address,
llvm::DINameKind NameKind) const
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:61
Parameters
- uint64_t Address
- llvm::DINameKind NameKind
¶llvm::DIInliningInfo getInliningInfoForAddress(
object::SectionedAddress Address,
llvm::DILineInfoSpecifier Specifier =
llvm::DILineInfoSpecifier())
llvm::DIInliningInfo getInliningInfoForAddress(
object::SectionedAddress Address,
llvm::DILineInfoSpecifier Specifier =
llvm::DILineInfoSpecifier())
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:53
Parameters
- object::SectionedAddress Address
- llvm::DILineInfoSpecifier Specifier = llvm::DILineInfoSpecifier()
¶llvm::DILineInfo getLineInfoForAddress(
object::SectionedAddress Address,
llvm::DILineInfoSpecifier Specifier =
llvm::DILineInfoSpecifier())
llvm::DILineInfo getLineInfoForAddress(
object::SectionedAddress Address,
llvm::DILineInfoSpecifier Specifier =
llvm::DILineInfoSpecifier())
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:45
Parameters
- object::SectionedAddress Address
- llvm::DILineInfoSpecifier Specifier = llvm::DILineInfoSpecifier()
¶llvm::DILineInfoTable getLineInfoForAddressRange(
object::SectionedAddress Address,
uint64_t Size,
llvm::DILineInfoSpecifier Specifier =
llvm::DILineInfoSpecifier())
llvm::DILineInfoTable getLineInfoForAddressRange(
object::SectionedAddress Address,
uint64_t Size,
llvm::DILineInfoSpecifier Specifier =
llvm::DILineInfoSpecifier())
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:50
Parameters
- object::SectionedAddress Address
- uint64_t Size
- llvm::DILineInfoSpecifier Specifier = llvm::DILineInfoSpecifier()
¶llvm::DILineInfo getLineInfoForDataAddress(
object::SectionedAddress Address)
llvm::DILineInfo getLineInfoForDataAddress(
object::SectionedAddress Address)
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:49
Parameters
- object::SectionedAddress Address
¶std::vector<DILocal> getLocalsForAddress(
object::SectionedAddress Address)
std::vector<DILocal> getLocalsForAddress(
object::SectionedAddress Address)
Declared at: llvm/include/llvm/DebugInfo/PDB/PDBContext.h:58
Parameters
- object::SectionedAddress Address