aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2016-05-25 04:35:22 +0000
committerZachary Turner <zturner@google.com>2016-05-25 04:35:22 +0000
commitc9972c64f58ee1d6a17bfca4256d27244af2bf10 (patch)
tree133d55989e8551b0159222708116625af74e3565 /llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp
parentc789b631f3af410f4935e7bf1d09573d12f3b398 (diff)
downloadllvm-c9972c64f58ee1d6a17bfca4256d27244af2bf10.zip
llvm-c9972c64f58ee1d6a17bfca4256d27244af2bf10.tar.gz
llvm-c9972c64f58ee1d6a17bfca4256d27244af2bf10.tar.bz2
[llvm-pdbdump] Dump the IPI stream and all records.
llvm-svn: 270661
Diffstat (limited to 'llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp')
-rw-r--r--llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp b/llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp
index 9da9c81..594739f 100644
--- a/llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp
+++ b/llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp
@@ -289,13 +289,22 @@ Expected<DbiStream &> PDBFile::getPDBDbiStream() {
Expected<TpiStream &> PDBFile::getPDBTpiStream() {
if (!Tpi) {
- Tpi.reset(new TpiStream(*this));
+ Tpi.reset(new TpiStream(*this, StreamTPI));
if (auto EC = Tpi->reload())
return std::move(EC);
}
return *Tpi;
}
+Expected<TpiStream &> PDBFile::getPDBIpiStream() {
+ if (!Ipi) {
+ Ipi.reset(new TpiStream(*this, StreamIPI));
+ if (auto EC = Ipi->reload())
+ return std::move(EC);
+ }
+ return *Ipi;
+}
+
Expected<PublicsStream &> PDBFile::getPDBPublicsStream() {
if (!Publics) {
auto DbiS = getPDBDbiStream();