Lines Matching refs:IncExpr
1852 const SCEV *IncExpr; member
1855 : UserInst(U), IVOperand(O), IncExpr(E) {} in IVInc()
1890 const SCEV *IncExpr,
2801 const SCEV *IncExpr, in isProfitableIncrement() argument
2809 if (!isa<SCEVConstant>(IncExpr)) { in isProfitableIncrement()
2816 return !isHighCostExpansion(IncExpr, Processed, SE); in isProfitableIncrement()
2854 && SE.getSCEV(Chain.tailUserInst()) == Chain.Incs[0].IncExpr) { in isProfitableChain()
2868 if (Inc.IncExpr->isZero()) in isProfitableChain()
2873 if (isa<SCEVConstant>(Inc.IncExpr)) { in isProfitableChain()
2878 if (Inc.IncExpr == LastIncExpr) in isProfitableChain()
2883 LastIncExpr = Inc.IncExpr; in isProfitableChain()
2940 const SCEV *IncExpr = SE.getMinusSCEV(OperExpr, PrevExpr); in ChainInstruction() local
2941 if (!SE.isLoopInvariant(IncExpr, L)) in ChainInstruction()
2944 if (Chain.isProfitableIncrement(OperExpr, IncExpr, SE)) { in ChainInstruction()
2945 LastIncExpr = IncExpr; in ChainInstruction()
3122 static bool canFoldIVIncExpr(const SCEV *IncExpr, Instruction *UserInst, in canFoldIVIncExpr() argument
3124 const SCEVConstant *IncConst = dyn_cast<SCEVConstant>(IncExpr); in canFoldIVIncExpr()
3163 if (SE.getSCEV(*IVOpIter) == Head.IncExpr in GenerateIVChain()
3164 || SE.getSCEV(IVSrc) == Head.IncExpr) { in GenerateIVChain()
3188 if (!Inc.IncExpr->isZero()) { in GenerateIVChain()
3191 const SCEV *IncExpr = SE.getNoopOrSignExtend(Inc.IncExpr, IntTy); in GenerateIVChain() local
3193 SE.getAddExpr(LeftOverExpr, IncExpr) : IncExpr; in GenerateIVChain()