1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/test/Transforms/LoopDeletion
Max Kazantsev 974341bf3b [LoopDeletion] Handle switch in proving that loop exits on first iteration
Added check for switch-terminated blocks in loops.
Now if a block is terminated with a switch, we try to find out which of the
cases is taken on 1st iteration and mark corresponding edge from the block
to the case successor as live.

Patch by Dmitry Makogon!

Differential Revision: https://reviews.llvm.org/D105688
Reviewed By: nikic, mkazantsev
2021-07-09 18:03:34 +07:00
..
2007-07-23-InfiniteLoop.ll
2008-05-06-Phi.ll
2011-06-21-phioperands.ll
2017-07-11-incremental-dt.ll
assume.ll
basic-remark.ll
crashbc.ll
dcetest.ll
diundef.ll
eval_first_iteration.ll [LoopDeletion] Handle switch in proving that loop exits on first iteration 2021-07-09 18:03:34 +07:00
invalidation.ll
irreducible-cfg.ll [Test] Add one more loop deletion irreducible CFG test 2021-06-01 11:11:15 +07:00
loops-with-irreducible-subloops.ll [LoopDeletion] Check for irreducible cycles when deleting loops. 2021-06-15 12:56:12 +01:00
multiple-exit-conditions.ll
multiple-exits.ll
mustprogress.ll
no-exit-blocks.ll
noop-loops-with-subloops.ll [LoopDeletion] Consider infinite loops alive, unless mustprogress. 2021-06-01 13:07:36 +01:00
pr49967.ll
simplify-then-delete.ll
two-predecessors.ll [LoopDeletion] Require loop to have a predecessor when executing 1st iteration symbolically 2021-06-22 12:20:55 +07:00
unreachable-loops.ll [LoopDeletion] Break backedge if we can prove that the loop is exited on 1st iteration (try 3) 2021-06-18 17:31:57 +07:00
update-scev.ll
use-in-unreachable.ll
zero-btc.ll [LoopDeletion] Break backedge if we can prove that the loop is exited on 1st iteration (try 3) 2021-06-18 17:31:57 +07:00