summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2016-05-06 22:15:42 +0000
committerZachary Turner <zturner@google.com>2016-05-06 22:15:42 +0000
commit5a1b5ef9ebe76f50197c1180c894d8ba6f62e04d (patch)
treec5aea04b6b74e2763c4f9226651bce446078cf2d /llvm/lib
parent52b394e9813c9dad61fbf4f53a934da3fc17b7fa (diff)
downloadbcm5719-llvm-5a1b5ef9ebe76f50197c1180c894d8ba6f62e04d.tar.gz
bcm5719-llvm-5a1b5ef9ebe76f50197c1180c894d8ba6f62e04d.zip
Make llvm-pdbdump print CV type records
This reuses the CVTypeDumper from libcodeview to dump full information about type records within a PDB file. Differential Revision: http://reviews.llvm.org/D20022 Reviewed By: rnk llvm-svn: 268808
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/DebugInfo/CodeView/TypeDumper.cpp6
-rw-r--r--llvm/lib/DebugInfo/PDB/LLVMBuild.txt2
2 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/DebugInfo/CodeView/TypeDumper.cpp b/llvm/lib/DebugInfo/CodeView/TypeDumper.cpp
index bb3859a0590..2aae7f5a84d 100644
--- a/llvm/lib/DebugInfo/CodeView/TypeDumper.cpp
+++ b/llvm/lib/DebugInfo/CodeView/TypeDumper.cpp
@@ -755,6 +755,12 @@ void CVTypeDumper::printTypeIndex(StringRef FieldName, TypeIndex TI) {
W.printHex(FieldName, TI.getIndex());
}
+bool CVTypeDumper::dump(const TypeIterator::TypeRecord &Record) {
+ CVTypeDumperImpl Dumper(*this, W, PrintRecordBytes);
+ Dumper.visitTypeRecord(Record);
+ return !Dumper.hadError();
+}
+
bool CVTypeDumper::dump(ArrayRef<uint8_t> Data) {
CVTypeDumperImpl Dumper(*this, W, PrintRecordBytes);
Dumper.visitTypeStream(Data);
diff --git a/llvm/lib/DebugInfo/PDB/LLVMBuild.txt b/llvm/lib/DebugInfo/PDB/LLVMBuild.txt
index 9ee9f4067e9..76e537a57fc 100644
--- a/llvm/lib/DebugInfo/PDB/LLVMBuild.txt
+++ b/llvm/lib/DebugInfo/PDB/LLVMBuild.txt
@@ -19,5 +19,5 @@
type = Library
name = DebugInfoPDB
parent = DebugInfo
-required_libraries = Object Support
+required_libraries = Object Support DebugInfoCodeView
OpenPOWER on IntegriCloud