Skip to content

Commit 86ed6b4

Browse files
committed
!fixup typo and update test case.
Becaue the original test case will not vectorized anymore. Update the test case the will hit the bug.
1 parent 37e5559 commit 86ed6b4

File tree

2 files changed

+9
-8
lines changed

2 files changed

+9
-8
lines changed

llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4351,8 +4351,9 @@ void LoopVectorizationPlanner::emitInvalidCostRemarks(
43514351
for (const auto &Plan : VPlans) {
43524352
for (ElementCount VF : Plan->vectorFactors()) {
43534353
// The VPlan-based cost model is designed for computing vector cost.
4354-
// Quering VPlan-based cost model with scarlar VF will cause some error
4355-
// because we expect the VF is vector for most of the widen recipes.
4354+
// Querying VPlan-based cost model with a scarlar VF will cause some
4355+
// errors because we expect the VF is vector for most of the widen
4356+
// recipes.
43564357
if (VF.isScalar())
43574358
continue;
43584359

llvm/test/Transforms/LoopVectorize/RISCV/remark-reductions.ll

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ define void @s311() {
77
; CHECK-NEXT: [[ENTRY:.*]]:
88
; CHECK-NEXT: [[TMP0:%.*]] = call i32 @llvm.vscale.i32()
99
; CHECK-NEXT: [[TMP1:%.*]] = mul i32 [[TMP0]], 4
10-
; CHECK-NEXT: [[MIN_ITERS_CHECK:%.*]] = icmp ult i32 0, [[TMP1]]
10+
; CHECK-NEXT: [[MIN_ITERS_CHECK:%.*]] = icmp ult i32 1200, [[TMP1]]
1111
; CHECK-NEXT: br i1 [[MIN_ITERS_CHECK]], label %[[SCALAR_PH:.*]], label %[[VECTOR_PH:.*]]
1212
; CHECK: [[VECTOR_PH]]:
1313
; CHECK-NEXT: [[TMP2:%.*]] = call i32 @llvm.vscale.i32()
1414
; CHECK-NEXT: [[TMP3:%.*]] = mul i32 [[TMP2]], 4
15-
; CHECK-NEXT: [[N_MOD_VF:%.*]] = urem i32 0, [[TMP3]]
16-
; CHECK-NEXT: [[N_VEC:%.*]] = sub i32 0, [[N_MOD_VF]]
15+
; CHECK-NEXT: [[N_MOD_VF:%.*]] = urem i32 1200, [[TMP3]]
16+
; CHECK-NEXT: [[N_VEC:%.*]] = sub i32 1200, [[N_MOD_VF]]
1717
; CHECK-NEXT: [[TMP4:%.*]] = call i32 @llvm.vscale.i32()
1818
; CHECK-NEXT: [[TMP5:%.*]] = mul i32 [[TMP4]], 4
1919
; CHECK-NEXT: br label %[[VECTOR_BODY:.*]]
@@ -25,7 +25,7 @@ define void @s311() {
2525
; CHECK-NEXT: [[TMP7:%.*]] = icmp eq i32 [[INDEX_NEXT]], [[N_VEC]]
2626
; CHECK-NEXT: br i1 [[TMP7]], label %[[MIDDLE_BLOCK:.*]], label %[[VECTOR_BODY]], !llvm.loop [[LOOP0:![0-9]+]]
2727
; CHECK: [[MIDDLE_BLOCK]]:
28-
; CHECK-NEXT: [[CMP_N:%.*]] = icmp eq i32 0, [[N_VEC]]
28+
; CHECK-NEXT: [[CMP_N:%.*]] = icmp eq i32 1200, [[N_VEC]]
2929
; CHECK-NEXT: br i1 [[CMP_N]], label %[[EXIT:.*]], label %[[SCALAR_PH]]
3030
; CHECK: [[SCALAR_PH]]:
3131
; CHECK-NEXT: [[BC_RESUME_VAL:%.*]] = phi i32 [ [[N_VEC]], %[[MIDDLE_BLOCK]] ], [ 0, %[[ENTRY]] ]
@@ -36,7 +36,7 @@ define void @s311() {
3636
; CHECK-NEXT: [[RED:%.*]] = phi float [ [[BC_MERGE_RDX]], %[[SCALAR_PH]] ], [ [[RED_NEXT:%.*]], %[[LOOP]] ]
3737
; CHECK-NEXT: [[RED_NEXT]] = fadd float 0.000000e+00, [[RED]]
3838
; CHECK-NEXT: [[IV_NEXT]] = add i32 [[IV]], 1
39-
; CHECK-NEXT: [[EXITCOND:%.*]] = icmp eq i32 [[IV_NEXT]], 0
39+
; CHECK-NEXT: [[EXITCOND:%.*]] = icmp eq i32 [[IV_NEXT]], 1200
4040
; CHECK-NEXT: br i1 [[EXITCOND]], label %[[EXIT]], label %[[LOOP]], !llvm.loop [[LOOP3:![0-9]+]]
4141
; CHECK: [[EXIT]]:
4242
; CHECK-NEXT: [[RED_LCSSA:%.*]] = phi float [ [[RED_NEXT]], %[[LOOP]] ], [ [[TMP6]], %[[MIDDLE_BLOCK]] ]
@@ -50,7 +50,7 @@ loop:
5050
%red = phi float [ 0.000000e+00, %entry ], [ %red.next, %loop ]
5151
%red.next = fadd float 0.000000e+00, %red
5252
%iv.next = add i32 %iv, 1
53-
%exitcond = icmp eq i32 %iv.next, 0
53+
%exitcond = icmp eq i32 %iv.next, 1200
5454
br i1 %exitcond, label %exit, label %loop
5555

5656
exit:

0 commit comments

Comments
 (0)