1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 13:02:52 +02:00
llvm-mirror/test/Transforms/IRCE
Sanjoy Das 45937543a4 [IRCE] Add a missing invariant check
Currently IRCE relies on the loops it transforms to be (semantically) of
the form:

  for (i = START; i < END; i++)
    ...

or

  for (i = START; i > END; i--)
    ...

However, we were not verifying the presence of the START < END entry
check (i.e. check before the first iteration).  We were only verifying
that the backedge was guarded by (i + 1) < END.

Usually this would work "fine" since (especially in Java) most loops do
actually have the START < END check, but of course that is not
guaranteed.

llvm-svn: 294375
2017-02-07 23:59:07 +00:00
..
add-metadata-pre-post-loops.ll [IRCE] Avoid loop optimizations on pre and post loops 2016-12-13 21:05:21 +00:00
bad-loop-structure.ll [IRCE] Add a missing invariant check 2017-02-07 23:59:07 +00:00
bug-loop-varying-upper-limit.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
bug-mismatched-types.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
conjunctive-checks.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
decrementing-loop.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
low-becount.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
multiple-access-no-preloop.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
not-likely-taken.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
only-lower-check.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
only-upper-check.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
single-access-no-preloop.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
single-access-with-preloop.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
skip-profitability-checks.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
unhandled.ll [IRCE] Create llvm::Loop instances for cloned out loops 2016-08-14 01:04:46 +00:00
with-parent-loops.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00