| /openbsd-src/gnu/llvm/llvm/lib/Transforms/Vectorize/ |
| H A D | LoopVectorizationPlanner.h | 190 ElementCount Width; 200 ElementCount MinProfitableTripCount; 202 VectorizationFactor(ElementCount Width, InstructionCost Cost, in VectorizationFactor() 208 return {ElementCount::getFixed(1), 0, 0}; in Disabled() 226 ElementCount FixedVF; 227 ElementCount ScalableVF; 230 : FixedVF(ElementCount::getFixed(0)), in FixedScalableVFPair() 231 ScalableVF(ElementCount::getScalable(0)) {} in FixedScalableVFPair() 232 FixedScalableVFPair(const ElementCount &Max) : FixedScalableVFPair() { in FixedScalableVFPair() 235 FixedScalableVFPair(const ElementCount &FixedVF, in FixedScalableVFPair() [all …]
|
| H A D | LoopVectorize.cpp | 451 OptimizationRemarkEmitter *ORE, ElementCount VecWidth, in InnerLoopVectorizer() 452 ElementCount MinProfitableTripCount, in InnerLoopVectorizer() 675 ElementCount VF; 677 ElementCount MinProfitableTripCount; 758 ElementCount::getFixed(1), in InnerLoopUnroller() 759 ElementCount::getFixed(1), UnrollFactor, LVL, CM, in InnerLoopUnroller() 770 ElementCount MainLoopVF = ElementCount::getFixed(0); 772 ElementCount EpilogueVF = ElementCount::getFixed(0); 781 EpilogueLoopVectorizationInfo(ElementCount MVF, unsigned MUF, in EpilogueLoopVectorizationInfo() 782 ElementCount EVF, unsigned EUF) in EpilogueLoopVectorizationInfo() [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() 641 ElementCount WidestFixedVF, WidestScalableVF; in isTLIScalarize() 643 for (ElementCount VF = ElementCount::getFixed(2); in isTLIScalarize() 644 ElementCount::isKnownLE(VF, WidestFixedVF); VF *= 2) in isTLIScalarize() 646 for (ElementCount VF = ElementCount::getScalable(1); in isTLIScalarize() 647 ElementCount::isKnownLE(VF, WidestScalableVF); VF *= 2) in isTLIScalarize()
|
| H A D | VPlan.h | 73 Value *getRuntimeVF(IRBuilderBase &B, Type *Ty, ElementCount VF); 76 Value *createStepForVF(IRBuilderBase &B, Type *Ty, ElementCount VF, 86 const ElementCount Start; 89 ElementCount End; 95 VFRange(const ElementCount &Start, const ElementCount &End) in VFRange() 139 static VPLane getLastLaneForVF(const ElementCount &VF) { in getLastLaneForVF() 160 Value *getAsRuntimeExpr(IRBuilderBase &Builder, const ElementCount &VF) const; 169 unsigned mapToCacheIndex(const ElementCount &VF) const { in mapToCacheIndex() 182 static unsigned getNumCachedLanes(const ElementCount &VF) { in getNumCachedLanes() 207 VPTransformState(ElementCount VF, unsigned UF, LoopInfo *LI, in VPTransformState() [all …]
|
| H A D | VPlanTransforms.h | 76 static void optimizeForVFAndUF(VPlan &Plan, ElementCount BestVF,
|
| /openbsd-src/gnu/llvm/llvm/include/llvm/Support/ |
| H A D | TypeSize.h | 279 class ElementCount 280 : public details::FixedOrScalableQuantity<ElementCount, unsigned> { 281 constexpr ElementCount(ScalarTy MinVal, bool Scalable) in ElementCount() function 284 constexpr ElementCount( in ElementCount() function 285 const FixedOrScalableQuantity<ElementCount, unsigned> &V) in ElementCount() argument 289 constexpr ElementCount() : FixedOrScalableQuantity() {} in ElementCount() function 291 static constexpr ElementCount getFixed(ScalarTy MinVal) { in getFixed() 292 return ElementCount(MinVal, false); in getFixed() 294 static constexpr ElementCount getScalable(ScalarTy MinVal) { in getScalable() 295 return ElementCount(MinVal, true); in getScalable() [all …]
|
| H A D | LowLevelTypeImpl.h | 44 ElementCount::getFixed(0), SizeInBits, in scalar() 52 ElementCount::getFixed(0), SizeInBits, AddressSpace}; in pointer() 56 static constexpr LLT vector(ElementCount EC, unsigned ScalarSizeInBits) { in vector() 63 static constexpr LLT vector(ElementCount EC, LLT ScalarTy) { in vector() 78 return vector(ElementCount::getFixed(NumElements), ScalarSizeInBits); in fixed_vector() 84 return vector(ElementCount::getFixed(NumElements), ScalarTy); in fixed_vector() 91 return vector(ElementCount::getScalable(MinNumElements), ScalarSizeInBits); in scalable_vector() 97 return vector(ElementCount::getScalable(MinNumElements), ScalarTy); in scalable_vector() 100 static constexpr LLT scalarOrVector(ElementCount EC, LLT ScalarTy) { in scalarOrVector() 104 static constexpr LLT scalarOrVector(ElementCount EC, uint64_t ScalarSize) { in scalarOrVector() [all …]
|
| /openbsd-src/gnu/llvm/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()
|
| /openbsd-src/gnu/llvm/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | ReturnPointerRangeChecker.cpp | 63 DefinedOrUnknownSVal ElementCount = getDynamicElementCount( in checkPreStmt() local 68 if (Idx == ElementCount) in checkPreStmt() 72 std::tie(StInBound, StOutBound) = state->assumeInBoundDual(Idx, ElementCount); in checkPreStmt() 92 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()
|
| H A D | UndefResultChecker.cpp | 54 DefinedOrUnknownSVal ElementCount = getDynamicElementCount( in isArrayIndexOutOfBounds() local 57 std::tie(StInBound, StOutBound) = state->assumeInBoundDual(Idx, ElementCount); in isArrayIndexOutOfBounds()
|
| /openbsd-src/gnu/llvm/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 | 149 ElementCount Vector_Width; 205 Result.Vector_Width = ElementCount::get(Width, IsScalable); in getVector()
|
| /openbsd-src/gnu/llvm/llvm/include/llvm/Analysis/ |
| H A D | TargetLibraryInfo.h | 33 ElementCount VectorizationFactor; 163 bool isFunctionVectorizable(StringRef F, const ElementCount &VF) const { in isFunctionVectorizable() 173 StringRef getVectorizedFunction(StringRef F, const ElementCount &VF) const; 220 void getWidestVF(StringRef ScalarF, ElementCount &FixedVF, 221 ElementCount &Scalable) const; 343 bool isFunctionVectorizable(StringRef F, const ElementCount &VF) const { in isFunctionVectorizable() 349 StringRef getVectorizedFunction(StringRef F, const ElementCount &VF) const { in getVectorizedFunction() 525 void getWidestVF(StringRef ScalarF, ElementCount &FixedVF, in getWidestVF() 526 ElementCount &ScalableVF) const { in getWidestVF()
|
| H A D | TensorSpec.h | 76 size_t getElementCount() const { return ElementCount; } in getElementCount() 80 size_t getTotalTensorBufferSize() const { return ElementCount * ElementSize; } in getTotalTensorBufferSize() 102 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() 188 unsigned numArgs, ElementCount VF); 300 inline Type *ToVectorTy(Type *Scalar, ElementCount EC) { in ToVectorTy() 307 return ToVectorTy(Scalar, ElementCount::getFixed(VF)); in ToVectorTy()
|
| /openbsd-src/gnu/llvm/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()
|
| /openbsd-src/gnu/llvm/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;
|
| /openbsd-src/gnu/llvm/llvm/lib/Analysis/ |
| H A D | VFABIDemangling.cpp | 291 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()
|
| /openbsd-src/gnu/llvm/llvm/lib/CodeGen/ |
| H A D | ReplaceWithVeclib.cpp | 106 ElementCount VF = ElementCount::getFixed(0); in replaceWithCallToVeclib() 123 ElementCount NumElements = VectorArgTy->getElementCount(); in replaceWithCallToVeclib()
|
| /openbsd-src/gnu/llvm/clang/lib/StaticAnalyzer/Core/ |
| H A D | DynamicExtent.cpp | 53 SVal ElementCount = in getDynamicElementCount() local 56 return ElementCount.castAs<DefinedOrUnknownSVal>(); in getDynamicElementCount()
|
| /openbsd-src/gnu/llvm/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/ |
| H A D | MPIChecker.cpp | 164 DefinedOrUnknownSVal ElementCount = getDynamicElementCount( in allRegionsUsedByWait() local 168 ElementCount.castAs<nonloc::ConcreteInt>().getValue(); in allRegionsUsedByWait()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/AArch64/ |
| H A D | AArch64TargetTransformInfo.h | 140 unsigned getMaxNumElements(ElementCount VF) const { in getMaxNumElements() 284 bool isLegalBroadcastLoad(Type *ElementTy, ElementCount NumElements) const { in isLegalBroadcastLoad() 367 ElementCount VF) const;
|