[PATCH] D36907: [codeview] support more DW_OPs for more complete debug info

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 22 16:46:27 PDT 2017


rnk added inline comments.


================
Comment at: llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp:948
     Var.DefRanges.emplace_back(std::move(DefRange));
+    Var.Deref = false;
     recordLocalVariable(std::move(Var), VI.Loc->getInlinedAt());
----------------
Shouldn't need this with a member initializer.


================
Comment at: llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp:1094
+      assert(End);
+      Length += End->getOffset() - Begin->getOffset();
 
----------------
Are you sure this always works? I would expect it to assert sometimes. We haven't run the assembler yet. We can't in general know the distance between two labels, even if they are in the same section. If we can, we can make a large number of simplifications to this code.


================
Comment at: llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h:97
     SmallVector<LocalVarDefRange, 1> DefRanges;
+    bool Deref;
   };
----------------
Let's initialize this to false so we don't need to remember it everywhere.


https://reviews.llvm.org/D36907





More information about the llvm-commits mailing list