summaryrefslogtreecommitdiffstats
path: root/llvm/lib
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
parentc789b631f3af410f4935e7bf1d09573d12f3b398 (diff)
downloadbcm5719-llvm-c9972c64f58ee1d6a17bfca4256d27244af2bf10.tar.gz
bcm5719-llvm-c9972c64f58ee1d6a17bfca4256d27244af2bf10.zip
[llvm-pdbdump] Dump the IPI stream and all records.
llvm-svn: 270661
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp11
-rw-r--r--llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp4
2 files changed, 12 insertions, 3 deletions
diff --git a/llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp b/llvm/lib/DebugInfo/PDB/Raw/PDBFile.cpp
index 9da9c817780..594739f4b88 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();
diff --git a/llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp b/llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp
index ed988bbf2e9..8ce8c01f608 100644
--- a/llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp
+++ b/llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp
@@ -56,8 +56,8 @@ struct TpiStream::HeaderInfo {
EmbeddedBuf HashAdjBuffer;
};
-TpiStream::TpiStream(PDBFile &File)
- : Pdb(File), Stream(StreamTPI, File), HashFunction(nullptr) {}
+TpiStream::TpiStream(PDBFile &File, uint32_t StreamIdx)
+ : Pdb(File), Stream(StreamIdx, File), HashFunction(nullptr) {}
TpiStream::~TpiStream() {}
OpenPOWER on IntegriCloud