[llvm] [loop-vectorize] Fix crash when using types that aren't known scale factors (PR #136680)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 22 06:15:05 PDT 2025
================
@@ -1030,6 +1030,27 @@ for.body: ; preds = %for.body.preheader,
br i1 %exitcond.not, label %for.cond.cleanup, label %for.body, !loop !1
}
+
+define i40 @chained_partial_reduce_not_known_factor(i32 %a, i32 %b, i32 %N) {
+entry:
+ br label %for.body
+
+for.body:
+ %red = phi i40 [ 0, %entry ], [ %1, %for.body ]
+ %iv = phi i16 [ 0, %entry ], [ %iv.next, %for.body ]
+ %resize = sext i32 %a to i40
+ %resize4 = sext i32 %b to i40
+ %0 = or i40 %resize4, %resize
+ %1 = or i40 %red, %0
+ %iv.next = add i16 %iv, 1
+ %cmp = icmp slt i16 %iv, 1
----------------
fhahn wrote:
Does this also reproduce with more iterations? If so, would be good increase iterations to make things more robust in case we ever decide to bail out for low iteration loops early.
https://github.com/llvm/llvm-project/pull/136680
More information about the llvm-commits
mailing list