Lines Matching defs:Rewriter

112     void SimplifyAndExtend(Loop *L, SCEVExpander &Rewriter, LPPassManager &LPM);
114 void RewriteLoopExitValues(Loop *L, SCEVExpander &Rewriter);
117 PHINode *IndVar, SCEVExpander &Rewriter);
481 void IndVarSimplify::RewriteLoopExitValues(Loop *L, SCEVExpander &Rewriter) {
597 Value *ExitVal = Rewriter.expandCodeFor(ExitValue, PN->getType(), Inst);
639 Rewriter.clearInsertPoint();
748 PHINode *CreateWideIV(SCEVExpander &Rewriter);
760 Instruction *WidenIVUse(NarrowIVDefUse DU, SCEVExpander &Rewriter);
913 Instruction *WidenIV::WidenIVUse(NarrowIVDefUse DU, SCEVExpander &Rewriter) {
997 && Rewriter.hoistIVInc(WideInc, DU.NarrowUse))
1044 PHINode *WidenIV::CreateWideIV(SCEVExpander &Rewriter) {
1075 WidePhi = cast<PHINode>(Rewriter.expandCodeFor(AddRec, WideType, InsertPt));
1101 Instruction *WideUse = WidenIVUse(DU, Rewriter);
1153 SCEVExpander &Rewriter,
1187 if (PHINode *WidePhi = Widener.CreateWideIV(Rewriter)) {
1526 SCEVExpander &Rewriter, ScalarEvolution *SE) {
1551 Value *GEPOffset = Rewriter.expandCodeFor(IVOffset, OfsTy, BI);
1602 return Rewriter.expandCodeFor(IVLimit, LimitTy, BI);
1615 SCEVExpander &Rewriter) {
1637 Value *ExitCnt = genLoopLimit(IndVar, IVCount, L, Rewriter, SE);
1831 SCEVExpander Rewriter(*SE, "indvars");
1833 Rewriter.setDebugType(DEBUG_TYPE);
1842 Rewriter.disableCanonicalMode();
1843 SimplifyAndExtend(L, Rewriter, LPM);
1852 RewriteLoopExitValues(L, Rewriter);
1855 NumElimIV += Rewriter.replaceCongruentIVs(L, DT, DeadInsts);
1873 Rewriter);
1879 Rewriter.clear();
1888 // The Rewriter may not be used from this point on.