Resurrect r235688
[oota-llvm.git] / lib / Transforms / Scalar / NaryReassociate.cpp
index fea7641126faa1de727869d9c0c8a9e244e7c379..7d3080dcd9bf424a916195fa08ec7a288398c00d 100644 (file)
@@ -181,7 +181,8 @@ bool NaryReassociate::doOneIteration(Function &F) {
        Node != GraphTraits<DominatorTree *>::nodes_end(DT); ++Node) {
     BasicBlock *BB = Node->getBlock();
     for (auto I = BB->begin(); I != BB->end(); ++I) {
-      if (I->getOpcode() == Instruction::Add) {
+      // Skip vector types which are not SCEVable.
+      if (I->getOpcode() == Instruction::Add && !I->getType()->isVectorTy()) {
         if (Instruction *NewI = tryReassociateAdd(I)) {
           Changed = true;
           SE->forgetValue(I);