[PATCH] D92578: [DebugInfo] Handle DBG_VALUES with multiple variable location operands in MIR

Stephen Tozer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 3 09:09:27 PST 2020


StephenTozer created this revision.
StephenTozer added reviewers: aprantl, djtodoro, vsk, dblaikie, probinson, dstenb.
StephenTozer added a project: debug-info.
Herald added subscribers: llvm-commits, tpr, hiraditya, jgravelle-google, sbc100, dschuff, qcolombet, MatzeB.
Herald added a project: LLVM.
StephenTozer requested review of this revision.
Herald added a subscriber: aheejin.

Another patch neede for the implementation of the variadic debug values change[0], this patch adds handling for multiple location operands in the MIR-passes, excluding the debug liveness passes and DWARF emission.

Apologies for this patch only going up now, it was accidentally excluded from the patch stack until now. The changes here are relatively simple compared to the IR, debug liveness, and DWARF patches; MachineSink has slightly larger changes than the rest, but most cases are simply replacing accesses of the first debug operand, i.e. `getDebugOperand(0)`, with an iteration over all debug operands.

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


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D92578

Files:
  llvm/lib/CodeGen/MachineSink.cpp
  llvm/lib/CodeGen/PrologEpilogInserter.cpp
  llvm/lib/CodeGen/RegisterCoalescer.cpp
  llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92578.309276.patch
Type: text/x-patch
Size: 14638 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201203/e39d190f/attachment.bin>


More information about the llvm-commits mailing list