Index: lib/CodeGen/TargetLoweringBase.cpp =================================================================== --- lib/CodeGen/TargetLoweringBase.cpp +++ lib/CodeGen/TargetLoweringBase.cpp @@ -1179,8 +1179,11 @@ if (NVT == VT) { // Type is already a power of 2. The default action is to split. TransformToType[i] = MVT::Other; - if (PreferredAction == TypeScalarizeVector) + if ( PreferredAction == TypeScalarizeVector + || VT.getVectorNumElements() == 1) + { ValueTypeActions.setTypeAction(VT, TypeScalarizeVector); + } else ValueTypeActions.setTypeAction(VT, TypeSplitVector); } else {