| /llvm-project-15.0.7/llvm/lib/Transforms/Scalar/ |
| H A D | LoopIdiomRecognize.cpp | 202 bool runOnLoopBlock(BasicBlock *BB, const SCEV *BECount, 215 const SCEV *BECount); 232 const SCEV *BECount); 387 assert(!isa<SCEVCouldNotCompute>(BECount) && in runOnCountableLoop() 622 BasicBlock *BB, const SCEV *BECount, in runOnLoopBlock() argument 805 const SCEV *BECount) { in processLoopMemIntrinsic() argument 812 if (!(this->*Processor)(MI, BECount)) in processLoopMemIntrinsic() 891 BECount); in processLoopMemCpy() 1065 if (DL->getTypeSizeInBits(BECount->getType()) < in getTripCount() 1068 CurLoop, ICmpInst::ICMP_NE, BECount, in getTripCount() [all …]
|
| H A D | IndVarSimplify.cpp | 894 const SCEV *BECount, in FindLoopCounter() argument 896 uint64_t BCWidth = SE->getTypeSizeInBits(BECount->getType()); in FindLoopCounter() 913 if (BECount->getType()->isPointerTy() && !Phi->getType()->isPointerTy()) in FindLoopCounter()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Utils/ |
| H A D | LoopUnrollRuntime.cpp | 71 static void ConnectProlog(Loop *L, Value *BECount, unsigned Count, in ConnectProlog() argument 165 B.CreateICmpULT(BECount, ConstantInt::get(BECount->getType(), Count - 1)); in ConnectProlog() 497 static Value *CreateTripRemainder(IRBuilder<> &B, Value *BECount, in CreateTripRemainder() argument 514 Constant *CountC = ConstantInt::get(BECount->getType(), Count); in CreateTripRemainder() 515 Value *ModValTmp = B.CreateURem(BECount, CountC); in CreateTripRemainder() 748 Value *BECount; in UnrollRuntimeLoopRemainder() local 758 BECount = in UnrollRuntimeLoopRemainder() 763 BECount = in UnrollRuntimeLoopRemainder() 767 Value * const ModVal = CreateTripRemainder(B, BECount, TripCount, Count); in UnrollRuntimeLoopRemainder() 770 UseEpilogRemainder ? B.CreateICmpULT(BECount, in UnrollRuntimeLoopRemainder() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/Hexagon/ |
| H A D | HexagonLoopIdiomRecognition.cpp | 1983 const SCEV *BECount, unsigned StoreSize, in mayLoopAccessLocation() argument 1993 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in mayLoopAccessLocation() 2023 StoreInst *SI, const SCEV *BECount) { in processCopyingStore() argument 2063 Type *BECountTy = BECount->getType(); in processCopyingStore() 2091 BECount, StoreSize, *AA, Ignore1)) { in processCopyingStore() 2159 BECount = SE->getTruncateOrZeroExtend(BECount, IntPtrTy); in processCopyingStore() 2163 SE->getAddExpr(BECount, SE->getOne(IntPtrTy), SCEV::FlagNUW); in processCopyingStore() 2385 MadeChange |= processCopyingStore(CurLoop, SI, BECount); in runOnLoopBlock() 2398 const SCEV *BECount = SE->getBackedgeTakenCount(L); in runOnCountableLoop() local 2399 assert(!isa<SCEVCouldNotCompute>(BECount) && in runOnCountableLoop() [all …]
|
| /llvm-project-15.0.7/llvm/test/Analysis/ScalarEvolution/ |
| H A D | becount-invalidation.ll | 4 ; This tests an invalidation issue during BECount calculation. %ptr1.dummy has 6 ; placeholder for %ptr1.next when invalidating SCEVs after BECount calculation.
|
| /llvm-project-15.0.7/llvm/test/Transforms/IndVarSimplify/ |
| H A D | 2011-11-01-lftrptr.ll | 8 ; that BECount may or may not be a pointer type. A pointer type 9 ; BECount doesn't really make sense, but that's what falls out of 309 ; IV and BECount have two different pointer types here.
|
| /llvm-project-15.0.7/llvm/lib/Analysis/ |
| H A D | ScalarEvolution.cpp | 1434 !isa<SCEVCouldNotCompute>(BECount) && SE->isKnownPositive(BECount)) in getPreStartForExtend() 8388 Ops.push_back(BECount); in getExact() 8816 BECount = EL0.ExactNotTaken; in computeExitLimitFromCondFromBinOp() 12634 const SCEV *BECount = nullptr; in howManyLessThans() local 12667 if (!BECount) { in howManyLessThans() 12783 BECount = in howManyLessThans() 12792 if (isa<SCEVConstant>(BECount)) { in howManyLessThans() 12793 MaxBECount = BECount; in howManyLessThans() 12878 const SCEV *BECount = getUDivExpr( in howManyGreaterThans() local 12899 ? BECount in howManyGreaterThans() [all …]
|
| H A D | DependenceAnalysis.cpp | 1050 const SCEV *BECount = SE->getBackedgeTakenCount(AddRec->getLoop()); in isKnownLessThan() local 1051 if (!isa<SCEVCouldNotCompute>(BECount)) { in isKnownLessThan() 1052 const SCEV *Limit = AddRec->evaluateAtIteration(BECount, *SE); in isKnownLessThan()
|