[PATCH] D88589: [DebugInfo] Handle dbg.values with multiple variable location operands in ISel
Stephen Tozer via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 10 09:46:29 PST 2020
StephenTozer added inline comments.
================
Comment at: llvm/include/llvm/CodeGen/SelectionDAG.h:1546
+ /// Creates a SDDbgValue node from a list of locations.
+ SDDbgValue *getDbgValueList(DIVariable *Var, DIExpression *Expr,
----------------
aprantl wrote:
> It would be nice if we can find a less overloaded term than "locations". Perhaps just call them straight `DW_OP_LLVM_args`?
"Location Operands" is one more-specific term that has been used, although in this case we could also just say "from a list of SDDbgOperands", or "from a list of machine locations".
================
Comment at: llvm/include/llvm/CodeGen/SelectionDAG.h:1499
+ ArrayRef<SDNode *> Dependencies, bool IsIndirect,
+ const DebugLoc &DL, unsigned O, bool IsVariadic);
+
----------------
aprantl wrote:
> is IsVariadic the same as `Locs.size() > 1`?
No; IsVariadic refers to whether or not this debug value uses a list of operands, even if it's a list with 1 element, so that we always map `dbg.value(metadata <value>, ...)` to `DBG_VALUE`, and `dbg.value(metadata !DIArgList(<value>), ...)` to `DBG_VALUE_LIST`.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D88589/new/
https://reviews.llvm.org/D88589
More information about the llvm-commits
mailing list