summaryrefslogtreecommitdiffstats
path: root/llvm/lib/DebugInfo/PDB/Raw/InfoStream.cpp
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2016-05-02 18:09:21 +0000
committerZachary Turner <zturner@google.com>2016-05-02 18:09:21 +0000
commitb56d904433a5692dfd11cd261de058222b296a99 (patch)
tree261326d860dc512dac0b9157395b9db9aab05c5d /llvm/lib/DebugInfo/PDB/Raw/InfoStream.cpp
parent6edb891c8efd1fb055ffce6611704da3906d68ec (diff)
downloadbcm5719-llvm-b56d904433a5692dfd11cd261de058222b296a99.tar.gz
bcm5719-llvm-b56d904433a5692dfd11cd261de058222b296a99.zip
PDB - Instead of hardcoding stream numbers, use an enum.
llvm-svn: 268270
Diffstat (limited to 'llvm/lib/DebugInfo/PDB/Raw/InfoStream.cpp')
-rw-r--r--llvm/lib/DebugInfo/PDB/Raw/InfoStream.cpp27
1 files changed, 16 insertions, 11 deletions
diff --git a/llvm/lib/DebugInfo/PDB/Raw/InfoStream.cpp b/llvm/lib/DebugInfo/PDB/Raw/InfoStream.cpp
index c1b4737f21f..210dffd1186 100644
--- a/llvm/lib/DebugInfo/PDB/Raw/InfoStream.cpp
+++ b/llvm/lib/DebugInfo/PDB/Raw/InfoStream.cpp
@@ -10,30 +10,35 @@
#include "llvm/DebugInfo/PDB/Raw/InfoStream.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/SmallVector.h"
+#include "llvm/DebugInfo/PDB/Raw/RawConstants.h"
#include "llvm/DebugInfo/PDB/Raw/StreamReader.h"
using namespace llvm;
using namespace llvm::pdb;
-InfoStream::InfoStream(PDBFile &File) : Pdb(File), Stream(1, File) {}
+InfoStream::InfoStream(PDBFile &File) : Pdb(File), Stream(StreamPDB, File) {}
std::error_code InfoStream::reload() {
StreamReader Reader(Stream);
- support::ulittle32_t Value;
+ struct Header {
+ support::ulittle32_t Version;
+ support::ulittle32_t Signature;
+ support::ulittle32_t Age;
+ PDB_UniqueId Guid;
+ };
- Reader.readObject(&Value);
- Version = Value;
- if (Version < PdbRaw_ImplVer::PdbImplVC70)
- return std::make_error_code(std::errc::not_supported);
+ Header H;
+ Reader.readObject(&H);
- Reader.readObject(&Value);
- Signature = Value;
+ if (H.Version < PdbRaw_ImplVer::PdbImplVC70)
+ return std::make_error_code(std::errc::not_supported);
- Reader.readObject(&Value);
- Age = Value;
+ Version = H.Version;
+ Signature = H.Signature;
+ Age = H.Age;
+ Guid = H.Guid;
- Reader.readObject(&Guid);
NamedStreams.load(Reader);
return std::error_code();
OpenPOWER on IntegriCloud