Lines Matching refs:Rewriter
157 bool simplifyAndExtend(Loop *L, SCEVExpander &Rewriter, LoopInfo *LI);
159 bool optimizeLoopExits(Loop *L, SCEVExpander &Rewriter);
162 bool predicateLoopExits(Loop *L, SCEVExpander &Rewriter);
168 PHINode *IndVar, SCEVExpander &Rewriter);
596 SCEVExpander &Rewriter, in simplifyAndExtend() argument
626 Changed |= simplifyUsersOfIV(CurrIV, SE, DT, LI, TTI, DeadInsts, Rewriter, in simplifyAndExtend()
641 if (PHINode *WidePhi = createWideIV(WideIVs.back(), LI, SE, Rewriter, in simplifyAndExtend()
975 SCEVExpander &Rewriter, ScalarEvolution *SE) { in genLoopLimit() argument
1010 return Rewriter.expandCodeFor(IVLimit, IndVar->getType(), BI); in genLoopLimit()
1054 return Rewriter.expandCodeFor(IVLimit, LimitTy, BI); in genLoopLimit()
1066 PHINode *IndVar, SCEVExpander &Rewriter) { in linearFunctionTestReplace() argument
1115 IndVar, ExitingBB, ExitCount, UsePostInc, L, Rewriter, SE); in linearFunctionTestReplace()
1314 const SCEV *InvariantLHS, const SCEV *InvariantRHS, SCEVExpander &Rewriter, in replaceWithInvariantCond() argument
1317 Rewriter.setInsertPoint(BI); in replaceWithInvariantCond()
1318 auto *LHSV = Rewriter.expandCodeFor(InvariantLHS); in replaceWithInvariantCond()
1319 auto *RHSV = Rewriter.expandCodeFor(InvariantRHS); in replaceWithInvariantCond()
1332 ScalarEvolution *SE, SCEVExpander &Rewriter, in optimizeLoopExitWithUnknownExitCount() argument
1392 Rewriter, DeadInsts); in optimizeLoopExitWithUnknownExitCount()
1397 bool IndVarSimplify::optimizeLoopExits(Loop *L, SCEVExpander &Rewriter) { in optimizeLoopExits() argument
1467 Rewriter, DeadInsts); in optimizeLoopExits()
1552 bool IndVarSimplify::predicateLoopExits(Loop *L, SCEVExpander &Rewriter) { in predicateLoopExits() argument
1685 Rewriter.setInsertPoint(L->getLoopPreheader()->getTerminator()); in predicateLoopExits()
1697 Value *ECV = Rewriter.expandCodeFor(ExitCount); in predicateLoopExits()
1699 ExactBTCV = Rewriter.expandCodeFor(ExactBTC); in predicateLoopExits()
1757 SCEVExpander Rewriter(*SE, DL, "indvars"); in run() local
1759 Rewriter.setDebugType(DEBUG_TYPE); in run()
1768 Rewriter.disableCanonicalMode(); in run()
1769 Changed |= simplifyAndExtend(L, Rewriter, LI); in run()
1776 if (int Rewrites = rewriteLoopExitValues(L, LI, TLI, SE, TTI, Rewriter, DT, in run()
1784 NumElimIV += Rewriter.replaceCongruentIVs(L, DT, DeadInsts); in run()
1787 if (optimizeLoopExits(L, Rewriter)) { in run()
1797 if (predicateLoopExits(L, Rewriter)) { in run()
1842 if (Rewriter.isHighCostExpansion(ExitCount, L, SCEVCheapExpansionBudget, in run()
1859 Rewriter); in run()
1865 Rewriter.clear(); in run()