[x86] Teach the X86 backend to DAG-combine SSE2 shuffles that are
authorChandler Carruth <chandlerc@gmail.com>
Fri, 27 Jun 2014 11:27:52 +0000 (11:27 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Fri, 27 Jun 2014 11:27:52 +0000 (11:27 +0000)
commitf91161874e516621aa9c1734391c5bd01d9d4e6d
tree381f38921bfed2368d2af4906532490caf5ed058
parent050d187bc8405bcbb6367a1b22fe253254aff11b
[x86] Teach the X86 backend to DAG-combine SSE2 shuffles that are
trivially redundant.

This fixes several cases in the new vector shuffle lowering algorithm
which would generate redundant shuffle instructions for the sake of
simplicity.

I'm also deleting a testcase which was somewhat ridiculous. It was
checking for a bug in 2007 about incorrectly transforming shuffles by
looking for the string "-86" in the output of a pretty substantial
function. This test case doesn't seem to have any value at this point.

Differential Revision: http://reviews.llvm.org/D4240

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211889 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/2007-09-18-ShuffleXformBug.ll [deleted file]
test/CodeGen/X86/vector-shuffle-128-v8.ll