Skip to content

Commit 77047e3

Browse files
authored
[RISCV] Make vsetvli in test not loop invariant. NFC (llvm#92094)
The middle end will remove the inner vsetvli otherwise, and it's more typical to set the AVL to the remaining VL. This also prevents the test from showing up as a regression in llvm#91319
1 parent d3455f4 commit 77047e3

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -102,23 +102,23 @@ declare <vscale x 1 x i1> @llvm.riscv.vmand.nxv1i1.i64(<vscale x 1 x i1>, <vscal
102102
define void @test6(ptr nocapture readonly %A, ptr nocapture %B, i64 %n) {
103103
; CHECK-LABEL: test6:
104104
; CHECK: # %bb.0: # %entry
105-
; CHECK-NEXT: vsetvli a6, a2, e32, m1, ta, ma
106-
; CHECK-NEXT: beqz a6, .LBB5_3
105+
; CHECK-NEXT: vsetvli a2, a2, e32, m1, ta, ma
106+
; CHECK-NEXT: beqz a2, .LBB5_3
107107
; CHECK-NEXT: # %bb.1: # %for.body.preheader
108-
; CHECK-NEXT: li a4, 0
108+
; CHECK-NEXT: li a3, 0
109109
; CHECK-NEXT: .LBB5_2: # %for.body
110110
; CHECK-NEXT: # =>This Inner Loop Header: Depth=1
111-
; CHECK-NEXT: slli a3, a4, 2
112-
; CHECK-NEXT: add a5, a0, a3
111+
; CHECK-NEXT: slli a4, a3, 2
112+
; CHECK-NEXT: add a5, a0, a4
113113
; CHECK-NEXT: vle32.v v8, (a5)
114114
; CHECK-NEXT: vmsle.vi v9, v8, -3
115115
; CHECK-NEXT: vmsgt.vi v10, v8, 2
116116
; CHECK-NEXT: vmor.mm v0, v9, v10
117-
; CHECK-NEXT: add a3, a3, a1
118-
; CHECK-NEXT: vse32.v v8, (a3), v0.t
119-
; CHECK-NEXT: add a4, a4, a6
120-
; CHECK-NEXT: vsetvli a6, a2, e32, m1, ta, ma
121-
; CHECK-NEXT: bnez a6, .LBB5_2
117+
; CHECK-NEXT: add a4, a4, a1
118+
; CHECK-NEXT: vse32.v v8, (a4), v0.t
119+
; CHECK-NEXT: add a3, a3, a2
120+
; CHECK-NEXT: vsetvli a2, a2, e32, m1, ta, ma
121+
; CHECK-NEXT: bnez a2, .LBB5_2
122122
; CHECK-NEXT: .LBB5_3: # %for.cond.cleanup
123123
; CHECK-NEXT: ret
124124
entry:
@@ -142,7 +142,7 @@ for.body: ; preds = %entry, %for.body
142142
%7 = bitcast ptr %add.ptr1 to ptr
143143
tail call void @llvm.riscv.vse.mask.nxv2i32.i64(<vscale x 2 x i32> %3, ptr %7, <vscale x 2 x i1> %6, i64 %1)
144144
%add = add i64 %1, %i.012
145-
%8 = tail call i64 @llvm.riscv.vsetvli.i64(i64 %n, i64 2, i64 0)
145+
%8 = tail call i64 @llvm.riscv.vsetvli.i64(i64 %1, i64 2, i64 0)
146146
%cmp.not = icmp eq i64 %8, 0
147147
br i1 %cmp.not, label %for.cond.cleanup, label %for.body
148148
}

0 commit comments

Comments
 (0)