| /llvm-project-15.0.7/llvm/unittests/CodeGen/ |
| H A D | LowLevelTypeTest.cpp | 57 {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 D | ScalableVectorMVTsTest.cpp | 52 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 D | LoopVectorizationPlanner.h | 190 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 D | LoopVectorize.cpp | 663 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 D | LoopVectorizationLegality.cpp | 148 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 D | LowLevelTypeImpl.h | 44 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 D | TypeSize.h | 398 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 D | VectorFunctionABITest.cpp | 46 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 D | VectorUtilsTest.cpp | 97 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 D | InjectTLIMappings.cpp | 42 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 D | TargetLibraryInfo.h | 32 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 D | TensorSpec.h | 74 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 D | VectorUtils.h | 83 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 D | VectorTypesTest.cpp | 67 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 D | ReturnPointerRangeChecker.cpp | 59 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 D | ArrayBoundChecker.cpp | 58 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 D | VectorBuilder.h | 47 ElementCount StaticVectorLength; 65 StaticVectorLength(ElementCount::getFixed(0)) {} in Builder() 82 StaticVectorLength = ElementCount::getFixed(NewFixedVL); in setStaticVL()
|
| H A D | DerivedTypes.h | 425 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 D | Intrinsics.h | 154 ElementCount Vector_Width; 210 Result.Vector_Width = ElementCount::get(Width, IsScalable); in getVector()
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/GlobalISel/ |
| H A D | LegalizeMutations.cpp | 51 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 D | LegalizerInfo.cpp | 132 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 D | ValueTypes.h | 83 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 D | VFABIDemangling.cpp | 290 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 D | ReplaceWithVeclib.cpp | 106 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 D | DynamicExtent.cpp | 52 SVal ElementCount = in getDynamicElementCount() local 55 return ElementCount.castAs<DefinedOrUnknownSVal>(); in getDynamicElementCount()
|