summaryrefslogtreecommitdiffstats
path: root/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2017-05-03 07:29:25 +0000
committerDaniel Jasper <djasper@google.com>2017-05-03 07:29:25 +0000
commitdff096f217542fc12a69c228536d5b555cb23912 (patch)
treee47fed572e4212072a742d6d684a07f0ef038e45 /llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
parent726701b0ed67c400bc41fe08feb8a19668b59cbf (diff)
downloadbcm5719-llvm-dff096f217542fc12a69c228536d5b555cb23912.tar.gz
bcm5719-llvm-dff096f217542fc12a69c228536d5b555cb23912.zip
Revert r301986 (and subsequent r301987).
The patch is failing to add StringTableStreamBuilder.h, but that isn't even discovered because the corresponding StringTableStreamBuilder.cpp isn't added to any CMakeLists.txt file and thus never built. I think this patch is just incomplete. llvm-svn: 302002
Diffstat (limited to 'llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp')
-rw-r--r--llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp b/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
index 859295d2c7d..f158c5c5386 100644
--- a/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
+++ b/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
@@ -338,7 +338,7 @@ Expected<SymbolStream &> PDBFile::getPDBSymbolStream() {
}
Expected<PDBStringTable &> PDBFile::getStringTable() {
- if (!Strings) {
+ if (!Strings || !PDBStringTableStream) {
auto IS = getPDBInfoStream();
if (!IS)
return IS.takeError();
@@ -350,13 +350,12 @@ Expected<PDBStringTable &> PDBFile::getStringTable() {
if (!NS)
return NS.takeError();
- auto N = llvm::make_unique<PDBStringTable>();
BinaryStreamReader Reader(**NS);
- if (auto EC = N->reload(Reader))
+ auto N = llvm::make_unique<PDBStringTable>();
+ if (auto EC = N->load(Reader))
return std::move(EC);
- assert(Reader.bytesRemaining() == 0);
- StringTableStream = std::move(*NS);
Strings = std::move(N);
+ PDBStringTableStream = std::move(*NS);
}
return *Strings;
}
OpenPOWER on IntegriCloud