[PATCH] D88585: [DebugInfo] Support representation of multiple location operands in ISel's SDDbgValue

Stephen Tozer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 30 09:02:07 PDT 2020


StephenTozer created this revision.
StephenTozer added reviewers: aprantl, vsk, djtodoro, probinson.
StephenTozer added a project: debug-info.
Herald added subscribers: llvm-commits, hiraditya.
Herald added a project: LLVM.
StephenTozer requested review of this revision.

Continuing further with the work from the initial RFC[0], this patch is the first step to supporting variadic debug values at Instruction Selection. This patch is mostly just a change to the class that represents debug values during ISel, `SDDbgValue`; part of its functionality has been split off into a new class, `SDDbgOperand`.

The new class `SDDbgOperand` represents a single value, corresponding to an SSA value or MachineOperand in the IR and MIR respectively. Members of `SDDbgValue` that related to that value, such as the `Kind` enum, now live there. `SDDbgValue` now contains an array of `SDDbgOperand` instead, allowing it to hold more than one of these values. Outside of this split, this patch changes very little; all other changes are simply updates to use the new interface to prevent compiler errors. The followup patches will introduce the actual behaviour changes and tests for this new behaviour.

[0] http://lists.llvm.org/pipermail/llvm-dev/2020-February/139376.html


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D88585

Files:
  llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
  llvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h
  llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D88585.295309.patch
Type: text/x-patch
Size: 17702 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200930/5c1c2861/attachment.bin>


More information about the llvm-commits mailing list