Lines Matching refs:ScalarEvolution
243 void InitialMatch(const SCEV *S, Loop *L, ScalarEvolution &SE);
264 ScalarEvolution &SE) {
319 void Formula::InitialMatch(const SCEV *S, Loop *L, ScalarEvolution &SE) {
423 static bool isAddRecSExtable(const SCEVAddRecExpr *AR, ScalarEvolution &SE) {
431 static bool isAddSExtable(const SCEVAddExpr *A, ScalarEvolution &SE) {
439 static bool isMulSExtable(const SCEVMulExpr *M, ScalarEvolution &SE) {
453 ScalarEvolution &SE,
463 // Handle x /s -1 as x * -1, to give ScalarEvolution a chance to do
544 static int64_t ExtractImmediate(const SCEV *&S, ScalarEvolution &SE) {
571 static GlobalValue *ExtractSymbol(const SCEV *&S, ScalarEvolution &SE) {
649 static bool isExistingPhi(const SCEVAddRecExpr *AR, ScalarEvolution &SE) {
672 ScalarEvolution &SE) {
802 ScalarEvolution &SE, DominatorTree &DT,
812 ScalarEvolution &SE, DominatorTree &DT);
816 ScalarEvolution &SE, DominatorTree &DT,
826 ScalarEvolution &SE, DominatorTree &DT) {
874 ScalarEvolution &SE, DominatorTree &DT,
892 ScalarEvolution &SE, DominatorTree &DT,
1370 ScalarEvolution &SE) {
1456 ScalarEvolution &SE;
1830 // ScalarEvolution canonicalizes constants to the left. For < and >, look
1927 // If the trip count is computed in terms of a max (due to ScalarEvolution
2242 Loop *L, ScalarEvolution &SE) {
2325 ScalarEvolution &SE, const TargetLowering *TLI) {
2371 ScalarEvolution &SE, const TargetLowering *TLI) {
2980 ScalarEvolution &SE) {
3116 // TODO: If Sum is zero, it probably means ScalarEvolution missed an
4516 SE(P->getAnalysis<ScalarEvolution>()),
4699 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
4726 AU.addRequired<ScalarEvolution>();
4727 AU.addPreserved<ScalarEvolution>();
4729 // twice, since LoopSimplify was invalidated by running ScalarEvolution.
4745 SCEVExpander Rewriter(getAnalysis<ScalarEvolution>(), "lsr");