[PATCH] D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics
Jeremy Morse via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Nov 25 12:00:08 PST 2019
jmorse updated this revision to Diff 230949.
jmorse added a comment.
Herald added subscribers: hiraditya, jgravelle-google, sbc100.
Great news everyone, it's placeDbgValues time again!
I've hopefully fixed a bunch of performance regressions with what were the dependencies of this fix, the remainder of which are based around D70676 <https://reviews.llvm.org/D70676>, after which this should be alright to land. Just to set expectations, as discussed above this patch reduces variable location coverage, but increases the quality by not artificially reordering assignments.
One significant new addition in this revision is the WebAssemblyDebugValueManager logic that was discussed a while back. Instead of only looking at DBG_VALUEs immediately after a vreg def, this examines DBG_VALUEs in the whole local block and collects those that refer to the same value number as the defining instruction. Happily this means no WASM test changes at all.
In the meantime, DW_AT_location-reference.ll has grown some modifications -- since last time it's because of LiveDebugValues improvements preserving locations for longer, which are currently masked by placeDbgValues reordering the assignments.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58453/new/
https://reviews.llvm.org/D58453
Files:
llvm/include/llvm/CodeGen/MachineInstr.h
llvm/lib/CodeGen/CodeGenPrepare.cpp
llvm/lib/CodeGen/MachineInstr.cpp
llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.cpp
llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
llvm/test/DebugInfo/COFF/register-variables.ll
llvm/test/DebugInfo/NVPTX/debug-info.ll
llvm/test/DebugInfo/X86/DW_AT_location-reference.ll
llvm/test/DebugInfo/X86/PR37234.ll
llvm/test/tools/llvm-locstats/locstats.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D58453.230949.patch
Type: text/x-patch
Size: 14759 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191125/eac58b73/attachment-0001.bin>
More information about the llvm-commits
mailing list