[Mlir-commits] [mlir] eab73df - [SVE] Change return type of getNumElements to unsigned
Christopher Tetreault
llvmlistbot at llvm.org
Mon Apr 13 16:24:37 PDT 2020
Author: Christopher Tetreault
Date: 2020-04-13T16:24:18-07:00
New Revision: eab73dfed9bc32e9a3c8508c03ae5dfc622534c8
URL: https://github.com/llvm/llvm-project/commit/eab73dfed9bc32e9a3c8508c03ae5dfc622534c8
DIFF: https://github.com/llvm/llvm-project/commit/eab73dfed9bc32e9a3c8508c03ae5dfc622534c8.diff
LOG: [SVE] Change return type of getNumElements to unsigned
Reviewers: efriedma, sdesmalen, craig.topper, dexonsmith
Reviewed By: efriedma, sdesmalen
Subscribers: tschuett, hiraditya, rkruppe, psnobl, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, aartbik, liufengdb, Joonsoo, grosul1, frgossen, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D77763
Added:
Modified:
llvm/include/llvm/CodeGen/BasicTTIImpl.h
llvm/include/llvm/IR/DerivedTypes.h
llvm/lib/IR/Function.cpp
mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
Removed:
################################################################################
diff --git a/llvm/include/llvm/CodeGen/BasicTTIImpl.h b/llvm/include/llvm/CodeGen/BasicTTIImpl.h
index df4f6429dcb8..4822abc46300 100644
--- a/llvm/include/llvm/CodeGen/BasicTTIImpl.h
+++ b/llvm/include/llvm/CodeGen/BasicTTIImpl.h
@@ -1214,8 +1214,8 @@ class BasicTTIImplBase : public TargetTransformInfoImplCRTPBase<T> {
if (RetTy->isVectorTy()) {
if (ScalarizationCostPassed == std::numeric_limits<unsigned>::max())
ScalarizationCost = getScalarizationOverhead(RetTy, true, false);
- ScalarCalls = std::max(
- ScalarCalls, (unsigned)cast<VectorType>(RetTy)->getNumElements());
+ ScalarCalls =
+ std::max(ScalarCalls, cast<VectorType>(RetTy)->getNumElements());
ScalarRetTy = RetTy->getScalarType();
}
SmallVector<Type *, 4> ScalarTys;
@@ -1224,8 +1224,8 @@ class BasicTTIImplBase : public TargetTransformInfoImplCRTPBase<T> {
if (Ty->isVectorTy()) {
if (ScalarizationCostPassed == std::numeric_limits<unsigned>::max())
ScalarizationCost += getScalarizationOverhead(Ty, false, true);
- ScalarCalls = std::max(
- ScalarCalls, (unsigned)cast<VectorType>(Ty)->getNumElements());
+ ScalarCalls =
+ std::max(ScalarCalls, cast<VectorType>(Ty)->getNumElements());
Ty = Ty->getScalarType();
}
ScalarTys.push_back(Ty);
@@ -1572,8 +1572,7 @@ class BasicTTIImplBase : public TargetTransformInfoImplCRTPBase<T> {
if (ScalarizationCostPassed == std::numeric_limits<unsigned>::max())
ScalarizationCost += getScalarizationOverhead(Tys[i], false, true);
ScalarCalls =
- std::max(ScalarCalls,
- (unsigned)cast<VectorType>(Tys[i])->getNumElements());
+ std::max(ScalarCalls, cast<VectorType>(Tys[i])->getNumElements());
}
}
diff --git a/llvm/include/llvm/IR/DerivedTypes.h b/llvm/include/llvm/IR/DerivedTypes.h
index 1ce5cedf8522..92017448fe0d 100644
--- a/llvm/include/llvm/IR/DerivedTypes.h
+++ b/llvm/include/llvm/IR/DerivedTypes.h
@@ -420,7 +420,7 @@ class VectorType : public Type {
/// For scalable vectors, this will return the minimum number of elements
/// in the vector.
- uint64_t getNumElements() const { return NumElements; }
+ unsigned getNumElements() const { return NumElements; }
Type *getElementType() const { return ContainedType; }
/// This static method is the primary way to construct an VectorType.
diff --git a/llvm/lib/IR/Function.cpp b/llvm/lib/IR/Function.cpp
index 7791d26e0379..ec390b36b3a9 100644
--- a/llvm/lib/IR/Function.cpp
+++ b/llvm/lib/IR/Function.cpp
@@ -1075,8 +1075,7 @@ static Type *DecodeFixedType(ArrayRef<Intrinsic::IITDescriptor> &Infos,
return Tys[D.getOverloadArgNumber()];
case IITDescriptor::ScalableVecArgument: {
auto *Ty = cast<VectorType>(DecodeFixedType(Infos, Tys, Context));
- return VectorType::get(Ty->getElementType(),
- {(unsigned)Ty->getNumElements(), true});
+ return VectorType::get(Ty->getElementType(), {Ty->getNumElements(), true});
}
}
llvm_unreachable("unhandled");
diff --git a/mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp b/mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
index acc84f9e9a46..abb3fd74dfa9 100644
--- a/mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
+++ b/mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
@@ -1802,10 +1802,10 @@ struct RsqrtOpLowering : public ConvertOpToLLVMPattern<RsqrtOp> {
op, operands, typeConverter,
[&](LLVM::LLVMType llvmVectorTy, ValueRange operands) {
auto splatAttr = SplatElementsAttr::get(
- mlir::VectorType::get({(unsigned)cast<llvm::VectorType>(
- llvmVectorTy.getUnderlyingType())
- ->getNumElements()},
- floatType),
+ mlir::VectorType::get(
+ {cast<llvm::VectorType>(llvmVectorTy.getUnderlyingType())
+ ->getNumElements()},
+ floatType),
floatOne);
auto one =
rewriter.create<LLVM::ConstantOp>(loc, llvmVectorTy, splatAttr);
More information about the Mlir-commits
mailing list