summaryrefslogtreecommitdiff
path: root/include/llvm/DebugInfo/PDB/Native/NativeSession.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/DebugInfo/PDB/Native/NativeSession.h')
-rw-r--r--include/llvm/DebugInfo/PDB/Native/NativeSession.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/include/llvm/DebugInfo/PDB/Native/NativeSession.h b/include/llvm/DebugInfo/PDB/Native/NativeSession.h
index b16ce231c349..2e68ced46bfe 100644
--- a/include/llvm/DebugInfo/PDB/Native/NativeSession.h
+++ b/include/llvm/DebugInfo/PDB/Native/NativeSession.h
@@ -22,6 +22,7 @@
#include "llvm/Support/Error.h"
namespace llvm {
+class MemoryBuffer;
namespace pdb {
class PDBFile;
@@ -31,7 +32,7 @@ public:
std::unique_ptr<BumpPtrAllocator> Allocator);
~NativeSession() override;
- static Error createFromPdb(StringRef Path,
+ static Error createFromPdb(std::unique_ptr<MemoryBuffer> MB,
std::unique_ptr<IPDBSession> &Session);
static Error createFromExe(StringRef Path,
std::unique_ptr<IPDBSession> &Session);
@@ -39,6 +40,12 @@ public:
std::unique_ptr<PDBSymbolCompiland>
createCompilandSymbol(DbiModuleDescriptor MI);
+ std::unique_ptr<PDBSymbolTypeEnum>
+ createEnumSymbol(codeview::TypeIndex Index);
+
+ std::unique_ptr<IPDBEnumSymbols>
+ createTypeEnumerator(codeview::TypeLeafKind Kind);
+
SymIndexId findSymbolByTypeIndex(codeview::TypeIndex TI);
uint64_t getLoadAddress() const override;
@@ -76,6 +83,8 @@ public:
std::unique_ptr<IPDBEnumDataStreams> getDebugStreams() const override;
+ std::unique_ptr<IPDBEnumTables> getEnumTables() const override;
+
PDBFile &getPDBFile() { return *Pdb; }
const PDBFile &getPDBFile() const { return *Pdb; }