/netbsd/external/apache2/llvm/dist/llvm/lib/Analysis/ |
H A D | LoopCacheAnalysis.cpp | 294 const SCEV *Stride = SE.getMulExpr(Coeff, ElemSize); in computeRefCost() local 295 const SCEV *CacheLineSize = SE.getConstant(Stride->getType(), CLS); in computeRefCost() 296 Type *WiderType = SE.getWiderType(Stride->getType(), TripCount->getType()); in computeRefCost() 297 if (SE.isKnownNegative(Stride)) in computeRefCost() 298 Stride = SE.getNegativeSCEV(Stride); in computeRefCost() 299 Stride = SE.getNoopOrAnyExtend(Stride, WiderType); in computeRefCost() 301 const SCEV *Numerator = SE.getMulExpr(Stride, TripCount); in computeRefCost() 421 const SCEV *Stride = SE.getMulExpr(Coeff, ElemSize); in isConsecutive() local 422 const SCEV *CacheLineSize = SE.getConstant(Stride->getType(), CLS); in isConsecutive() 424 Stride = SE.isKnownNegative(Stride) ? SE.getNegativeSCEV(Stride) : Stride; in isConsecutive() [all …]
|
H A D | VectorUtils.cpp | 255 Value *Stride = U->getValue(); in getStrideFromPointer() local 256 if (!Lp->isLoopInvariant(Stride)) in getStrideFromPointer() 262 Stride = getUniqueCastUse(Stride, Lp, StripedOffRecurrenceCast); in getStrideFromPointer() 264 return Stride; in getStrideFromPointer() 799 Mask.push_back(Start + i * Stride); in createStrideMask() 942 bool InterleavedAccessInfo::isStrided(int Stride) { in isStrided() argument 943 unsigned Factor = std::abs(Stride); in isStrided() 974 int64_t Stride = getPtrStride(PSE, Ptr, TheLoop, Strides, in collectConstStrideAccesses() local 1061 if (isStrided(DesB.Stride) && in analyzeInterleaving() 1124 if (!isStrided(DesA.Stride) || !isStrided(DesB.Stride)) in analyzeInterleaving() [all …]
|
H A D | LoopAccessAnalysis.cpp | 650 int64_t Stride = getPtrStride(PSE, Ptr, L, Strides); in isNoWrap() local 1101 int64_t Stride = StepVal / Size; in getPtrStride() local 1109 if (!IsNoWrapAddRec && Stride != 1 && Stride != -1 && in getPtrStride() 1124 return Stride; in getPtrStride() 1383 const uint64_t ByteStride = Stride * TypeByteSize; in isSafeDependenceDistance() 1449 return ScaledDist % Stride; in areStridedAccessesIndependent() 1507 uint64_t Stride = std::abs(StrideAPtr); in isDependent() local 2139 if (!Stride) in collectStridedAccess() 2159 const SCEV *StrideExpr = PSE->getSCEV(Stride); in collectStridedAccess() 2188 SymbolicStrides[Ptr] = Stride; in collectStridedAccess() [all …]
|
/netbsd/external/apache2/llvm/dist/llvm/include/llvm/Analysis/ |
H A D | VectorUtils.h | 516 llvm::SmallVector<int, 16> createStrideMask(unsigned Start, unsigned Stride, 588 InterleaveGroup(InstTy *Instr, int32_t Stride, Align Alignment) in InterleaveGroup() argument 590 Factor = std::abs(Stride); in InterleaveGroup() 593 Reverse = Stride < 0; in InterleaveGroup() 818 StrideDescriptor(int64_t Stride, const SCEV *Scev, uint64_t Size, in StrideDescriptor() 820 : Stride(Stride), Scev(Scev), Size(Size), Alignment(Alignment) {} in StrideDescriptor() 823 int64_t Stride = 0; member 843 createInterleaveGroup(Instruction *Instr, int Stride, Align Alignment) { in createInterleaveGroup() argument 847 new InterleaveGroup<Instruction>(Instr, Stride, Alignment); in createInterleaveGroup() 868 static bool isStrided(int Stride); [all …]
|
H A D | ScalarEvolution.h | 1988 const SCEV *computeBECount(const SCEV *Delta, const SCEV *Stride, 1997 const SCEV *computeMaxBECountForLT(const SCEV *Start, const SCEV *Stride, 2004 bool doesIVOverflowOnLT(const SCEV *RHS, const SCEV *Stride, bool IsSigned, 2010 bool doesIVOverflowOnGT(const SCEV *RHS, const SCEV *Stride, bool IsSigned,
|
/netbsd/external/apache2/llvm/dist/llvm/lib/Target/X86/ |
H A D | X86LowerAMXType.cpp | 177 Value *Stride = Builder.getInt64(64); in combineLoadBitcast() local 180 std::array<Value *, 4> Args = {Row, Col, I8Ptr, Stride}; in combineLoadBitcast() 205 Value *Stride = Builder.getInt64(64); in combineBitcastStore() local 208 std::array<Value *, 5> Args = {Row, Col, I8Ptr, Stride, Tile}; in combineBitcastStore() 229 Value *I8Ptr, *Stride; in transformBitcast() local 235 Stride = Builder.getInt64(64); in transformBitcast() 257 std::array<Value *, 4> Args = {Row, Col, I8Ptr, Stride}; in transformBitcast() 275 std::array<Value *, 5> Args = {Row, Col, I8Ptr, Stride, Src}; in transformBitcast() 409 Value *Stride = Builder.getInt64(64); in createTileStore() local 434 Value *Stride = Builder.getInt64(64); in replaceWithTileLoad() local [all …]
|
H A D | X86InterleavedAccess.cpp | 293 unsigned VecElems, unsigned Stride, in reorderSubVector() argument 297 for (unsigned i = 0; i < Stride; i++) in reorderSubVector() 305 for (unsigned i = 0; i < (VecElems / 16) * Stride; i += 2) { in reorderSubVector() 306 genShuffleBland(VT, VPShuf, OptimizeShuf, (i / Stride) * 16, in reorderSubVector() 307 (i + 1) / Stride * 16); in reorderSubVector() 309 Vec[i % Stride], Vec[(i + 1) % Stride], OptimizeShuf); in reorderSubVector() 314 std::copy(Temp, Temp + Stride, TransposedMatrix.begin()); in reorderSubVector() 317 for (unsigned i = 0; i < Stride; i++) in reorderSubVector() 440 static void createShuffleStride(MVT VT, int Stride, in createShuffleStride() argument 447 Mask.push_back((i * Stride) % LaneSize + LaneSize * Lane); in createShuffleStride()
|
H A D | X86LowerAMXIntrinsics.cpp | 78 Value *Ptr, Value *Stride, Value *Tile); 150 Value *Col, Value *Ptr, Value *Stride, Value *Tile) { in createTileLoadStoreLoops() argument 183 Value *CurrentRowZExt = B.CreateZExt(CurrentRow, Stride->getType()); in createTileLoadStoreLoops() 184 Value *CurrentColZExt = B.CreateZExt(CurrentCol, Stride->getType()); in createTileLoadStoreLoops() 186 B.CreateAdd(B.CreateMul(CurrentRowZExt, Stride), CurrentColZExt); in createTileLoadStoreLoops() 516 Value *M, *N, *Ptr, *Stride, *Tile; in lowerTileLoadStore() local 520 m_Value(M), m_Value(N), m_Value(Ptr), m_Value(Stride))); in lowerTileLoadStore() 524 m_Value(Stride), m_Value(Tile))); in lowerTileLoadStore() 530 Value *StrideDWord = PreBuilder.CreateLShr(Stride, PreBuilder.getInt64(2)); in lowerTileLoadStore()
|
/netbsd/external/apache2/llvm/dist/llvm/include/llvm/Object/ |
H A D | Minidump.h | 110 MemoryInfoIterator(ArrayRef<uint8_t> Storage, size_t Stride) in MemoryInfoIterator() argument 111 : Storage(Storage), Stride(Stride) { in MemoryInfoIterator() 112 assert(Storage.size() % Stride == 0); in MemoryInfoIterator() 125 Storage = Storage.drop_front(Stride); 131 size_t Stride; variable
|
/netbsd/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/ |
H A D | StraightLineStrengthReduce.cpp | 145 : CandidateKind(CT), Base(B), Index(Idx), Stride(S), Ins(I) {} in Candidate() 156 Value *Stride = nullptr; member 282 Basis.Base == C.Base && Basis.Stride == C.Stride && in isBasisFor() 294 static bool isAddFoldable(const SCEV *Base, ConstantInt *Index, Value *Stride, in isAddFoldable() argument 306 return isAddFoldable(C.Base, C.Index, C.Stride, TTI); in isFoldable() 608 return C.Stride; in emitBump() 611 return Builder.CreateNeg(C.Stride); in emitBump() 617 Value *ExtendedStride = Builder.CreateSExtOrTrunc(C.Stride, DeltaType); in emitBump() 636 C.Stride == Basis.Stride); in rewriteCandidateWithBasis()
|
H A D | LowerMatrixIntrinsics.cpp | 132 Value *computeVectorAddr(Value *BasePtr, Value *VecIdx, Value *Stride, in computeVectorAddr() argument 136 assert((!isa<ConstantInt>(Stride) || in computeVectorAddr() 137 cast<ConstantInt>(Stride)->getZExtValue() >= NumElements) && in computeVectorAddr() 142 Value *VecStart = Builder.CreateMul(VecIdx, Stride, "vec.start"); in computeVectorAddr() 793 if (auto *ConstStride = dyn_cast<ConstantInt>(Stride)) { in getAlignForIndex() 814 VecTy, GEP, getAlignForIndex(I, Stride, EltTy, MAlign), in loadMatrix() 865 Value *Stride = Inst->getArgOperand(1); in LowerColumnMajorLoad() local 866 LowerLoad(Inst, Ptr, Inst->getParamAlign(0), Stride, in LowerColumnMajorLoad() 902 Stride, StoreVal.getStride(), in storeMatrix() 933 Value *Stride = Inst->getArgOperand(2); in LowerColumnMajorStore() local [all …]
|
H A D | LoopIdiomRecognize.cpp | 547 APInt Stride = getStoreStride(StoreEv); in isLegalStore() local 549 if (StoreSize != Stride && StoreSize != -Stride) in isLegalStore() 779 APInt Stride = getStoreStride(StoreEv); in processLoopStores() local 783 if (StoreSize != Stride && StoreSize != -Stride) in processLoopStores() 786 bool NegStride = StoreSize == -Stride; in processLoopStores() 925 APInt Stride = ConstStride->getAPInt(); in processLoopMemSet() local 926 if (SizeInBytes != Stride && SizeInBytes != -Stride) in processLoopMemSet() 937 bool NegStride = SizeInBytes == -Stride; in processLoopMemSet() 1207 APInt Stride = getStoreStride(StoreEv); in processLoopStoreOfLoopLoad() local 1208 bool NegStride = StoreSize == -Stride; in processLoopStoreOfLoopLoad()
|
/netbsd/external/gpl3/gcc.old/dist/libphobos/src/std/ |
H A D | meta.d | 1510 template Stride(int stepSize, Args...) 1515 alias Stride = AliasSeq!(); variable 1520 alias Stride = AliasSeq!(Args[0]); variable 1522 alias Stride = AliasSeq!(Args[0], Stride!(stepSize, Args[stepSize .. $])); variable 1527 alias Stride = AliasSeq!(Args[$ - 1]); variable 1529 alias Stride = AliasSeq!(Args[$ - 1], Stride!(stepSize, Args[0 .. $ + stepSize])); variable 1542 static assert(is(Stride!(3, attribs) == AliasSeq!(short, ushort))); 1544 static assert(is(Stride!(-3, attribs) == AliasSeq!(ulong, long))); 1549 static assert(Pack!(Stride!(5, int)).equals!(int)); 1550 static assert(Pack!(Stride!(-5, int)).equals!(int)); [all …]
|
/netbsd/external/gpl3/gcc/dist/libphobos/src/std/ |
H A D | meta.d | 1385 template Stride(int stepSize, Args...) 1388 alias Stride = AliasSeq!(); variable 1392 Stride = AliasSeq!(Stride, Args[i * stepSize]); 1397 Stride = AliasSeq!(Stride, Args[$ - 1 + i * stepSize]); 1405 static assert(is(Stride!(2, short, int, long) == AliasSeq!(short, long))); 1410 static assert(is(Stride!(3, attribs) == AliasSeq!(short, ushort))); 1411 static assert(is(Stride!(3, attribs[1 .. $]) == AliasSeq!(int, uint))); 1412 static assert(is(Stride!(-3, attribs) == AliasSeq!(ulong, long))); 1417 static assert(Pack!(Stride!(5, int)).equals!(int)); 1418 static assert(Pack!(Stride!(-5, int)).equals!(int)); [all …]
|
/netbsd/external/apache2/llvm/dist/llvm/include/llvm/ADT/ |
H A D | SparseSet.h | 206 const unsigned Stride = std::numeric_limits<SparseT>::max() + 1u; 207 for (unsigned i = Sparse[Idx], e = size(); i < e; i += Stride) { 213 if (!Stride)
|
H A D | SparseMultiSet.h | 356 const unsigned Stride = std::numeric_limits<SparseT>::max() + 1u; in findIndex() local 357 for (unsigned i = Sparse[Idx], e = Dense.size(); i < e; i += Stride) { in findIndex() 364 if (!Stride) in findIndex()
|
/netbsd/external/apache2/llvm/dist/llvm/include/llvm/IR/ |
H A D | MatrixBuilder.h | 66 Value *Stride, bool IsVolatile, unsigned Rows, 75 Value *Ops[] = {DataPtr, Stride, B.getInt1(IsVolatile), B.getInt32(Rows), 94 Value *Stride, bool IsVolatile, 98 Stride, B.getInt1(IsVolatile),
|
H A D | DIBuilder.h | 611 Metadata *UpperBound, Metadata *Stride); 617 DIGenericSubrange::BoundType Stride);
|
/netbsd/external/apache2/llvm/dist/llvm/lib/IR/ |
H A D | LLVMContextImpl.h | 308 Metadata *Stride; 311 Metadata *Stride) 313 Stride(Stride) {} 337 BoundsEqual(Stride, RHS->getRawStride()); 344 LowerBound, UpperBound, Stride); 345 return hash_combine(CountNode, LowerBound, UpperBound, Stride); 353 Metadata *Stride; 356 Metadata *Stride) 358 Stride(Stride) {} 367 (Stride == RHS->getRawStride()); [all …]
|
H A D | DebugInfoMetadata.cpp | 362 Metadata *LB, Metadata *UB, Metadata *Stride, in getImpl() argument 364 DEFINE_GETIMPL_LOOKUP(DISubrange, (CountNode, LB, UB, Stride)); in getImpl() 365 Metadata *Ops[] = {CountNode, LB, UB, Stride}; in getImpl() 455 Metadata *UB, Metadata *Stride, in getImpl() argument 458 DEFINE_GETIMPL_LOOKUP(DIGenericSubrange, (CountNode, LB, UB, Stride)); in getImpl() 459 Metadata *Ops[] = {CountNode, LB, UB, Stride}; in getImpl()
|
H A D | DIBuilder.cpp | 672 Metadata *UB, Metadata *Stride) { in getOrCreateSubrange() argument 673 return DISubrange::get(VMContext, CountNode, LB, UB, Stride); in getOrCreateSubrange() 678 DIGenericSubrange::BoundType UB, DIGenericSubrange::BoundType Stride) { in getOrCreateGenericSubrange() argument 685 ConvToMetadata(Stride)); in getOrCreateGenericSubrange()
|
/netbsd/external/apache2/llvm/dist/llvm/lib/CodeGen/ |
H A D | MachineRegisterInfo.cpp | 339 int Stride = 1; in moveOperands() local 341 Stride = -1; in moveOperands() 370 Dst += Stride; in moveOperands() 371 Src += Stride; in moveOperands()
|
/netbsd/sys/external/bsd/compiler_rt/dist/lib/sanitizer_common/tests/ |
H A D | sanitizer_vector_test.cc | 30 TEST(Vector, Stride) { in TEST() argument
|
/netbsd/external/apache2/llvm/dist/clang/include/clang/AST/ |
H A D | ExprOpenMP.h | 64 OMPArraySectionExpr(Expr *Base, Expr *LowerBound, Expr *Length, Expr *Stride, in OMPArraySectionExpr() argument 74 SubExprs[STRIDE] = Stride; in OMPArraySectionExpr()
|
/netbsd/external/apache2/llvm/dist/llvm/lib/Transforms/Vectorize/ |
H A D | LoopVectorizationLegality.cpp | 415 int Stride = getPtrStride(PSE, Ptr, TheLoop, Strides, CanAddPredicate, false); in isConsecutivePtr() local 416 if (Stride == 1 || Stride == -1) in isConsecutivePtr() 417 return Stride; in isConsecutivePtr()
|