1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 20:23:11 +01:00
llvm-mirror/test/Analysis/LoopAccessAnalysis
Florian Hahn e93c4c3336 [SCEV] Retain AddExpr flags when subtracting a foldable constant.
Currently we drop wrapping flags for expressions like (A + C1)<flags> - C2.

But we can retain flags under certain conditions:

* Adding a smaller constant is NUW if the original AddExpr was NUW.

* Adding a constant with the same sign and small magnitude is NSW, if the
  original AddExpr was NSW.

This can improve results after using `SimplifyICmpOperands`, which may
subtract one in order to use stricter predicates, as is the case for
`isKnownPredicate`.

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D104319
2021-06-22 11:27:51 +01:00
..
backward-dep-different-types.ll
forward-loop-carried.ll
forward-loop-independent.ll
gep-induction-operand-typesize-warning.ll [SVE] Remove checks for warnings in scalable-vector tests. 2021-04-07 15:59:32 +01:00
independent-interleaved.ll
interleave-innermost.ll
memcheck-for-loop-invariant.ll
memcheck-ni.ll
memcheck-off-by-one-error.ll
memcheck-store-vs-alloc-size.ll
memcheck-wrapping-pointers.ll
multiple-strides-rt-memory-checks.ll
non-wrapping-pointer.ll
nullptr.ll
number-of-memchecks.ll
pointer-phis.ll Revert "[LAA] Support pointer phis in loop by analyzing each incoming pointer." 2021-05-28 10:33:52 +01:00
pointer-with-unknown-bounds.ll [LAA] Add tests with uncomputable BTCs. 2021-01-01 13:57:02 +00:00
pr31098.ll
resort-to-memchecks-only.ll
reverse-memcheck-bounds.ll [SCEV] Retain AddExpr flags when subtracting a foldable constant. 2021-06-22 11:27:51 +01:00
runtime-pointer-checking-insert-typesize.ll [SVE] Remove checks for warnings in scalable-vector tests. 2021-04-07 15:59:32 +01:00
safe-no-checks.ll
safe-with-dep-distance.ll
store-to-invariant-check1.ll
store-to-invariant-check2.ll
store-to-invariant-check3.ll
stride-access-dependence.ll
uncomputable-backedge-taken-count.ll [LAA] Add tests with uncomputable BTCs. 2021-01-01 13:57:02 +00:00
underlying-objects-1.ll
underlying-objects-2.ll [NFC] Add getUnderlyingObjects test 2021-06-21 16:36:50 -07:00
unsafe-and-rt-checks-convergent.ll
unsafe-and-rt-checks.ll
wrapping-pointer-ni.ll
wrapping-pointer-versioning.ll Split a test for ease of auto update 2021-06-21 11:02:26 -07:00