Revert r158454: Allow SROA to look at a vector type... Its breaking the vectorise...
[oota-llvm.git] / lib / Transforms / Scalar / ScalarReplAggregates.cpp
index a6c3a5e3e942291e7461d609e9a0cf247e6f54cb..113397fc11b7858a6fb48841be4dfb82c1c5d4d9 100644 (file)
@@ -1764,12 +1764,6 @@ bool SROA::TypeHasComponent(Type *T, uint64_t Offset, uint64_t Size) {
     if (Offset >= AT->getNumElements() * EltSize)
       return false;
     Offset %= EltSize;
-  } else if (VectorType *VT = dyn_cast<VectorType>(T)) {
-    EltTy = VT->getElementType();
-    EltSize = TD->getTypeAllocSize(EltTy);
-    if (Offset >= VT->getNumElements() * EltSize)
-      return false;
-    Offset %= EltSize;
   } else {
     return false;
   }
@@ -1937,16 +1931,9 @@ uint64_t SROA::FindElementAndOffset(Type *&T, uint64_t &Offset,
     Offset -= Layout->getElementOffset(Idx);
     IdxTy = Type::getInt32Ty(T->getContext());
     return Idx;
-  } else if (ArrayType *AT = dyn_cast<ArrayType>(T)) {
-    T = AT->getElementType();
-    uint64_t EltSize = TD->getTypeAllocSize(T);
-    Idx = Offset / EltSize;
-    Offset -= Idx * EltSize;
-    IdxTy = Type::getInt64Ty(T->getContext());
-    return Idx;
   }
-  VectorType *VT = cast<VectorType>(T);
-  T = VT->getElementType();
+  ArrayType *AT = cast<ArrayType>(T);
+  T = AT->getElementType();
   uint64_t EltSize = TD->getTypeAllocSize(T);
   Idx = Offset / EltSize;
   Offset -= Idx * EltSize;