aboutsummaryrefslogtreecommitdiff
path: root/tools/llvm-pdbutil/InputFile.h
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2018-07-28 10:51:19 +0000
committerDimitry Andric <dim@FreeBSD.org>2018-07-28 10:51:19 +0000
commiteb11fae6d08f479c0799db45860a98af528fa6e7 (patch)
tree44d492a50c8c1a7eb8e2d17ea3360ec4d066f042 /tools/llvm-pdbutil/InputFile.h
parentb8a2042aa938069e862750553db0e4d82d25822c (diff)
downloadsrc-eb11fae6d08f479c0799db45860a98af528fa6e7.tar.gz
src-eb11fae6d08f479c0799db45860a98af528fa6e7.zip
Notes
Diffstat (limited to 'tools/llvm-pdbutil/InputFile.h')
-rw-r--r--tools/llvm-pdbutil/InputFile.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/tools/llvm-pdbutil/InputFile.h b/tools/llvm-pdbutil/InputFile.h
index 8063439133c2..552f3a3b2127 100644
--- a/tools/llvm-pdbutil/InputFile.h
+++ b/tools/llvm-pdbutil/InputFile.h
@@ -43,7 +43,8 @@ class InputFile {
std::unique_ptr<NativeSession> PdbSession;
object::OwningBinary<object::Binary> CoffObject;
- PointerUnion<PDBFile *, object::COFFObjectFile *> PdbOrObj;
+ std::unique_ptr<MemoryBuffer> UnknownFile;
+ PointerUnion3<PDBFile *, object::COFFObjectFile *, MemoryBuffer *> PdbOrObj;
using TypeCollectionPtr = std::unique_ptr<codeview::LazyRandomTypeCollection>;
@@ -58,12 +59,17 @@ public:
~InputFile();
InputFile(InputFile &&Other) = default;
- static Expected<InputFile> open(StringRef Path);
+ static Expected<InputFile> open(StringRef Path,
+ bool AllowUnknownFile = false);
PDBFile &pdb();
const PDBFile &pdb() const;
object::COFFObjectFile &obj();
const object::COFFObjectFile &obj() const;
+ MemoryBuffer &unknown();
+ const MemoryBuffer &unknown() const;
+
+ StringRef getFilePath() const;
bool hasTypes() const;
bool hasIds() const;
@@ -77,6 +83,7 @@ public:
bool isPdb() const;
bool isObj() const;
+ bool isUnknown() const;
};
class SymbolGroup {