| /freebsd/contrib/llvm-project/llvm/include/llvm/Support/ |
| H A D | TypeSize.h | 172 constexpr bool isScalable() const { return Scalable; } in isScalable() function 195 if (!isScalable() && RHS.isScalable()) in isKnownMultipleOf() 204 assert((!isScalable() || isZero()) && in getFixedValue() 221 if (!LHS.isScalable() || RHS.isScalable()) in isKnownLT() 228 if (LHS.isScalable() || !RHS.isScalable()) in isKnownGT() 235 if (!LHS.isScalable() || RHS.isScalable()) in isKnownLE() 242 if (LHS.isScalable() || !RHS.isScalable()) in isKnownGE() 256 return LeafTy::get(getKnownMinValue() / RHS, isScalable()); in divideCoefficientBy() 260 return LeafTy::get(getKnownMinValue() * RHS, isScalable()); in multiplyCoefficientBy() 266 isScalable()); in coefficientNextPowerOf2() [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGenTypes/ |
| H A D | LowLevelType.h | 161 if (isScalable()) in getNumElements() 171 constexpr bool isScalable() const { in isScalable() function 178 constexpr bool isFixedVector() const { return isVector() && !isScalable(); } in isFixedVector() 182 constexpr bool isScalableVector() const { return isVector() && isScalable(); } in isScalableVector() 187 isScalable()); in getElementCount() 196 EC.isScalable()); in getSizeInBits() 203 return {(BaseSize.getKnownMinValue() + 7) / 8, BaseSize.isScalable()}; in getSizeInBytes() 400 maskAndShift(EC.isScalable() ? 1 : 0, VectorScalableFieldInfo);
|
| H A D | MachineValueType.h | 255 NElts = ElementCount::get(NewMinCount, NElts.isScalable()); in getPow2VectorType() 360 return {(BaseSize.getKnownMinValue() + 7) / 8, BaseSize.isScalable()}; in getStoreSize() 503 if (EC.isScalable()) in getVectorVT()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | MemoryLocation.h | 99 return LocationSize(Value.getKnownMinValue(), Value.isScalable()); in precise() 111 if (Value.isScalable()) in upperBound() 146 if (isScalable() || Other.isScalable()) in unionWith() 155 bool isScalable() const { return (Value & ScalableBit); } in isScalable() function 161 return {Value & ~(ImpreciseBit | ScalableBit), isScalable()}; in getValue()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | VPlanHelpers.h | 84 assert(Start.isScalable() == End.isScalable() && in VFRange() 157 if (VF.isScalable()) in getLaneFromEnd() 192 assert(VF.isScalable() && Lane < VF.getKnownMinValue() && in mapToCacheIndex()
|
| H A D | LoopVectorize.cpp | 2223 if (VF.isScalable()) { in isIndvarOverflowCheckKnownFalse() 2348 if (!VF.isScalable()) in createIterationCountCheck() 2372 } else if (VF.isScalable() && !TTI->isVScaleKnownToBeAPowerOfTwo() && in createIterationCountCheck() 2588 if (VF.isScalable()) in getEstimatedRuntimeVF() 2729 if (VF.isScalable()) { in collectLoopScalars() 3013 if (!VF.isScalable()) { in getDivRemSpeculationCost() 3085 if (VF.isScalable() && InterleaveFactor > 8) in interleavedAccessCanBeWidened() 3546 UserVF.isScalable() ? MaxSafeScalableVF : MaxSafeFixedVF; in computeFeasibleMaxVF() 3550 if (UserVF.isScalable()) in computeFeasibleMaxVF() 3561 if (!UserVF.isScalable()) { in computeFeasibleMaxVF() [all …]
|
| H A D | LoopVectorizationPlanner.h | 388 *(Max.isScalable() ? &ScalableVF : &FixedVF) = Max; in FixedScalableVFPair() 393 assert(!FixedVF.isScalable() && ScalableVF.isScalable() && in FixedScalableVFPair()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/ |
| H A D | LoadStoreOpt.cpp | 128 if (PtrDiff >= 0 && Size1.hasValue() && !Size1.isScalable()) { in aliasIsKnownForLoadStore() 135 if (PtrDiff < 0 && Size2.hasValue() && !Size2.isScalable()) { in aliasIsKnownForLoadStore() 250 if ((MUC0.NumBytes.isScalable() && MUC0.Offset != 0) || in instMayAlias() 251 (MUC1.NumBytes.isScalable() && MUC1.Offset != 0)) in instMayAlias() 255 !MUC0.NumBytes.isScalable() && !MUC1.NumBytes.isScalable(); in instMayAlias() 282 Size0.isScalable() ? Size0 : LocationSize::precise(Overlap0); in instMayAlias() 284 Size1.isScalable() ? Size1 : LocationSize::precise(Overlap1); in instMayAlias()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | VNCoercion.cpp | 144 assert(!StoredValSize.isScalable() && in coerceAvailableValueToLoadType() 381 if (MinSrcValSize.isScalable() && !LoadSize.isScalable()) in getValueForLoad() 385 assert((MinSrcValSize.isScalable() || Offset + LoadSize <= MinSrcValSize) && in getValueForLoad() 387 assert((!MinSrcValSize.isScalable() || in getValueForLoad()
|
| H A D | FunctionComparator.cpp | 621 if (STyL->getElementCount().isScalable() != in cmpTypes() 622 STyR->getElementCount().isScalable()) in cmpTypes() 623 return cmpNumbers(STyL->getElementCount().isScalable(), in cmpTypes() 624 STyR->getElementCount().isScalable()); in cmpTypes()
|
| /freebsd/contrib/llvm-project/llvm/lib/Support/ |
| H A D | TypeSize.cpp | 51 if (isScalable()) { in operator TypeSize::ScalarTy()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | DataLayout.h | 471 StoreSizeInBits.isScalable()}; in getTypeStoreSize() 485 return {AlignedSizeInBits, BaseSize.isScalable()}; in getTypeStoreSizeInBits() 714 return TypeSize(MinBits, EltCnt.isScalable()); in getTypeSizeInBits()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | SelectionDAGAddressAnalysis.cpp | 111 if (PtrDiff >= 0 && NumBytes0.hasValue() && !NumBytes0.isScalable()) { in computeAliasing() 119 if (PtrDiff < 0 && NumBytes1.hasValue() && !NumBytes1.isScalable()) { in computeAliasing()
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | BasicAliasAnalysis.cpp | 685 if (AllocTypeSize.isScalable()) { in DecomposeGEPExpression() 696 if (AllocTypeSize.isScalable()) { in DecomposeGEPExpression() 1130 V2Size.hasValue() && !V2Size.isScalable() && in aliasGEP() 1137 V1Size.hasValue() && !V1Size.isScalable() && in aliasGEP() 1188 if (!LSize.isScalable()) { in aliasGEP() 1193 if (VRightSize.hasValue() && !VRightSize.isScalable() && in aliasGEP() 1257 !V2Size.isScalable() && DecompGEP1.Offset.uge(V2Size.getValue())) in aliasGEP() 1261 if (V1Size.isScalable() || V2Size.isScalable()) in aliasGEP()
|
| H A D | Lint.cpp | 480 Check(!Loc.Size.hasValue() || Loc.Size.isScalable() || in visitMemoryReference() 628 Check(EC.isScalable() || CI->getValue().ult(EC.getFixedValue()), in visitExtractElementInst() 637 Check(EC.isScalable() || CI->getValue().ult(EC.getFixedValue()), in visitInsertElementInst()
|
| /freebsd/contrib/llvm-project/llvm/lib/IR/ |
| H A D | DataLayout.cpp | 69 if (!StructSize.isScalable() && !isAligned(TyAlign, StructSize)) { in StructLayout() 84 if (!StructSize.isScalable() && !isAligned(StructAlignment, StructSize)) { in StructLayout() 93 assert(!StructSize.isScalable() && in getElementContainingOffset() 924 if (ElemSize.isScalable() || ElemSize == 0 || in getElementIndex()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | ValueTypes.h | 392 return {(BaseSize.getKnownMinValue() + 7) / 8, BaseSize.isScalable()}; in getStoreSize() 476 NElts = ElementCount::get(NewMinCount, NElts.isScalable()); in getPow2VectorType()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | LoopStrengthReduce.cpp | 305 return {Value, Scalable || RHS.isScalable()}; in addUnsigned() 311 return {Value, Scalable || RHS.isScalable()}; in subUnsigned() 349 if (LHS.isScalable() && !RHS.isScalable()) in operator ()() 351 if (!LHS.isScalable() && RHS.isScalable()) in operator ()() 1805 BaseOffset.isScalable() ? 0 : BaseOffset.getFixedValue(); in isAMCompletelyFolded() 1807 BaseOffset.isScalable() ? BaseOffset.getKnownMinValue() : 0; in isAMCompletelyFolded() 1832 if (BaseOffset.isScalable()) in isAMCompletelyFolded() 1867 (BaseOffset.isScalable() != MinOffset.isScalable() || in isAMCompletelyFolded() 1868 BaseOffset.isScalable() != MaxOffset.isScalable())) in isAMCompletelyFolded() 1876 MinOffset = Immediate::get((uint64_t)Base + Min, MinOffset.isScalable()); in isAMCompletelyFolded() [all …]
|
| H A D | MemCpyOptimizer.cpp | 186 assert(!StoreSize.isScalable() && "Can't track scalable-typed stores"); in addStore() 358 if (DL.getTypeStoreSize(SI->getOperand(0)->getType()).isScalable()) in tryMergingIntoMemset() 408 if (DL.getTypeStoreSize(StoredVal->getType()).isScalable()) in tryMergingIntoMemset() 803 if (Size.isScalable()) in processStore() 863 if (cpySize.isScalable()) in performCallSlotOptzn() 878 if (SrcAllocaSize.isScalable()) in performCallSlotOptzn() 2073 if (!AllocaSize || AllocaSize->isScalable()) in processImmutArgument()
|
| /freebsd/contrib/llvm-project/llvm/utils/TableGen/Common/GlobalISel/ |
| H A D | GlobalISelMatchTable.cpp | 364 OS << (Ty.isScalable() ? "GILLT_nxv" : "GILLT_v") in emitCxxEnumValue() 385 << (Ty.isScalable() ? "ElementCount::getScalable(" in emitCxxConstructorCall() 419 return std::tuple(Ty.isScalable(), in operator <() 421 std::tuple(Other.Ty.isScalable(), in operator <() 424 assert((!Ty.isVector() || Ty.isScalable() == Other.Ty.isScalable()) && in operator <() 427 ? std::tuple(Ty.isScalable(), in operator <() 429 std::tuple(Other.Ty.isScalable(), in operator <()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
| H A D | AArch64GenRegisterBankInfo.def | 184 assert((!Size.isScalable() || MinSize >= 128) && 186 if (Size.isScalable())
|
| H A D | AArch64TargetTransformInfo.h | 167 if (!VF.isScalable()) in getMaxNumElements() 341 if (!ST->hasNEON() || NumElements.isScalable()) in isLegalBroadcastLoad()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
| H A D | RISCVTargetTransformInfo.h | 358 if (!VF.isScalable()) in isLegalToVectorizeReduction() 392 if (VF.isScalable()) in getMaxInterleaveFactor()
|
| H A D | RISCVSubtarget.h | 237 if (auto VLen = getRealVLen(); VLen && X.isScalable()) { in expandVScale()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | ExpandVectorPredication.cpp | 213 if (ElemCount.isScalable()) { in convertEVLToMask() 506 if (StaticElemCount.isScalable()) { in discardEVLParameter()
|