1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
llvm-mirror/test/Transforms/LoadStoreVectorizer/X86
Slava Nikolaev 324eb2c007 LoadStoreVectorizer: support different operand orders in the add sequence match
First we refactor the code which does no wrapping add sequences
match: we need to allow different operand orders for
the key add instructions involved in the match.

Then we use the refactored code trying 4 variants of matching operands.

Originally the code relied on the fact that the matching operands
of the two last add instructions of memory index calculations
had the same LHS argument. But which operand is the same
in the two instructions is actually not essential, so now we allow
that to be any of LHS or RHS of each of the two instructions.
This increases the chances of vectorization to happen.

Reviewed By: volkan

Differential Revision: https://reviews.llvm.org/D103912
2021-06-10 16:31:35 -07:00
..
codegenprepare-produced-address-math.ll
compare-scev-by-complexity.ll
correct-order.ll
lit.local.cfg
load-width-inseltpoison.ll
load-width.ll
merge-tbaa.ll
non-byte-size.ll
preserve-order32.ll
preserve-order64.ll
subchain-interleaved.ll
vector-scalar.ll
vectorize-i8-nested-add-inseltpoison.ll
vectorize-i8-nested-add.ll LoadStoreVectorizer: support different operand orders in the add sequence match 2021-06-10 16:31:35 -07:00