[PATCH] D140412: [DebugInfo] Unify location selection logic for values in InstrRefBasedImpl

Stephen Tozer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 20 09:07:48 PST 2022


StephenTozer added inline comments.


================
Comment at: llvm/test/DebugInfo/MIR/X86/live-debug-values-restore.mir:382
 # CHECK-LABEL: bb.2.if.end:
+# CHECK:       DBG_VALUE $rbx, $noreg, ![[QVAR]], !DIExpression(DW_OP_LLVM_fragment, 32, 32)
 # CHECK:       DBG_VALUE $rdi, $noreg, ![[QVAR]], !DIExpression(DW_OP_LLVM_fragment, 0, 32)
----------------
Note that this test change is caused by the fact that previously, due to `loadInLocs` preferring registers to spill slots, both of the expected register `DBG_VALUE`s would be emitted at the start of the block. Since `loadInLocs` prefers spill slots as-of this patch, the fragment `(0, 32)` now starts as a spill slot and gets transferred to a register after the kill near the start of the block. This does not affect the substance of the test, as the important part is checking that the register debug values have the correct fragment information, which they still do.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D140412



More information about the llvm-commits mailing list