================ @@ -489,15 +489,18 @@ void VPlanTransforms::removeDeadRecipes(VPlan &Plan) { } } -static VPValue *createScalarIVSteps(VPlan &Plan, const InductionDescriptor &ID, +static VPValue *createScalarIVSteps(VPlan &Plan, + InductionDescriptor::InductionKind Kind, ScalarEvolution &SE, Instruction *TruncI, VPValue *StartV, VPValue *Step, - VPBasicBlock::iterator IP) { + Instruction::BinaryOps InductionOpcode, + VPBasicBlock::iterator IP, + FPMathOperator *FPBinOp = nullptr) { VPBasicBlock *HeaderVPBB = Plan.getVectorLoopRegion()->getEntryBasicBlock(); VPCanonicalIVPHIRecipe *CanonicalIV = Plan.getCanonicalIV(); VPSingleDefRecipe *BaseIV = CanonicalIV; - if (!CanonicalIV->isCanonical(ID.getKind(), StartV, Step)) { - BaseIV = new VPDerivedIVRecipe(ID, StartV, CanonicalIV, Step); + if (!CanonicalIV->isCanonical(Kind, StartV, Step)) { + BaseIV = new VPDerivedIVRecipe(Kind, StartV, CanonicalIV, Step, FPBinOp); ---------------- ayalz wrote:
Should this refactoring to accept and pass Kind instead of ID be pushed as a separate simplifying preparation? https://github.com/llvm/llvm-project/pull/80273 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits