[all-commits] [llvm/llvm-project] d0858b: [DebugInfo][RemoveDIs] Maintain DPValues on skippe...
Jeremy Morse via All-commits
all-commits at lists.llvm.org
Wed Dec 6 09:25:47 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: d0858bffa11e418c257b2573acbf4a3901d5dcb1
https://github.com/llvm/llvm-project/commit/d0858bffa11e418c257b2573acbf4a3901d5dcb1
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2023-12-06 (Wed, 06 Dec 2023)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
A llvm/test/Transforms/CodeGenPrepare/debug-info-on-skipped-selects.ll
Log Message:
-----------
[DebugInfo][RemoveDIs] Maintain DPValues on skipped instrs in CGP (#74602)
It turns out that CodeGenPrepare will skip over consecutive select
instructions as it knows it can optimise them all at the same time. This
is unfortunate for the RemoveDIs project to remove intrinsic-based
debug-info, because that means debug-info attached to those skipped
instructions doesn't get seen by optimizeInst and so updated. Add code
to handle debug-info on those skipped instructions manually.
This code will also have been slower when it had dbg.values stuffed in
between instructions, but with RemoveDIs it'll go faster because the
dbg.values won't break up the select sequence.
More information about the All-commits
mailing list