[PATCH] D20022: Make llvm-pdbdump print CodeView type records

Reid Kleckner via llvm-commits llvm-commits at lists.llvm.org
Fri May 6 10:57:42 PDT 2016


rnk accepted this revision.
rnk added a comment.
This revision is now accepted and ready to land.

lgtm


================
Comment at: include/llvm/DebugInfo/CodeView/CVTypeVisitor.h:82-83
@@ +81,4 @@
+
+  /// Visits the type records in Data and returns remaining data. Sets the
+  /// error flag on parse failures.
+  void visitTypeStream(ArrayRef<uint8_t> Data) {
----------------
Woops, this comment is not accurate. Probably worth updating in this CL. This was part of a past bad idea to have this thing work on parts of non-contiguous type streams.

================
Comment at: include/llvm/DebugInfo/CodeView/TypeDumper.h:34
@@ +33,3 @@
+  /// Dumps one type record.  Returns false if there was a type parsing error,
+  /// and true otherwise.
+  bool dump(const TypeIterator::TypeRecord &Record);
----------------
You should document that this needs to be called in order on a type stream, otherwise it won't be able to cross-reference type indices to past type records.

================
Comment at: tools/llvm-pdbdump/llvm-pdbdump.cpp:365-366
@@ +364,4 @@
+
+      if (opts::DumpTpiRecordBytes)
+        P.printBinaryBlock("Bytes", Type.LeafData);
+    }
----------------
Any reason not to pass this boolean in above as the `PrintRecordBytes` to the dumper constructor instead of printing the bytes manually here? If you prefer "Bytes" to "LeafData" we can totally change it.


http://reviews.llvm.org/D20022





More information about the llvm-commits mailing list