[x86] Run most of the rest of the shuffle combining over non-128-bit
authorChandler Carruth <chandlerc@gmail.com>
Fri, 27 Feb 2015 12:13:14 +0000 (12:13 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Fri, 27 Feb 2015 12:13:14 +0000 (12:13 +0000)
commitc4179ffed3d046c30824ce3807780fa509883e2e
treeec723d6d2001ce18a88f3629af968b5e817eef1e
parent2d58cc5f1bfa05f29f6b696fe4bd834c78504e83
[x86] Run most of the rest of the shuffle combining over non-128-bit
vectors. This lets us fix the rest of the v16 lowering problems when
pshufb is clearly better.

We might still be able to improve some of the lowerings by enabling the
other combine-based rewriting to fire for non-128-bit vectors, but this
at least should remove any regressions from using the fancy v16i16
lowering strategy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230753 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/vector-shuffle-256-v16.ll
test/CodeGen/X86/vector-shuffle-256-v32.ll