[libcxx-commits] [libcxxabi] [flang] [libc] [llvm] [lld] [lldb] [compiler-rt] [clang-tools-extra] [clang] [libcxx] [libclc] [VPlan] Add new VPScalarCastRecipe, use for IV & step trunc. (PR #78113)

via libcxx-commits libcxx-commits at lists.llvm.org
Thu Jan 25 07:55:17 PST 2024


================
@@ -491,19 +491,41 @@ void VPlanTransforms::removeDeadRecipes(VPlan &Plan) {
 
 static VPValue *createScalarIVSteps(VPlan &Plan, const InductionDescriptor &ID,
                                     ScalarEvolution &SE, Instruction *TruncI,
-                                    Type *IVTy, VPValue *StartV,
-                                    VPValue *Step) {
+                                    VPValue *StartV, VPValue *Step) {
   VPBasicBlock *HeaderVPBB = Plan.getVectorLoopRegion()->getEntryBasicBlock();
   auto IP = HeaderVPBB->getFirstNonPhi();
   VPCanonicalIVPHIRecipe *CanonicalIV = Plan.getCanonicalIV();
-  Type *TruncTy = TruncI ? TruncI->getType() : IVTy;
   VPValue *BaseIV = CanonicalIV;
----------------
ayalz wrote:

nit: defining BaseIV as a VPSingleDefRecipe* rather than VPValue* will allow removal of ->getDefiningRecipe().

https://github.com/llvm/llvm-project/pull/78113


More information about the libcxx-commits mailing list