[PATCH] D88406: [LiveDebugValues][InstrRef][2/2] Emit entry value variable locations

Djordje Todorovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 28 05:39:19 PDT 2020


djtodoro added a comment.

Hi @jmorse, cool, nice improvement! It turns out that this value-based value tracking pass makes it simple as well as effective!

My overall impression regarding the `instr-based-ldv` is very positive, but I haven't had much time to take a look into all the details regarding the implementation (but I have started looking into it). So I have a problem reading of some of these statements, e.g.:

> DBG_VALUE instructions that re-assign the same value to a variable are no longer a problem, because we can "see through" to the value being assigned rather than just the location.

Can you please explain what part of the implementation of the `instr-based-ldv` gives us ability to "see through" to the value assignments?



================
Comment at: llvm/test/DebugInfo/MIR/X86/kill-entry-value-after-diamond-bbs.mir:26
+# VARLOCLDV-NOT: DBG_VALUE $esi, $noreg, ![[ARG_B]], !DIExpression(DW_OP_LLVM_entry_value, 1)
+# INSTRREFLDV: DBG_VALUE $esi, $noreg, ![[ARG_B]], !DIExpression(DW_OP_LLVM_entry_value, 1)
+#
----------------
if we can "see through", it does seem reasonable to me.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D88406



More information about the llvm-commits mailing list