Lines Matching refs:BackedgeTakenCount
116 Value *LinearFunctionTestReplace(Loop *L, const SCEV *BackedgeTakenCount,
1227 // BackedgeTakenCount. They may already exist in program code, and if not,
1262 const SCEV *BackedgeTakenCount = SE->getBackedgeTakenCount(L);
1263 if (isa<SCEVCouldNotCompute>(BackedgeTakenCount) ||
1264 BackedgeTakenCount->isZero())
1276 if (isHighCostExpansion(BackedgeTakenCount, BI, Processed, SE))
1613 const SCEV *BackedgeTakenCount,
1620 const SCEV *IVCount = BackedgeTakenCount;
1628 // truncated to BackedgeTakenCount->getType().
1629 IVCount = SE->getAddExpr(BackedgeTakenCount,
1630 SE->getConstant(BackedgeTakenCount->getType(), 1));
1670 // Note that the post-inc value of BackedgeTakenCount may have overflowed
1672 if (IVCount != BackedgeTakenCount && Count == 0) {
1828 const SCEV *BackedgeTakenCount = SE->getBackedgeTakenCount(L);
1851 if (!isa<SCEVCouldNotCompute>(BackedgeTakenCount))
1860 PHINode *IndVar = FindLoopCounter(L, BackedgeTakenCount, SE, DT, DL);
1870 const SCEVAddRecExpr *AR = dyn_cast<SCEVAddRecExpr>(BackedgeTakenCount);
1872 (void)LinearFunctionTestReplace(L, BackedgeTakenCount, IndVar,
1903 if (VerifyIndvars && !isa<SCEVCouldNotCompute>(BackedgeTakenCount)) {
1906 if (SE->getTypeSizeInBits(BackedgeTakenCount->getType()) <
1909 BackedgeTakenCount->getType());
1911 BackedgeTakenCount = SE->getTruncateOrNoop(BackedgeTakenCount,
1913 assert(BackedgeTakenCount == NewBECount && "indvars must preserve SCEV");