[PATCH] D80341: [SVE] Eliminate calls to default-false VectorType::get() from polly
Christopher Tetreault via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu May 28 13:45:39 PDT 2020
ctetreau updated this revision to Diff 267019.
ctetreau added a comment.
rebase
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D80341/new/
https://reviews.llvm.org/D80341
Files:
polly/lib/CodeGen/BlockGenerators.cpp
Index: polly/lib/CodeGen/BlockGenerators.cpp
===================================================================
--- polly/lib/CodeGen/BlockGenerators.cpp
+++ 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,7 +1042,7 @@
assert(PointerTy && "PointerType expected");
Type *ScalarType = PointerTy->getElementType();
- VectorType *VectorType = VectorType::get(ScalarType, Width);
+ auto *VectorType = FixedVectorType::get(ScalarType, Width);
return PointerType::getUnqual(VectorType);
}
@@ -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,7 +1105,7 @@
__isl_keep isl_id_to_ast_expr *NewAccesses) {
int VectorWidth = getVectorWidth();
auto *Pointer = Load->getPointerOperand();
- VectorType *VectorType = VectorType::get(
+ auto *VectorType = FixedVectorType::get(
dyn_cast<PointerType>(Pointer->getType())->getElementType(), VectorWidth);
Value *Vector = UndefValue::get(VectorType);
@@ -1167,7 +1167,7 @@
assert(isa<CastInst>(Inst) && "Can not generate vector code for instruction");
const CastInst *Cast = dyn_cast<CastInst>(Inst);
- VectorType *DestType = VectorType::get(Inst->getType(), VectorWidth);
+ auto *DestType = FixedVectorType::get(Inst->getType(), VectorWidth);
VectorMap[Inst] = Builder.CreateCast(Cast->getOpcode(), NewOperand, DestType);
}
@@ -1277,7 +1277,7 @@
return;
// Make the result available as vector value.
- VectorType *VectorType = VectorType::get(Inst->getType(), VectorWidth);
+ auto *VectorType = FixedVectorType::get(Inst->getType(), VectorWidth);
Value *Vector = UndefValue::get(VectorType);
for (int i = 0; i < VectorWidth; i++)
@@ -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");
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D80341.267019.patch
Type: text/x-patch
Size: 2773 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200528/eb440a88/attachment.bin>
More information about the llvm-commits
mailing list