Skip to content

Commit f4adb1d

Browse files
committed
Precommit tests
1 parent 358165d commit f4adb1d

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,3 +194,16 @@ define <vscale x 2 x i32> @unfoldable_mismatched_sew(<vscale x 2 x i32> %passthr
194194
%b = call <vscale x 2 x i32> @llvm.riscv.vmv.v.v.nxv2i32(<vscale x 2 x i32> %passthru, <vscale x 2 x i32> %a.bitcast, iXLen %avl)
195195
ret <vscale x 2 x i32> %b
196196
}
197+
198+
define <vscale x 1 x i64> @undef_passthru(<vscale x 1 x i64> %passthru, <vscale x 1 x i64> %x, <vscale x 1 x i64> %y, iXLen %avl) {
199+
; CHECK-LABEL: undef_passthru:
200+
; CHECK: # %bb.0:
201+
; CHECK-NEXT: vsetvli zero, a0, e64, m1, tu, ma
202+
; CHECK-NEXT: vadd.vv v8, v9, v10
203+
; CHECK-NEXT: vsetvli zero, zero, e64, m1, ta, ma
204+
; CHECK-NEXT: vmv.v.v v8, v8
205+
; CHECK-NEXT: ret
206+
%a = call <vscale x 1 x i64> @llvm.riscv.vadd.nxv1i64.nxv1i64(<vscale x 1 x i64> %passthru, <vscale x 1 x i64> %x, <vscale x 1 x i64> %y, iXLen %avl)
207+
%b = call <vscale x 1 x i64> @llvm.riscv.vmv.v.v.nxv1i64(<vscale x 1 x i64> undef, <vscale x 1 x i64> %a, iXLen %avl)
208+
ret <vscale x 1 x i64> %b
209+
}

llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.mir

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,18 @@ body: |
1818
%y:gpr = ADDI $x0, 1
1919
%z:vr = PseudoVMV_V_V_M1 %passthru, %x, 4, 5 /* e32 */, 0 /* tu, mu */
2020
...
21+
---
22+
name: undef_passthru
23+
body: |
24+
bb.0:
25+
liveins: $v8
26+
; CHECK-LABEL: name: undef_passthru
27+
; CHECK: liveins: $v8
28+
; CHECK-NEXT: {{ $}}
29+
; CHECK-NEXT: %passthru:vr = COPY $v8
30+
; CHECK-NEXT: %x:vr = PseudoVADD_VV_M1 %passthru, $noreg, $noreg, 4, 5 /* e32 */, 0 /* tu, mu */
31+
; CHECK-NEXT: %y:vr = PseudoVMV_V_V_M1 $noreg, %x, 4, 5 /* e32 */, 1 /* ta, mu */
32+
%passthru:vr = COPY $v8
33+
%x:vr = PseudoVADD_VV_M1 %passthru, $noreg, $noreg, 4, 5 /* e32 */, 0 /* tu, mu */
34+
%y:vr = PseudoVMV_V_V_M1 $noreg, %x, 4, 5 /* e32 */, 1 /* ta, mu */
35+
...

0 commit comments

Comments
 (0)