[PATCH] D42926: [CodeView] Initial support for emitting S_BLOCK32 symbols for lexical scopes

Zachary Turner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 5 12:00:25 PST 2018


zturner added a comment.

Very excited to see someone doing this.  We've been meaning to do it for some time but always get sidetracked on other things.

Did you confirm that when stepping through a program in the debugger that variables are correctly shown in the Autos window depending on the source line?



================
Comment at: llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp:361
 void CodeViewDebug::recordLocalVariable(LocalVariable &&Var,
-                                        const DILocation *InlinedAt) {
-  if (InlinedAt) {
+                                        LexicalScope *LS) {
+  if (const DILocation *InlinedAt = LS->getInlinedAt()) {
----------------
Looks like this can be marked `const`?


================
Comment at: llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp:2311-2314
+  OS.AddComment("PtrParent"); 
+  OS.EmitIntValue(0, 4);                                  // PtrParent 
+  OS.AddComment("PtrEnd"); 
+  OS.EmitIntValue(0, 4);                                  // PtrEnd 
----------------
Shouldn't we be emitting the actual values for `PtrParent` and `PtrEnd` here?


https://reviews.llvm.org/D42926





More information about the llvm-commits mailing list