Home
last modified time | relevance | path

Searched refs:ElementCount (Results 1 – 25 of 124) sorted by relevance

12345

/llvm-project-15.0.7/llvm/unittests/CodeGen/
H A DLowLevelTypeTest.cpp57 {ElementCount::getFixed(2), ElementCount::getFixed(3), in TEST()
58 ElementCount::getFixed(4), ElementCount::getFixed(32), in TEST()
59 ElementCount::getFixed(0xff), ElementCount::getScalable(2), in TEST()
60 ElementCount::getScalable(3), ElementCount::getScalable(4), in TEST()
61 ElementCount::getScalable(32), ElementCount::getScalable(0xff)}) { in TEST()
250 for (ElementCount EC : in TEST()
251 {ElementCount::getFixed(2), ElementCount::getFixed(3), in TEST()
252 ElementCount::getFixed(4), ElementCount::getFixed(256), in TEST()
253 ElementCount::getFixed(65535), ElementCount::getScalable(2), in TEST()
254 ElementCount::getScalable(3), ElementCount::getScalable(4), in TEST()
[all …]
H A DScalableVectorMVTsTest.cpp52 auto EltCnt = ElementCount::getScalable(2); in TEST()
57 EVT Vnx2i64 = EVT::getVectorVT(Ctx, MVT::i64, ElementCount::getScalable(2)); in TEST()
70 EVT Vnx2f64 = EVT::getVectorVT(Ctx, MVT::f64, ElementCount::getScalable(2)); in TEST()
81 EVT V4f64 = EVT::getVectorVT(Ctx, MVT::f64, ElementCount::getFixed(4)); in TEST()
95 VectorType::get(Int64Ty, ElementCount::getScalable(8)); in TEST()
115 EVT Enxv4f64 = EVT::getVectorVT(Ctx, MVT::f64, ElementCount::getScalable(4)); in TEST()
/llvm-project-15.0.7/llvm/lib/Transforms/Vectorize/
H A DLoopVectorizationPlanner.h190 ElementCount Width;
199 ElementCount MinProfitableTripCount;
207 return {ElementCount::getFixed(1), 0, 0}; in Disabled()
225 ElementCount FixedVF;
226 ElementCount ScalableVF;
229 : FixedVF(ElementCount::getFixed(0)), in FixedScalableVFPair()
234 FixedScalableVFPair(const ElementCount &FixedVF, in FixedScalableVFPair()
306 VPlan &getBestPlanFor(ElementCount VF) const;
323 bool hasPlanWithVF(ElementCount VF) const { in hasPlanWithVF()
342 void buildVPlans(ElementCount MinVF, ElementCount MaxVF);
[all …]
H A DLoopVectorize.cpp663 ElementCount VF;
758 ElementCount MainLoopVF = ElementCount::getFixed(0);
760 ElementCount EpilogueVF = ElementCount::getFixed(0);
1119 bool operator()(const ElementCount &LHS, const ElementCount &RHS) const { in operator ()()
1416 ElementCount VF = ElementCount::getFixed(1)) { in isLegalGatherOrScatter()
1471 ElementCount VF = ElementCount::getFixed(1));
1478 ElementCount VF = ElementCount::getFixed(1));
4802 ElementCount
5121 auto MinVF = [](const ElementCount &LHS, const ElementCount &RHS) { in getMaximizedVFForTarget()
7947 for (ElementCount VF = MinVF; ElementCount::isKnownLT(VF, MaxVFPlusOne);) { in buildVPlans()
[all …]
H A DLoopVectorizationLegality.cpp148 getWidth() == ElementCount::getFixed(1) && getInterleave() == 1; in LoopVectorizeHints()
232 if (getWidth() == ElementCount::getFixed(1)) in vectorizeAnalysisPassName()
244 ElementCount EC = getWidth(); in allowReordering()
630 ElementCount WidestFixedVF, WidestScalableVF; in isTLIScalarize()
632 for (ElementCount VF = ElementCount::getFixed(2); in isTLIScalarize()
633 ElementCount::isKnownLE(VF, WidestFixedVF); VF *= 2) in isTLIScalarize()
635 for (ElementCount VF = ElementCount::getScalable(1); in isTLIScalarize()
636 ElementCount::isKnownLE(VF, WidestScalableVF); VF *= 2) in isTLIScalarize()
/llvm-project-15.0.7/llvm/include/llvm/Support/
H A DLowLevelTypeImpl.h44 ElementCount::getFixed(0), SizeInBits, in scalar()
52 ElementCount::getFixed(0), SizeInBits, AddressSpace}; in pointer()
56 static LLT vector(ElementCount EC, unsigned ScalarSizeInBits) { in vector()
63 static LLT vector(ElementCount EC, LLT ScalarTy) { in vector()
81 return vector(ElementCount::getFixed(NumElements), ScalarTy); in fixed_vector()
94 return vector(ElementCount::getScalable(MinNumElements), ScalarTy); in scalable_vector()
97 static LLT scalarOrVector(ElementCount EC, LLT ScalarTy) { in scalarOrVector()
101 static LLT scalarOrVector(ElementCount EC, uint64_t ScalarSize) { in scalarOrVector()
143 ElementCount getElementCount() const { in getElementCount()
145 return ElementCount::get(IsPointer in getElementCount()
[all …]
H A DTypeSize.h398 class ElementCount;
399 template <> struct LinearPolyBaseTypeTraits<ElementCount> {
404 class ElementCount : public LinearPolySize<ElementCount> {
408 ElementCount(const LinearPolySize<ElementCount> &V) : LinearPolySize(V) {}
521 template <> struct DenseMapInfo<ElementCount, void> {
522 static inline ElementCount getEmptyKey() {
523 return ElementCount::getScalable(~0U);
525 static inline ElementCount getTombstoneKey() {
526 return ElementCount::getFixed(~0U - 1);
528 static unsigned getHashValue(const ElementCount &EltCnt) {
[all …]
/llvm-project-15.0.7/llvm/unittests/Analysis/
H A DVectorFunctionABITest.cpp46 ElementCount &VF = Info.Shape.VF;
177 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
196 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
207 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
232 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
329 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
433 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
444 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
455 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
466 EXPECT_EQ(VF, ElementCount::getFixed(2)); in TEST_F()
[all …]
H A DVectorUtilsTest.cpp97 IRB.CreateVectorSplat(ElementCount::getScalable(5), ScalarC); in TEST_F()
501 VFShape Shape = {/*VF*/ ElementCount::getFixed(2), /*Parameters*/ {}};
505 void buildShape(ElementCount VF, bool HasGlobalPred) { in buildShape()
517 buildShape(/*VF*/ ElementCount::getFixed(2), /*HasGlobalPred*/ false); in TEST_F()
518 Expected = {/*VF*/ ElementCount::getFixed(2), /*Parameters*/ { in TEST_F()
525 buildShape(/*VF*/ ElementCount::getFixed(4), /*HasGlobalPred*/ true); in TEST_F()
526 Expected = {/*VF*/ ElementCount::getFixed(4), /*Parameters*/ { in TEST_F()
535 Expected = {/*VF*/ ElementCount::getScalable(16), /*Parameters*/ { in TEST_F()
555 buildShape(/*VF*/ ElementCount::getFixed(1), /*HasGlobalPred*/ true); in TEST_F()
565 Expected = {/*VF*/ ElementCount::getFixed(2), /*Parameters*/ { in TEST_F()
[all …]
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DInjectTLIMappings.cpp42 static void addVariantDeclaration(CallInst &CI, const ElementCount &VF, in addVariantDeclaration()
92 auto AddVariantDecl = [&](const ElementCount &VF) { in addMappingsFromTLI()
109 ElementCount WidestFixedVF, WidestScalableVF; in addMappingsFromTLI()
112 for (ElementCount VF = ElementCount::getFixed(2); in addMappingsFromTLI()
113 ElementCount::isKnownLE(VF, WidestFixedVF); VF *= 2) in addMappingsFromTLI()
/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DTargetLibraryInfo.h32 ElementCount VectorizationFactor;
160 bool isFunctionVectorizable(StringRef F, const ElementCount &VF) const { in isFunctionVectorizable()
170 StringRef getVectorizedFunction(StringRef F, const ElementCount &VF) const;
208 void getWidestVF(StringRef ScalarF, ElementCount &FixedVF,
209 ElementCount &Scalable) const;
331 bool isFunctionVectorizable(StringRef F, const ElementCount &VF) const { in isFunctionVectorizable()
337 StringRef getVectorizedFunction(StringRef F, const ElementCount &VF) const { in getVectorizedFunction()
428 void getWidestVF(StringRef ScalarF, ElementCount &FixedVF, in getWidestVF()
429 ElementCount &ScalableVF) const { in getWidestVF()
H A DTensorSpec.h74 size_t getElementCount() const { return ElementCount; } in getElementCount()
78 size_t getTotalTensorBufferSize() const { return ElementCount * ElementSize; } in getTotalTensorBufferSize()
94 size_t ElementCount = 0; variable
H A DVectorUtils.h83 ElementCount VF; // Vectorization factor.
100 return VFShape::get(CI, ElementCount::getFixed(1), in getScalarShape()
108 static VFShape get(const CallInst &CI, ElementCount EC, bool HasGlobalPred) { in get()
187 unsigned numArgs, ElementCount VF);
299 inline Type *ToVectorTy(Type *Scalar, ElementCount EC) { in ToVectorTy()
306 return ToVectorTy(Scalar, ElementCount::getFixed(VF)); in ToVectorTy()
/llvm-project-15.0.7/llvm/unittests/IR/
H A DVectorTypesTest.cpp67 VectorType::get(Int16Ty, ElementCount::getFixed(8))); in TEST()
72 auto EltCnt = ElementCount::getFixed(4); in TEST()
166 auto EltCnt = ElementCount::getScalable(4); in TEST()
233 VectorType::get(Int16Ty, ElementCount::getScalable(4)), in TEST()
234 VectorType::get(Int16Ty, ElementCount::getFixed(4)), in TEST()
235 VectorType::get(Int16Ty, ElementCount::getScalable(2)), in TEST()
236 VectorType::get(Int16Ty, ElementCount::getFixed(2)), in TEST()
237 VectorType::get(Int32Ty, ElementCount::getScalable(4)), in TEST()
238 VectorType::get(Int32Ty, ElementCount::getFixed(4)), in TEST()
240 VectorType::get(Int32Ty, ElementCount::getFixed(2))}; in TEST()
[all …]
/llvm-project-15.0.7/clang/lib/StaticAnalyzer/Checkers/
H A DReturnPointerRangeChecker.cpp59 DefinedOrUnknownSVal ElementCount = getDynamicElementCount( in checkPreStmt() local
64 if (Idx == ElementCount) in checkPreStmt()
68 std::tie(StInBound, StOutBound) = state->assumeInBoundDual(Idx, ElementCount); in checkPreStmt()
88 const auto ConcreteElementCount = ElementCount.getAs<nonloc::ConcreteInt>(); in checkPreStmt()
H A DArrayBoundChecker.cpp58 DefinedOrUnknownSVal ElementCount = getDynamicElementCount( in checkLocation() local
62 std::tie(StInBound, StOutBound) = state->assumeInBoundDual(Idx, ElementCount); in checkLocation()
/llvm-project-15.0.7/llvm/include/llvm/IR/
H A DVectorBuilder.h47 ElementCount StaticVectorLength;
65 StaticVectorLength(ElementCount::getFixed(0)) {} in Builder()
82 StaticVectorLength = ElementCount::getFixed(NewFixedVL); in setStaticVL()
H A DDerivedTypes.h425 static VectorType *get(Type *ElementType, ElementCount EC);
430 ElementCount::get(NumElements, Scalable)); in get()
515 inline ElementCount getElementCount() const;
627 inline ElementCount VectorType::getElementCount() const { in getElementCount()
628 return ElementCount::get(ElementQuantity, isa<ScalableVectorType>(this)); in getElementCount()
H A DIntrinsics.h154 ElementCount Vector_Width;
210 Result.Vector_Width = ElementCount::get(Width, IsScalable); in getVector()
/llvm-project-15.0.7/llvm/lib/CodeGen/GlobalISel/
H A DLegalizeMutations.cpp51 ElementCount NewEltCount = in changeElementCountTo()
52 NewTy.isVector() ? NewTy.getElementCount() : ElementCount::getFixed(1); in changeElementCountTo()
61 ElementCount NewEltCount = NewEltTy.isVector() ? NewEltTy.getElementCount() in changeElementCountTo()
62 : ElementCount::getFixed(1); in changeElementCountTo()
H A DLegalizerInfo.cpp132 const ElementCount OldElts = OldTy.isVector() ? in mutationIsSane()
133 OldTy.getElementCount() : ElementCount::getFixed(1); in mutationIsSane()
137 if (ElementCount::isKnownGE(NewTy.getElementCount(), OldElts)) in mutationIsSane()
141 if (ElementCount::isKnownLE(NewTy.getElementCount(), OldElts)) in mutationIsSane()
/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DValueTypes.h83 static EVT getVectorVT(LLVMContext &Context, EVT VT, ElementCount EC) { in getVectorVT()
322 ElementCount getVectorElementCount() const { in getVectorElementCount()
446 ElementCount NElts = getVectorElementCount(); in getPow2VectorType()
448 NElts = ElementCount::get(NewMinCount, NElts.isScalable()); in getPow2VectorType()
498 ElementCount EC);
515 ElementCount getExtendedVectorElementCount() const LLVM_READONLY;
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DVFABIDemangling.cpp290 const ElementCount EC = VecTys[0]->getElementCount(); in verifyAllVectorsHaveSameWidth()
301 ElementCount getECFromSignature(FunctionType *Signature) { in getECFromSignature()
311 return ElementCount::getFixed(/*Min=*/1); in getECFromSignature()
442 const ElementCount EC = getECFromSignature(F->getFunctionType()); in tryDemangleForVFABI()
454 const VFShape Shape({ElementCount::get(VF, IsScalable), Parameters}); in tryDemangleForVFABI()
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DReplaceWithVeclib.cpp106 ElementCount VF = ElementCount::getFixed(0); in replaceWithCallToVeclib()
123 ElementCount NumElements = VectorArgTy->getElementCount(); in replaceWithCallToVeclib()
/llvm-project-15.0.7/clang/lib/StaticAnalyzer/Core/
H A DDynamicExtent.cpp52 SVal ElementCount = in getDynamicElementCount() local
55 return ElementCount.castAs<DefinedOrUnknownSVal>(); in getDynamicElementCount()

12345