1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test/Transforms/IRCE
Denis Antrushin 29770e2ab6 [IRCE] Use SCEVExpander to modify loop bound
IRCE pass checks that it can calculate loop bounds by checking
SCEV availability at loop entry. However it is possible that loop
bound SCEV is loop invariant, but instruction used to compute it
resides within loop. In such case adjusting loop bound in preheader
using IRBuilder leads to malformed SSA.
Use SCEVExpander instead to generate proper instructions.

Reviewed-by: mkazantsev
Differential Revision: https://reviews.llvm.org/D73496
2020-02-06 12:44:43 +03:00
..
add-metadata-pre-post-loops.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
bad_expander.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
bad-loop-structure.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
bug-loop-varying-upper-limit.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
bug-mismatched-types.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
clamp.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
conjunctive-checks.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
correct-loop-info.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
decrementing-loop.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
empty_ranges.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
eq_ne.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
low-becount.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
multiple-access-no-preloop.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
non_known_positive_end.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
non-loop-invariant-rhs-instr.ll [IRCE] Use SCEVExpander to modify loop bound 2020-02-06 12:44:43 +03:00
not-likely-taken.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
only-lower-check.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
only-upper-check.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
optimistic_scev.ll Revert "Temporarily Revert "Add basic loop fusion pass."" 2019-04-17 04:52:47 +00:00
pre_post_loops.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
range_intersect_miscompile.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
ranges_of_different_types.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
rc-negative-bound.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
single-access-no-preloop.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
single-access-with-preloop.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
skip-profitability-checks.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
stride_more_than_1.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
unhandled.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
unsigned_comparisons_ugt.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
unsigned_comparisons_ult.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
variable-loop-bounds.ll Revert "Temporarily Revert "Add basic loop fusion pass."" 2019-04-17 04:52:47 +00:00
wide_indvar.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00
with-parent-loops.ll [IRCE] Make IRCE a Function pass. 2020-02-05 09:22:41 -08:00