aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp
diff options
context:
space:
mode:
authorRoman Lebedev <lebedev.ri@gmail.com>2022-02-17 12:07:17 +0300
committerRoman Lebedev <lebedev.ri@gmail.com>2022-02-17 12:13:55 +0300
commit371fcb720e15906e8c63600253afcb806b9b10d0 (patch)
treee3e0db411cd0356a35535a2cd30d54e2fdcdbaa1 /llvm/lib/CodeGen/LocalStackSlotAllocation.cpp
parentd4a53f3bfa3e29d412e571765a8568bee7da5483 (diff)
downloadllvm-371fcb720e15906e8c63600253afcb806b9b10d0.zip
llvm-371fcb720e15906e8c63600253afcb806b9b10d0.tar.gz
llvm-371fcb720e15906e8c63600253afcb806b9b10d0.tar.bz2
[SimplifyCFG][PhaseOrdering] Defer lowering switch into an integer range comparison and branch until after at least the IPSCCP
That transformation is lossy, as discussed in https://github.com/llvm/llvm-project/issues/53853 and https://github.com/rust-lang/rust/issues/85133#issuecomment-904185574 This is an alternative to D119839, which would add a limited IPSCCP into SimplifyCFG. Unlike lowering switch to lookup, we still want this transformation to happen relatively early, but after giving a chance for the things like CVP to do their thing. It seems like deferring it just until the IPSCCP is enough for the tests at hand, but perhaps we need to be more aggressive and disable it until CVP. Fixes https://github.com/llvm/llvm-project/issues/53853 Refs. https://github.com/rust-lang/rust/issues/85133 Reviewed By: nikic Differential Revision: https://reviews.llvm.org/D119854
Diffstat (limited to 'llvm/lib/CodeGen/LocalStackSlotAllocation.cpp')
0 files changed, 0 insertions, 0 deletions