summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/SLPVectorizer/X86/cmp_commute.ll
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Temporarily Revert "Add basic loop fusion pass.""Eric Christopher2019-04-171-0/+283
| | | | | | | | The reversion apparently deleted the test/Transforms directory. Will be re-reverting again. llvm-svn: 358552
* Temporarily Revert "Add basic loop fusion pass."Eric Christopher2019-04-171-283/+0
| | | | | | | | As it's causing some bot failures (and per request from kbarton). This reverts commit r358543/ab70da07286e618016e78247e4a24fcb84077fda. llvm-svn: 358546
* [SLP] Add support for commutative icmp/fcmp predicatesSimon Pilgrim2019-03-291-80/+16
| | | | | | | | | | For the cases where the icmp/fcmp predicate is commutative, use reorderInputsAccordingToOpcode to collect and commute the operands. This requires a helper to recognise commutativity in both general Instruction and CmpInstr types - the CmpInst::isCommutative doesn't overload the Instruction::isCommutative method for reasons I'm not clear on (maybe because its based on predicate not opcode?!?). Differential Revision: https://reviews.llvm.org/D59992 llvm-svn: 357266
* [SLP] Add support for swapping icmp/fcmp predicates to permit vectorizationSimon Pilgrim2019-03-291-60/+12
| | | | | | | | We should be able to match elements with the swapped predicate as well - as long as we commute the source operands. Differential Revision: https://reviews.llvm.org/D59956 llvm-svn: 357243
* [SLP][X86] Add tests showing failure to commute icmp/fcmp by swapping predicateSimon Pilgrim2019-03-281-0/+196
| | | | | | By swapping icmp/fcmp predicates we can commute their operands to improve vectorization llvm-svn: 357204
* [SLP][X86] Add tests showing failure to commute icmp/fcmp operandsSimon Pilgrim2019-03-281-0/+199
Some predicates are fully commutative - we should be able to easily commute their operands to improve vectorization llvm-svn: 357202
OpenPOWER on IntegriCloud