Lines Matching defs:IndVar
185 static Value *findFinalIVValue(const Loop &L, const PHINode &IndVar,
193 if (Op0 == &IndVar || Op0 == &StepInst)
196 if (Op1 == &IndVar || Op1 == &StepInst)
203 Loop::LoopBounds::getBounds(const Loop &L, PHINode &IndVar,
206 if (!InductionDescriptor::isInductionPHI(&IndVar, &L, &SE, IndDesc))
223 Value *FinalIVValue = findFinalIVValue(L, IndVar, *StepInst);
289 if (PHINode *IndVar = getInductionVariable(SE))
290 return LoopBounds::getBounds(*this, *IndVar, SE);
308 for (PHINode &IndVar : Header->phis()) {
310 if (!InductionDescriptor::isInductionPHI(&IndVar, this, &SE, IndDesc))
314 Value *StepInst = IndVar.getIncomingValueForBlock(Latch);
317 // IndVar = phi[{InitialValue, preheader}, {StepInst, latch}]
318 // StepInst = IndVar + step
321 return &IndVar;
324 // IndVar = phi[{InitialValue, preheader}, {StepInst, latch}]
325 // StepInst = IndVar + step
326 // cmp = IndVar < FinalValue
327 if (&IndVar == LatchCmpOp0 || &IndVar == LatchCmpOp1)
328 return &IndVar;
336 if (PHINode *IndVar = getInductionVariable(SE))
337 return InductionDescriptor::isInductionPHI(IndVar, this, &SE, IndDesc);