[llvm] [VPlan] Expand affine AddRecs to VPInstructions (PR #209921)

Mel Chen via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 16 02:36:04 PDT 2026


================
@@ -2157,6 +2155,8 @@ define void @iv_start_is_addrec(ptr %p, ptr noalias %q) {
 ; CHECK-NEXT:    [[INDEX:%.*]] = phi i64 [ 0, %[[VECTOR_PH]] ], [ [[CURRENT_ITERATION_NEXT:%.*]], %[[VECTOR_BODY]] ]
 ; CHECK-NEXT:    [[AVL:%.*]] = phi i64 [ 129, %[[VECTOR_PH]] ], [ [[AVL_NEXT:%.*]], %[[VECTOR_BODY]] ]
 ; CHECK-NEXT:    [[TMP2:%.*]] = call i32 @llvm.experimental.get.vector.length.i64(i64 [[AVL]], i32 8, i1 true)
+; CHECK-NEXT:    [[TMP1:%.*]] = shl i64 [[INDEX]], 2
+; CHECK-NEXT:    [[SCEVGEP:%.*]] = getelementptr i8, ptr [[P]], i64 [[TMP1]]
----------------
Mel-Chen wrote:

I wonder if this is really beneficial. Wouldn't this actually introduce more shl + gep calculations?

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


More information about the llvm-commits mailing list