diff --git a/polly/lib/CodeGen/BlockGenerators.cpp b/polly/lib/CodeGen/BlockGenerators.cpp --- a/polly/lib/CodeGen/BlockGenerators.cpp +++ b/polly/lib/CodeGen/BlockGenerators.cpp @@ -1025,7 +1025,7 @@ int Width = getVectorWidth(); - Value *Vector = UndefValue::get(VectorType::get(Old->getType(), Width)); + Value *Vector = UndefValue::get(FixedVectorType::get(Old->getType(), Width)); for (int Lane = 0; Lane < Width; Lane++) Vector = Builder.CreateInsertElement( @@ -1042,9 +1042,9 @@ assert(PointerTy && "PointerType expected"); Type *ScalarType = PointerTy->getElementType(); - VectorType *VectorType = VectorType::get(ScalarType, Width); + auto *FVTy = FixedVectorType::get(ScalarType, Width); - return PointerType::getUnqual(VectorType); + return PointerType::getUnqual(FVTy); } Value *VectorBlockGenerator::generateStrideOneLoad( @@ -1093,7 +1093,7 @@ ScalarLoad->setAlignment(Align(8)); Constant *SplatVector = Constant::getNullValue( - VectorType::get(Builder.getInt32Ty(), getVectorWidth())); + FixedVectorType::get(Builder.getInt32Ty(), getVectorWidth())); Value *VectorLoad = Builder.CreateShuffleVector( ScalarLoad, ScalarLoad, SplatVector, Load->getName() + "_p_splat"); @@ -1105,10 +1105,10 @@ __isl_keep isl_id_to_ast_expr *NewAccesses) { int VectorWidth = getVectorWidth(); auto *Pointer = Load->getPointerOperand(); - VectorType *VectorType = VectorType::get( + auto *FVTy = FixedVectorType::get( dyn_cast(Pointer->getType())->getElementType(), VectorWidth); - Value *Vector = UndefValue::get(VectorType); + Value *Vector = UndefValue::get(FVTy); for (int i = 0; i < VectorWidth; i++) { Value *NewPointer = generateLocationAccessed(Stmt, Load, ScalarMaps[i], @@ -1167,7 +1167,7 @@ assert(isa(Inst) && "Can not generate vector code for instruction"); const CastInst *Cast = dyn_cast(Inst); - VectorType *DestType = VectorType::get(Inst->getType(), VectorWidth); + auto *DestType = FixedVectorType::get(Inst->getType(), VectorWidth); VectorMap[Inst] = Builder.CreateCast(Cast->getOpcode(), NewOperand, DestType); } @@ -1277,8 +1277,8 @@ return; // Make the result available as vector value. - VectorType *VectorType = VectorType::get(Inst->getType(), VectorWidth); - Value *Vector = UndefValue::get(VectorType); + auto *FVTy = FixedVectorType::get(Inst->getType(), VectorWidth); + Value *Vector = UndefValue::get(FVTy); for (int i = 0; i < VectorWidth; i++) Vector = Builder.CreateInsertElement(Vector, ScalarMaps[i][Inst], @@ -1344,7 +1344,7 @@ Address->getName() + "_p_vec_p"); auto *Val = Builder.CreateLoad(VectorPtr, Address->getName() + ".reload"); Constant *SplatVector = Constant::getNullValue( - VectorType::get(Builder.getInt32Ty(), getVectorWidth())); + FixedVectorType::get(Builder.getInt32Ty(), getVectorWidth())); Value *VectorVal = Builder.CreateShuffleVector( Val, Val, SplatVector, Address->getName() + "_p_splat");