Skip to content

Commit ffaaace

Browse files
committed
[RISCV] Add test for vmv.s.x into a zeroinitializer vector. NFC
This is generated by the loop vectorizer for out-of-loop add reductions with some starting value
1 parent 3843dfe commit ffaaace

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

llvm/test/CodeGen/RISCV/rvv/insertelt-int-rv64.ll

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -757,3 +757,18 @@ define <vscale x 8 x i64> @insertelt_nxv8i64_idx(<vscale x 8 x i64> %v, i64 %elt
757757
%r = insertelement <vscale x 8 x i64> %v, i64 %elt, i32 %idx
758758
ret <vscale x 8 x i64> %r
759759
}
760+
761+
define <vscale x 4 x i32> @insertelt_nxv4i32_zeroinitializer_0(i32 %x) {
762+
; CHECK-LABEL: insertelt_nxv4i32_zeroinitializer_0:
763+
; CHECK: # %bb.0:
764+
; CHECK-NEXT: vsetvli a1, zero, e32, m1, ta, ma
765+
; CHECK-NEXT: vmv.v.i v10, 0
766+
; CHECK-NEXT: vsetvli zero, zero, e32, m1, tu, ma
767+
; CHECK-NEXT: vmv.s.x v10, a0
768+
; CHECK-NEXT: vsetvli a0, zero, e32, m2, ta, ma
769+
; CHECK-NEXT: vmv.v.i v8, 0
770+
; CHECK-NEXT: vmv1r.v v8, v10
771+
; CHECK-NEXT: ret
772+
%v = insertelement <vscale x 4 x i32> zeroinitializer, i32 %x, i64 0
773+
ret <vscale x 4 x i32> %v
774+
}

0 commit comments

Comments
 (0)