llvm-project/llvm/test/Transforms/PhaseOrdering
Sanjay Patel b5fb26951a [InstCombine] reassociate FP diff of sums into sum of diffs
(a[0] + a[1] + a[2] + a[3]) - (b[0] + b[1] + b[2] +b[3]) -->
(a[0] - b[0]) + (a[1] - b[1]) + (a[2] - b[2]) + (a[3] - b[3])

This should be the last step in solving PR43953:
https://bugs.llvm.org/show_bug.cgi?id=43953

We started emitting reduction intrinsics with:
D80867/ rGe50059f6b6b3
So it's a relatively easy pattern match now to re-order those ops.
Also, I have not seen any complaints for the switch to intrinsics
yet, so I'll propose to remove the "experimental" tag from the
intrinsics soon.

Differential Revision: https://reviews.llvm.org/D81491
2020-06-14 09:09:03 -04:00
..
X86 [InstCombine] reassociate FP diff of sums into sum of diffs 2020-06-14 09:09:03 -04:00
2010-03-22-empty-baseclass.ll
PR6627.ll
basic.ll
bitfield-bittests.ll
gdce.ll
globalaa-retained.ll
inlining-alignment-assumptions.ll [InlineFunction] Disable emission of alignment assumptions by default 2020-04-30 23:12:54 +02:00
lifetime-sanitizer.ll Add PhaseOrdering/lifetime-sanitizer.ll tests 2019-08-27 00:18:28 +00:00
min-max-abs-cse.ll [EarlyCSE] avoid crashing when detecting min/max/abs patterns (PR41083) 2020-02-10 17:25:34 -05:00
minmax.ll [InstCombine] add tests for cmyk benchmark; NFC 2020-04-02 13:00:46 -04:00
reassociate-after-unroll.ll [InstCombine] (A + B) + B --> A + (B << 1) 2020-05-22 11:46:59 -04:00
rotate.ll
scev-custom-dl.ll Reland [DataLayout] Fix occurrences that size and range of pointers are assumed to be the same. 2019-12-13 14:30:21 +00:00
scev.ll
simplifycfg-options.ll Revert "Revert "As a follow-up to my initial mail to llvm-dev here's a first pass at the O1 described there."" 2019-11-26 20:28:52 -08:00
two-shifts-by-sext.ll Revert "Revert "As a follow-up to my initial mail to llvm-dev here's a first pass at the O1 described there."" 2019-11-26 20:28:52 -08:00
unsigned-multiply-overflow-check.ll [InstSimplify] Drop leftover "division-by-zero guard" around `@llvm.umul.with.overflow` inverted overflow bit 2019-08-29 12:48:04 +00:00
vector-trunc.ll [InstCombine] convert bitcast-shuffle to vector trunc 2020-04-05 09:48:02 -04:00