Lines Matching refs:IV
301 auto *IV = dyn_cast<VPWidenIntOrFpInductionRecipe>(&Phi); in removeRedundantInductionCasts() local
302 if (!IV || IV->getTruncInst()) in removeRedundantInductionCasts()
313 auto &Casts = IV->getInductionDescriptor().getCastInsts(); in removeRedundantInductionCasts()
314 VPValue *FindMyCast = IV; in removeRedundantInductionCasts()
327 FindMyCast->replaceAllUsesWith(IV); in removeRedundantInductionCasts()
386 auto *IV = dyn_cast<VPWidenIntOrFpInductionRecipe>(&Phi); in optimizeInductions() local
387 if (!IV) in optimizeInductions()
390 none_of(IV->users(), [IV](VPUser *U) { return U->usesScalars(IV); })) in optimizeInductions()
393 const InductionDescriptor &ID = IV->getInductionDescriptor(); in optimizeInductions()
396 Instruction *TruncI = IV->getTruncInst(); in optimizeInductions()
398 IV->getPHINode()->getType(), ID, Plan.getCanonicalIV(), in optimizeInductions()
399 IV->getStartValue(), Step, TruncI ? TruncI->getType() : nullptr); in optimizeInductions()
404 SetVector<VPUser *> Users(IV->user_begin(), IV->user_end()); in optimizeInductions()
406 if (HasOnlyVectorVFs && !U->usesScalars(IV)) in optimizeInductions()
409 if (U->getOperand(I) != IV) in optimizeInductions()