Lines Matching refs:SE
55 void SCEVDivision::divide(ScalarEvolution &SE, const SCEV *Numerator, in divide() argument
60 SCEVDivision D(SE, Numerator, Denominator); in divide()
88 divide(SE, *Quotient, Op, &Q, &R); in divide()
123 Quotient = SE.getConstant(QuotientVal); in visitConstant()
124 Remainder = SE.getConstant(RemainderVal); in visitConstant()
137 divide(SE, Numerator->getStart(), Denominator, &StartQ, &StartR); in visitAddRecExpr()
138 divide(SE, Numerator->getStepRecurrence(SE), Denominator, &StepQ, &StepR); in visitAddRecExpr()
144 Quotient = SE.getAddRecExpr(StartQ, StepQ, Numerator->getLoop(), in visitAddRecExpr()
146 Remainder = SE.getAddRecExpr(StartR, StepR, Numerator->getLoop(), in visitAddRecExpr()
156 divide(SE, Op, Denominator, &Q, &R); in visitAddExpr()
172 Quotient = SE.getAddExpr(Qs); in visitAddExpr()
173 Remainder = SE.getAddExpr(Rs); in visitAddExpr()
193 divide(SE, Op, Denominator, &Q, &R); in visitMulExpr()
212 Quotient = SE.getMulExpr(Qs); in visitMulExpr()
222 Remainder = SCEVParameterRewriter::rewrite(Numerator, SE, RewriteMap); in visitMulExpr()
227 Quotient = SCEVParameterRewriter::rewrite(Numerator, SE, RewriteMap); in visitMulExpr()
233 const SCEV *Diff = SE.getMinusSCEV(Numerator, Remainder); in visitMulExpr()
237 divide(SE, Diff, Denominator, &Q, &R); in visitMulExpr()
245 : SE(S), Denominator(Denominator) { in SCEVDivision()
246 Zero = SE.getZero(Denominator->getType()); in SCEVDivision()
247 One = SE.getOne(Denominator->getType()); in SCEVDivision()