[PATCH] D37932: [DebugInfo] Correctly coalesce DBG_VALUEs that mix direct and indirect values
Danila Malyutin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 20 04:22:03 PDT 2019
danilaml added inline comments.
Herald added a project: LLVM.
================
Comment at: llvm/trunk/lib/CodeGen/LiveDebugVariables.cpp:195
+ // FIXME: The fragment should be part of the equivalence class, but not
+ // other things in the expression like stack values.
+ return Var == Variable && Expr == Expression && dl->getInlinedAt() == IA;
----------------
What does that mean/imply? I've come across a case/bug that would be solved by not emitting same DBG_VALUE that differ only in that one has !DIExpression() and the other !DIExpression(DW_OP_LLVM_fragment, 0, <reg_size_in_bits>). Are those supposed to be the equivalent and one can safely emit a singe !DIExpression() instead? What caused this to remain as FIXME in the first place?
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D37932/new/
https://reviews.llvm.org/D37932
More information about the llvm-commits
mailing list