[PATCH] D83495: [DebugInfo] Add DWARF emission for DBG_VALUE_LIST

Orlando Cazalet-Hyams via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 10 02:47:22 PDT 2020


Orlando added a comment.

Hey, just noticed a couple of comments to remove from the tests.



================
Comment at: llvm/test/DebugInfo/X86/dbg_value_list_clobbers.mir:41
+  bb.0.entry:
+    ; XXX NOTE that I've added an explicit DW_OP_stack_value to the expressions. REMOVE THESE when the
+    ;          implied operator is added to the expressions automatically.
----------------
You can remove this XXX note.


================
Comment at: llvm/test/DebugInfo/X86/dbg_value_list_clobbers.mir:67
+    DBG_VALUE_LIST !12, !DIExpression(DW_OP_LLVM_arg, 0, DW_OP_LLVM_arg, 1, DW_OP_plus, DW_OP_stack_value), $eax, $ecx, debug-location !15
+    ; XXX THIS CHECK FAILS
+    ; CHECK-NEXT: [{{.*}}): DW_OP_breg0 RAX+0, DW_OP_breg2 RCX+0, DW_OP_plus, DW_OP_stack_value
----------------
I assume this no longer fails?


================
Comment at: llvm/test/DebugInfo/X86/dbg_value_list_emission.mir:63
+    ; (3) Check that multiple references to one reg arg works.
+    ;     XXX What was the consensus on this - are we allowing it?
+    DBG_VALUE_LIST !25, !DIExpression(DW_OP_LLVM_arg, 0, DW_OP_LLVM_arg, 0, DW_OP_minus, DW_OP_stack_value), $eax, debug-location !15
----------------
Can remove this XXX note. As you mentioned offline, having multiple references to the same arg (i.e. multiple `DW_OP_LLVM_arg, 0` in the expr) is never a problem.

Though, slightly tangentially, I'm still a little unclear on what the final decision was on how to handle duplicate register arg operands. In D82363 you said 'always treat DBG_VALUE_LISTs as potentially having them'. Please could you explain a little further? (i.e. is it an error state, do we need to add extra checks when dealing with DBG_VALUE_LISTs etc).


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D83495/new/

https://reviews.llvm.org/D83495





More information about the llvm-commits mailing list