[PowerPC] Fix invalid lxvdsx optimization (PR25157)
authorBill Schmidt <wschmidt@linux.vnet.ibm.com>
Wed, 14 Oct 2015 20:45:00 +0000 (20:45 +0000)
committerBill Schmidt <wschmidt@linux.vnet.ibm.com>
Wed, 14 Oct 2015 20:45:00 +0000 (20:45 +0000)
commit01107b486b63f30903fc6a67578cba1e02f0d0ac
treef45d60926306aae46e9f8bb9ba0955c40194e22e
parentf7b2acbdbab88727d5983eced28544641f9ee568
[PowerPC] Fix invalid lxvdsx optimization (PR25157)

PR25157 identifies a bug where a load plus a vector shuffle is
incorrectly converted into an LXVDSX instruction.  That optimization
is only valid if the load is of a doubleword, and in the noted case,
it was not.  This corrects that problem.

Joint patch with Eric Schweitz, who provided the bugpoint-reduced test
case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@250324 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/PowerPC/PPCISelDAGToDAG.cpp
test/CodeGen/PowerPC/pr25157.ll [new file with mode: 0644]