Home
last modified time | relevance | path

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

1234567

/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DTypeSize.h300 class ElementCount
301 : public details::FixedOrScalableQuantity<ElementCount, unsigned> {
302 constexpr ElementCount(ScalarTy MinVal, bool Scalable) in ElementCount() function
305 constexpr ElementCount( in ElementCount() function
306 const FixedOrScalableQuantity<ElementCount, unsigned> &V) in ElementCount() argument
310 constexpr ElementCount() : FixedOrScalableQuantity() {} in ElementCount() function
312 static constexpr ElementCount getFixed(ScalarTy MinVal) { in getFixed()
313 return ElementCount(MinVal, false); in getFixed()
315 static constexpr ElementCount getScalable(ScalarTy MinVal) { in getScalable()
316 return ElementCount(MinVal, true); in getScalable()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlanHelpers.h47 Value *getRuntimeVF(IRBuilderBase &B, Type *Ty, ElementCount VF);
50 Value *createStepForVF(IRBuilderBase &B, Type *Ty, ElementCount VF,
73 const ElementCount Start;
76 ElementCount End;
82 VFRange(const ElementCount &Start, const ElementCount &End) in VFRange()
95 ElementCount> {
96 ElementCount VF;
99 iterator(ElementCount VF) : VF(VF) {} in iterator()
103 ElementCount operator*() const { return VF; }
152 static VPLane getLaneFromEnd(const ElementCount &VF, unsigned Offset) { in getLaneFromEnd()
[all …]
H A DLoopVectorizationPlanner.h345 ElementCount Width;
355 ElementCount MinProfitableTripCount;
357 VectorizationFactor(ElementCount Width, InstructionCost Cost, in VectorizationFactor()
363 return {ElementCount::getFixed(1), 0, 0}; in Disabled()
381 ElementCount FixedVF;
382 ElementCount ScalableVF;
385 : FixedVF(ElementCount::getFixed(0)), in FixedScalableVFPair()
386 ScalableVF(ElementCount::getScalable(0)) {} in FixedScalableVFPair()
387 FixedScalableVFPair(const ElementCount &Max) : FixedScalableVFPair() { in FixedScalableVFPair()
390 FixedScalableVFPair(const ElementCount &FixedVF, in FixedScalableVFPair()
[all …]
H A DLoopVectorize.cpp419 static ElementCount getSmallConstantTripCount(ScalarEvolution *SE, in getSmallConstantTripCount()
421 return ElementCount::getFixed(SE->getSmallConstantTripCount(L)); in getSmallConstantTripCount()
432 static std::optional<ElementCount>
442 return ElementCount::getFixed(*EstimatedTC); in getSmallBestKnownTC()
449 return ElementCount::getFixed(ExpectedTC); in getSmallBestKnownTC()
485 OptimizationRemarkEmitter *ORE, ElementCount VecWidth, in InnerLoopVectorizer()
486 ElementCount MinProfitableTripCount, in InnerLoopVectorizer()
536 Value *createIterationCountCheck(ElementCount VF, unsigned UF) const;
584 ElementCount VF;
586 ElementCount MinProfitableTripCount;
[all …]
H A DVPlanTransforms.h118 static void replicateByVF(VPlan &Plan, ElementCount VF);
122 static void optimizeForVFAndUF(VPlan &Plan, ElementCount BestVF,
239 static void narrowInterleaveGroups(VPlan &Plan, ElementCount VF,
254 addBranchWeightToMiddleTerminator(VPlan &Plan, ElementCount VF,
H A DVPlan.h343 virtual InstructionCost cost(ElementCount VF, VPCostContext &Ctx) = 0;
422 InstructionCost cost(ElementCount VF, VPCostContext &Ctx);
491 virtual InstructionCost computeCost(ElementCount VF,
1082 InstructionCost computeCost(ElementCount VF,
1185 InstructionCost computeCost(ElementCount VF, in computeCost()
1289 InstructionCost computeCost(ElementCount VF,
1383 InstructionCost computeCost(ElementCount VF,
1436 InstructionCost computeCost(ElementCount VF,
1509 InstructionCost computeCost(ElementCount VF,
1571 InstructionCost computeCost(ElementCount VF,
[all …]
H A DLoopVectorizationLegality.cpp156 getWidth() == ElementCount::getFixed(1) && getInterleave() == 1; in LoopVectorizeHints()
239 if (getWidth() == ElementCount::getFixed(1)) in vectorizeAnalysisPassName()
251 ElementCount EC = getWidth(); in allowReordering()
566 bool LoopVectorizationLegality::isUniform(Value *V, ElementCount VF) const { in isUniform()
600 ElementCount VF) const { in isUniformMemOp()
769 ElementCount WidestFixedVF, WidestScalableVF; in isTLIScalarize()
771 for (ElementCount VF = ElementCount::getFixed(2); in isTLIScalarize()
772 ElementCount::isKnownLE(VF, WidestFixedVF); VF *= 2) in isTLIScalarize()
774 for (ElementCount VF = ElementCount::getScalable(1); in isTLIScalarize()
775 ElementCount::isKnownLE(VF, WidestScalableVF); VF *= 2) in isTLIScalarize()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGenTypes/
H A DLowLevelType.h45 ElementCount::getFixed(0), SizeInBits, in scalar()
52 /*isScalar=*/true, ElementCount::getFixed(0), in token()
61 ElementCount::getFixed(0), SizeInBits, AddressSpace}; in pointer()
65 static constexpr LLT vector(ElementCount EC, unsigned ScalarSizeInBits) { in vector()
72 static constexpr LLT vector(ElementCount EC, LLT ScalarTy) { in vector()
103 return vector(ElementCount::getFixed(NumElements), ScalarSizeInBits); in fixed_vector()
109 return vector(ElementCount::getFixed(NumElements), ScalarTy); in fixed_vector()
116 return vector(ElementCount::getScalable(MinNumElements), ScalarSizeInBits); in scalable_vector()
122 return vector(ElementCount::getScalable(MinNumElements), ScalarTy); in scalable_vector()
125 static constexpr LLT scalarOrVector(ElementCount EC, LLT ScalarTy) { in scalarOrVector()
[all …]
H A DMachineValueType.h253 ElementCount NElts = getVectorElementCount(); in getPow2VectorType()
255 NElts = ElementCount::get(NewMinCount, NElts.isScalable()); in getPow2VectorType()
291 ElementCount getVectorElementCount() const { in getVectorElementCount()
292 return ElementCount::get(getVectorMinNumElements(), isScalableVector()); in getVectorElementCount()
502 static MVT getVectorVT(MVT VT, ElementCount EC) { in getVectorVT()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DInjectTLIMappings.cpp40 static void addVariantDeclaration(CallInst &CI, const ElementCount &VF, in addVariantDeclaration()
94 auto AddVariantDecl = [&](const ElementCount &VF, bool Predicate) { in addMappingsFromTLI()
109 ElementCount WidestFixedVF, WidestScalableVF; in addMappingsFromTLI()
113 for (ElementCount VF = ElementCount::getFixed(2); in addMappingsFromTLI()
114 ElementCount::isKnownLE(VF, WidestFixedVF); VF *= 2) in addMappingsFromTLI()
117 for (ElementCount VF = ElementCount::getScalable(2); in addMappingsFromTLI()
118 ElementCount::isKnownLE(VF, WidestScalableVF); VF *= 2) in addMappingsFromTLI()
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DVectorTypeUtils.h20 inline Type *toVectorTy(Type *Scalar, ElementCount EC) { in toVectorTy()
27 return toVectorTy(Scalar, ElementCount::getFixed(VF)); in toVectorTy()
34 LLVM_ABI Type *toVectorizedStructTy(StructType *StructTy, ElementCount EC);
55 inline Type *toVectorizedTy(Type *Ty, ElementCount EC) { in toVectorizedTy()
100 inline ElementCount getVectorizedTypeVF(Type *Ty) { in getVectorizedTypeVF()
H A DVFABIDemangler.h85 ElementCount VF; // Vectorization factor.
102 return VFShape::get(FTy, ElementCount::getFixed(1), in getScalarShape()
109 static VFShape get(const FunctionType *FTy, ElementCount EC, in get()
H A DDerivedTypes.h466 LLVM_ABI static VectorType *get(Type *ElementType, ElementCount EC);
471 ElementCount::get(NumElements, Scalable)); in get()
571 ElementCount EC = SizeTy->getElementCount() in getWithSizeAndScalar()
582 inline ElementCount getElementCount() const;
695 inline ElementCount VectorType::getElementCount() const { in getElementCount()
696 return ElementCount::get(ElementQuantity, isa<ScalableVectorType>(this)); in getElementCount()
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DVFABIDemangler.cpp304 static std::optional<ElementCount> getElementCountForTy(const VFISAKind ISA, in getElementCountForTy()
310 return ElementCount::getScalable(2); in getElementCountForTy()
312 return ElementCount::getScalable(4); in getElementCountForTy()
314 return ElementCount::getScalable(8); in getElementCountForTy()
316 return ElementCount::getScalable(16); in getElementCountForTy()
323 static std::optional<ElementCount>
327 ElementCount MinEC = in getScalableECFromSignature()
328 ElementCount::getScalable(std::numeric_limits<unsigned int>::max()); in getScalableECFromSignature()
335 std::optional<ElementCount> EC = getElementCountForTy(ISA, PTy); in getScalableECFromSignature()
342 if (ElementCount::isKnownLT(*EC, MinEC)) in getScalableECFromSignature()
[all …]
H A DVectorTypeUtils.cpp16 Type *llvm::toVectorizedStructTy(StructType *StructTy, ElementCount EC) { in toVectorizedStructTy()
50 ElementCount VF = cast<VectorType>(ElemTys.front())->getElementCount(); in isVectorizedStructTy()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DTargetLibraryInfo.h46 ElementCount VectorizationFactor;
54 ElementCount VectorizationFactor, bool Masked, StringRef VABIPrefix, in VecDesc()
62 ElementCount getVectorizationFactor() const { return VectorizationFactor; } in getVectorizationFactor()
206 bool isFunctionVectorizable(StringRef F, const ElementCount &VF) const { in isFunctionVectorizable()
217 LLVM_ABI StringRef getVectorizedFunction(StringRef F, const ElementCount &VF,
224 getVectorMappingInfo(StringRef F, const ElementCount &VF, bool Masked) const;
271 LLVM_ABI void getWidestVF(StringRef ScalarF, ElementCount &FixedVF,
272 ElementCount &Scalable) const;
397 bool isFunctionVectorizable(StringRef F, const ElementCount &VF) const { in isFunctionVectorizable()
403 StringRef getVectorizedFunction(StringRef F, const ElementCount &VF,
[all …]
H A DTensorSpec.h85 size_t getElementCount() const { return ElementCount; } in getElementCount()
89 size_t getTotalTensorBufferSize() const { return ElementCount * ElementSize; } in getTotalTensorBufferSize()
111 size_t ElementCount = 0; variable
/freebsd/sys/contrib/dev/acpica/components/dispatcher/
H A Ddspkginit.c205 UINT32 ElementCount, in AcpiDsBuildInternalPackageObj() argument
269 ((ACPI_SIZE) ElementCount + 1) * sizeof (void *)); in AcpiDsBuildInternalPackageObj()
277 ObjDesc->Package.Count = ElementCount; in AcpiDsBuildInternalPackageObj()
307 for (i = 0; Arg && (i < ElementCount); i++) in AcpiDsBuildInternalPackageObj()
435 i, ElementCount)); in AcpiDsBuildInternalPackageObj()
437 else if (i < ElementCount) in AcpiDsBuildInternalPackageObj()
449 ACPI_GET_FUNCTION_NAME, i, ElementCount)); in AcpiDsBuildInternalPackageObj()
/freebsd/contrib/llvm-project/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.cpp141 const ElementCount OldElts = OldTy.isVector() ? in mutationIsSane()
142 OldTy.getElementCount() : ElementCount::getFixed(1); in mutationIsSane()
146 if (ElementCount::isKnownGE(NewTy.getElementCount(), OldElts)) in mutationIsSane()
150 if (ElementCount::isKnownLE(NewTy.getElementCount(), OldElts)) in mutationIsSane()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DValueTypes.h84 static EVT getVectorVT(LLVMContext &Context, EVT VT, ElementCount EC) { in getVectorVT()
345 ElementCount getVectorElementCount() const { in getVectorElementCount()
474 ElementCount NElts = getVectorElementCount(); in getPow2VectorType()
476 NElts = ElementCount::get(NewMinCount, NElts.isScalable()); in getPow2VectorType()
541 ElementCount EC);
558 LLVM_ABI ElementCount getExtendedVectorElementCount() const LLVM_READONLY;
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DVFABIDemangling.cpp
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/
H A DLoopVectorizationLegality.h137 ElementCount getWidth() const { in getWidth()
138 return ElementCount::get(Width.Value, (ScalableForceKind)Scalable.Value == in getWidth()
378 bool isUniform(Value *V, ElementCount VF) const;
383 bool isUniformMemOp(Instruction &I, ElementCount VF) const;
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/
H A DUndefResultChecker.cpp53 DefinedOrUnknownSVal ElementCount = getDynamicElementCount( in isArrayIndexOutOfBounds() local
56 std::tie(StInBound, StOutBound) = state->assumeInBoundDual(Idx, ElementCount); in isArrayIndexOutOfBounds()
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64TargetTransformInfo.h166 unsigned getMaxNumElements(ElementCount VF) const { in getMaxNumElements()
173 unsigned getMaxInterleaveFactor(ElementCount VF) const override;
339 ElementCount NumElements) const override { in isLegalBroadcastLoad()
386 ElementCount VF, TTI::PartialReductionExtendKind OpAExtend,
434 ElementCount VF) const override;

1234567