Changes in directory llvm/lib/Target/X86:
X86ISelLowering.cpp updated: 1.402 -> 1.403 --- Log message: This is the correct fix for PR1427: http://llvm.org/PR1427 . This fixes mmx-shuffle.ll and doesn't cause other regressions. --- Diffs of the changes: (+5 -2) X86ISelLowering.cpp | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) Index: llvm/lib/Target/X86/X86ISelLowering.cpp diff -u llvm/lib/Target/X86/X86ISelLowering.cpp:1.402 llvm/lib/Target/X86/X86ISelLowering.cpp:1.403 --- llvm/lib/Target/X86/X86ISelLowering.cpp:1.402 Thu May 17 02:50:14 2007 +++ llvm/lib/Target/X86/X86ISelLowering.cpp Thu May 17 12:13:13 2007 @@ -2675,7 +2675,8 @@ return Op; } - if (X86::isSHUFPMask(PermMask.Val)) + if (X86::isSHUFPMask(PermMask.Val) && + MVT::getSizeInBits(VT) != 64) // Don't do this for MMX. return Op; // Handle v8i16 shuffle high / low shuffle node pair. @@ -2712,7 +2713,9 @@ } } - if (NumElems == 4) { + if (NumElems == 4 && + // Don't do this for MMX. + MVT::getSizeInBits(VT) != 64) { MVT::ValueType MaskVT = PermMask.getValueType(); MVT::ValueType MaskEVT = MVT::getVectorBaseType(MaskVT); SmallVector<std::pair<int, int>, 8> Locs; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits