[llvm] [LV] Avoid adding stray predicates in isConsecutivePtr (PR #213662)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Sat Aug 8 05:57:30 PDT 2026


================
@@ -5,60 +5,100 @@
 ; convertToStridedAccesses uses the canonical IV type (i32) for the stride
 ; constant, but the pointer stride exceeds INT32_MAX on rv64 with a narrow IV.
 
-define void @stride_exceeds_i32_max(ptr noalias readonly %src, ptr noalias %dst, i16 %start) {
-; CHECK-LABEL: define void @stride_exceeds_i32_max(
+define void @stride_sext_exceeds_i32_max(ptr noalias readonly %src, ptr noalias %dst, i16 %start) {
+; CHECK-LABEL: define void @stride_sext_exceeds_i32_max(
 ; CHECK-SAME: ptr noalias readonly [[SRC:%.*]], ptr noalias [[DST:%.*]], i16 [[START:%.*]]) #[[ATTR0:[0-9]+]] {
 ; CHECK-NEXT:  [[ENTRY:.*:]]
 ; CHECK-NEXT:    [[TMP2:%.*]] = sub i16 -1, [[START]]
 ; CHECK-NEXT:    [[TMP3:%.*]] = zext i16 [[TMP2]] to i32
 ; CHECK-NEXT:    [[TMP4:%.*]] = add nuw nsw i32 [[TMP3]], 1
 ; CHECK-NEXT:    br label %[[VECTOR_SCEVCHECK:.*]]
 ; CHECK:       [[VECTOR_SCEVCHECK]]:
----------------
fhahn wrote:

nit: might be clearer to reset the name here

```suggestion
; CHECK:       [[VECTOR_PH]]:
```

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


More information about the llvm-commits mailing list