[llvm-commits] CVS: llvm/lib/Target/X86/X86ISelLowering.cpp

Anton Korobeynikov asl at math.spbu.ru
Thu May 17 00:50:44 PDT 2007



Changes in directory llvm/lib/Target/X86:

X86ISelLowering.cpp updated: 1.401 -> 1.402
---
Log message:

Revert patch for PR1427: http://llvm.org/PR1427 . It breaks almost all vector tests.


---
Diffs of the changes:  (+1 -10)

 X86ISelLowering.cpp |   11 +----------
 1 files changed, 1 insertion(+), 10 deletions(-)


Index: llvm/lib/Target/X86/X86ISelLowering.cpp
diff -u llvm/lib/Target/X86/X86ISelLowering.cpp:1.401 llvm/lib/Target/X86/X86ISelLowering.cpp:1.402
--- llvm/lib/Target/X86/X86ISelLowering.cpp:1.401	Wed May 16 22:29:42 2007
+++ llvm/lib/Target/X86/X86ISelLowering.cpp	Thu May 17 02:50:14 2007
@@ -1614,13 +1614,6 @@
 static bool isSHUFPMask(const SDOperand *Elems, unsigned NumElems) {
   if (NumElems != 2 && NumElems != 4) return false;
 
-  // Ensure this is not an mmx shuffle.
-  if (NumElems == 4 && Elems[0].getValueType() == MVT::i16)
-    return false;
-  if (NumElems == 2 && Elems[0].getValueType() == MVT::i32)
-    return false;
-  
-  
   unsigned Half = NumElems / 2;
   for (unsigned i = 0; i < Half; ++i)
     if (!isUndefOrInRange(Elems[i], 0, NumElems))
@@ -2719,9 +2712,7 @@
     }
   }
 
-  if (NumElems == 4 && 
-      // Don't do this for MMX.
-      MVT::getSizeInBits(VT) != 64) {
+  if (NumElems == 4) {
     MVT::ValueType MaskVT = PermMask.getValueType();
     MVT::ValueType MaskEVT = MVT::getVectorBaseType(MaskVT);
     SmallVector<std::pair<int, int>, 8> Locs;






More information about the llvm-commits mailing list