[PATCH] D38006: [InstCombine] remove extract-of-select vector transform

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 18 16:00:55 PDT 2017


spatel created this revision.
Herald added subscribers: wdng, mcrosier.

The transform to convert an extract-of-a-select-of-vectors was added at:
https://reviews.llvm.org/rL194013

I think most of the motivating cases in that patch (all the tests that still show improvements, but are not changing with this patch) are now handled by other combines.

The diffs we see after removing this transform cause us to avoid increasing the instruction count, so I don't think we want to be doing those transforms as canonicalizations.

The motivation for not turning a vector-select-of-vectors into a scalar operation is shown in PR33301:
https://bugs.llvm.org/show_bug.cgi?id=33301
...in those cases, we'll get vector ops with this patch rather than the vector/scalar mix that we currently see.


https://reviews.llvm.org/D38006

Files:
  lib/Transforms/InstCombine/InstCombineVectorOps.cpp
  test/Transforms/InstCombine/select-extractelement.ll
  test/Transforms/LoopVectorize/minmax_reduction.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D38006.115739.patch
Type: text/x-patch
Size: 13607 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170918/e9a32bd0/attachment.bin>


More information about the llvm-commits mailing list