Lines Matching defs:Step
457 Value *Step =
459 Value *Sub = Builder.CreateSub(ScalarTC, Step);
460 Value *Cmp = Builder.CreateICmp(CmpInst::Predicate::ICMP_UGT, ScalarTC, Step);
496 Value *Step = createStepForVF(Builder, IV->getType(), State.VF, Part);
497 return Builder.CreateAdd(IV, Step, Name, hasNoUnsignedWrap(),
1187 /// (StartIdx * Step, (StartIdx + 1) * Step, (StartIdx + 2) * Step, ...)
1190 static Value *getStepVector(Value *Val, Value *StartIdx, Value *Step,
1201 "Induction Step must be an integer or FP");
1202 assert(Step->getType() == STy && "Step has wrong type");
1220 Step = Builder.CreateVectorSplat(VLen, Step);
1221 assert(Step->getType() == Val->getType() && "Invalid step vec");
1224 Step = Builder.CreateMul(InitVec, Step);
1225 return Builder.CreateAdd(Val, Step, "induction");
1234 Step = Builder.CreateVectorSplat(VLen, Step);
1235 Value *MulOp = Builder.CreateFMul(InitVec, Step);
1274 Value *Step = State.get(getStepValue(), VPIteration(0, 0));
1287 Step = Builder.CreateTrunc(Step, TruncType);
1294 SplatStart, Zero, Step, ID.getInductionOpcode(), State.VF, State.Builder);
1300 if (Step->getType()->isIntegerTy()) {
1310 Type *StepType = Step->getType();
1312 if (Step->getType()->isFloatingPointTy())
1316 Value *Mul = Builder.CreateBinOp(MulOp, Step, RuntimeVF);
1406 /// variable on which to base the steps, \p Step is the size of the step.
1409 Value *Step = State.get(getStepValue(), VPIteration(0, 0));
1414 assert(BaseIVTy == Step->getType() && "Types of BaseIV and Step must match!");
1440 SplatStep = Builder.CreateVectorSplat(State.VF, Step);
1481 auto *Mul = Builder.CreateBinOp(MulOp, StartIdx, Step);
2431 VPValue *Step) const {
2440 if (Step->getDefiningRecipe())
2443 ConstantInt *StepC = dyn_cast<ConstantInt>(Step->getLiveInIRValue());