Skip to content

Commit c5f0c4a

Browse files
committed
[RISCV][IA] Add test coverage for vp.store of interleaveN with one active
1 parent cb63701 commit c5f0c4a

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1754,6 +1754,17 @@ define void @store_factor4_one_active(ptr %ptr, <4 x i32> %v) {
17541754
ret void
17551755
}
17561756

1757+
define void @vpstore_factor4_one_active(ptr %ptr, <4 x i32> %v) {
1758+
; CHECK-LABEL: vpstore_factor4_one_active:
1759+
; CHECK: # %bb.0:
1760+
; CHECK-NEXT: vsetivli zero, 4, e32, m1, ta, ma
1761+
; CHECK-NEXT: vsseg4e32.v v8, (a0)
1762+
; CHECK-NEXT: ret
1763+
%v0 = shufflevector <4 x i32> %v, <4 x i32> poison, <16 x i32> <i32 0, i32 undef, i32 undef, i32 undef, i32 1, i32 undef, i32 undef, i32 undef, i32 2, i32 undef, i32 undef, i32 undef, i32 3, i32 undef, i32 undef, i32 undef>
1764+
tail call void @llvm.vp.store.v16i32.p0(<16 x i32> %v0, ptr %ptr, <16 x i1> splat (i1 true), i32 16)
1765+
ret void
1766+
}
1767+
17571768
define void @store_factor4_one_active_idx1(ptr %ptr, <4 x i32> %v) {
17581769
; CHECK-LABEL: store_factor4_one_active_idx1:
17591770
; CHECK: # %bb.0:
@@ -1828,8 +1839,8 @@ define {<4 x i32>, <4 x i32>, <4 x i32>} @invalid_vp_mask(ptr %ptr) {
18281839
; RV32-NEXT: vle32.v v12, (a0), v0.t
18291840
; RV32-NEXT: li a0, 36
18301841
; RV32-NEXT: vmv.s.x v20, a1
1831-
; RV32-NEXT: lui a1, %hi(.LCPI53_0)
1832-
; RV32-NEXT: addi a1, a1, %lo(.LCPI53_0)
1842+
; RV32-NEXT: lui a1, %hi(.LCPI54_0)
1843+
; RV32-NEXT: addi a1, a1, %lo(.LCPI54_0)
18331844
; RV32-NEXT: vsetivli zero, 8, e32, m2, ta, ma
18341845
; RV32-NEXT: vle16.v v21, (a1)
18351846
; RV32-NEXT: vcompress.vm v8, v12, v11
@@ -1904,8 +1915,8 @@ define {<4 x i32>, <4 x i32>, <4 x i32>} @invalid_vp_evl(ptr %ptr) {
19041915
; RV32-NEXT: vmv.s.x v10, a0
19051916
; RV32-NEXT: li a0, 146
19061917
; RV32-NEXT: vmv.s.x v11, a0
1907-
; RV32-NEXT: lui a0, %hi(.LCPI54_0)
1908-
; RV32-NEXT: addi a0, a0, %lo(.LCPI54_0)
1918+
; RV32-NEXT: lui a0, %hi(.LCPI55_0)
1919+
; RV32-NEXT: addi a0, a0, %lo(.LCPI55_0)
19091920
; RV32-NEXT: vsetivli zero, 8, e32, m2, ta, ma
19101921
; RV32-NEXT: vle16.v v20, (a0)
19111922
; RV32-NEXT: li a0, 36

0 commit comments

Comments
 (0)