Lines Matching refs:SCEVAddRecExpr

320   if (const SCEVAddRecExpr *A = dyn_cast<SCEVAddRecExpr>(S)) {  in FactorOutConstant()
346 for (unsigned i = Ops.size(); i > 0 && isa<SCEVAddRecExpr>(Ops[i-1]); --i) in SimplifyAddOperands()
377 while (const SCEVAddRecExpr *A = dyn_cast<SCEVAddRecExpr>(Ops[i])) { in SplitAddRecs()
662 if (const SCEVAddRecExpr *AR = dyn_cast<SCEVAddRecExpr>(S)) in getRelevantLoop()
904 while (const SCEVAddRecExpr *A = dyn_cast<SCEVAddRecExpr>(Base)) { in ExposePointerBase()
1121 const SCEVAddRecExpr *Phi, in canBeCheaplyTransformed()
1122 const SCEVAddRecExpr *Requested, in canBeCheaplyTransformed()
1131 Phi = dyn_cast<SCEVAddRecExpr>(SE.getTruncateOrNoop(Phi, RequestedTy)); in canBeCheaplyTransformed()
1151 static bool IsIncrementNSW(ScalarEvolution &SE, const SCEVAddRecExpr *AR) { in IsIncrementNSW()
1165 static bool IsIncrementNUW(ScalarEvolution &SE, const SCEVAddRecExpr *AR) { in IsIncrementNUW()
1183 SCEVExpander::getAddRecExprPHILiterally(const SCEVAddRecExpr *Normalized, in getAddRecExprPHILiterally()
1217 const SCEVAddRecExpr *PhiSCEV = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(&PN)); in getAddRecExprPHILiterally()
1373 Value *SCEVExpander::expandAddRecExprLiterally(const SCEVAddRecExpr *S) { in expandAddRecExprLiterally()
1380 const SCEVAddRecExpr *Normalized = S; in expandAddRecExprLiterally()
1384 Normalized = cast<SCEVAddRecExpr>(normalizeForPostIncUse(S, Loops, SE)); in expandAddRecExprLiterally()
1393 Normalized = cast<SCEVAddRecExpr>( in expandAddRecExprLiterally()
1413 cast<SCEVAddRecExpr>(SE.getAddRecExpr( in expandAddRecExprLiterally()
1517 Value *SCEVExpander::visitAddRecExpr(const SCEVAddRecExpr *S) { in visitAddRecExpr()
1655 if (isa<SCEVAddRecExpr>(Ext)) in visitAddRecExpr()
1658 const SCEV *V = cast<SCEVAddRecExpr>(NewS)->evaluateAtIteration(IH, SE); in visitAddRecExpr()
2424 assert(cast<SCEVAddRecExpr>(S)->getNumOperands() >= 2 && in isHighCostExpansionHelper()
2426 BudgetRemaining -= costAndCollectOperands<SCEVAddRecExpr>( in isHighCostExpansionHelper()
2462 Value *SCEVExpander::generateOverflowCheck(const SCEVAddRecExpr *AR, in generateOverflowCheck()
2561 const auto *A = cast<SCEVAddRecExpr>(Pred->getExpr()); in expandWrapPredicate()
2662 if (const SCEVAddRecExpr *AR = dyn_cast<SCEVAddRecExpr>(S)) { in follow()