[PATCH] D20999: [pdbdump] Print out New FPO stream contents.

Rui Ueyama via llvm-commits llvm-commits at lists.llvm.org
Sun Jun 5 11:52:32 PDT 2016


ruiu added inline comments.

================
Comment at: include/llvm/DebugInfo/PDB/Raw/RawTypes.h:83
@@ -82,1 +82,3 @@
 
+// Corresponds to `_FPO_DATA` structure in the PE/COFF spec.
+struct FpoData {
----------------
zturner wrote:
> Do you think this should go in `llvm/Support/COFF.h` (or is it perhaps there already?)
Done.

================
Comment at: lib/DebugInfo/PDB/Raw/DbiStream.cpp:313-314
@@ +312,4 @@
+
+  size_t StreamLen = FpoStream->getLength();
+  size_t NumRecords = StreamLen / sizeof(FpoData);
+  codeview::StreamReader Reader(*FpoStream);
----------------
majnemer wrote:
> Should we check that StreamLen is a multiple of sizeof(FpoData)?
I think readArray takes care of it.

================
Comment at: tools/llvm-pdbdump/LLVMOutputStyle.cpp:691-692
@@ +690,4 @@
+    P.printNumber("Number of Saved Registers", Fpo.getNumSavedRegs());
+    P.printNumber("Has SEH", Fpo.hasSEH());
+    P.printNumber("Use BP", Fpo.useBP());
+    P.printNumber("Frame Pointer", Fpo.getFP());
----------------
majnemer wrote:
> Shouldn't these be printed as booleans?
Done.

================
Comment at: tools/llvm-pdbdump/LLVMOutputStyle.h:36
@@ -35,2 +35,3 @@
   Error dumpSectionHeaders() override;
+  Error dumpFpoStream() override;
 
----------------
zturner wrote:
> You will probably need to update `YamlOutputStyle.h` as well, you can just have the method do nothing.
Did you submit YamlOutputStyle.h already?


http://reviews.llvm.org/D20999





More information about the llvm-commits mailing list