Lines Matching refs:IVSrc
2805 Value *IVSrc = 0;
2807 IVSrc = getWideOperand(*IVOpIter);
2810 // it. (Check this after setting IVSrc which is used below.)
2812 // Note that if Head.IncExpr is wider than IVSrc, then this phi is too
2816 // getSCEV(IVSrc) == IncExpr.
2818 || SE.getSCEV(IVSrc) == Head.IncExpr) {
2829 DEBUG(dbgs() << "Generate chain at: " << *IVSrc << "\n");
2830 Type *IVTy = IVSrc->getType();
2840 // IVOper will replace the current IV User's operand. IVSrc is the IV
2842 Value *IVOper = IVSrc;
2854 const SCEV *IVOperExpr = SE.getAddExpr(SE.getUnknown(IVSrc),
2862 IVSrc = IVOper;
2881 if (!isCompatibleIVType(Phi, IVSrc))
2885 if (!PostIncV || (SE.getSCEV(PostIncV) != SE.getSCEV(IVSrc)))
2887 Value *IVOper = IVSrc;
2893 IVOper = Builder.CreatePointerCast(IVSrc, PostIncTy, "lsr.chain");