Skip to content

Commit 3735bbb

Browse files
RISC-V: Add test for vec_duplicate + vmsleu.vv combine with GR2VR cost 0, 1 and 15
Add asm dump check and run test for vec_duplicate + vmsleu.vv combine to vmsleu.vx, with the GR2VR cost is 0, 2 and 15. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Add asm check for vmsleu.vx. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test helper macros. * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test data for run test. * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u16.c: New test. * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u32.c: New test. * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u64.c: New test. * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u8.c: New test. Signed-off-by: Pan Li <[email protected]>
1 parent 678d0e0 commit 3735bbb

File tree

17 files changed

+208
-0
lines changed

17 files changed

+208
-0
lines changed

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ TEST_WIDEN_TERNARY_VX_UNSIGNED(T, NT)
3939
/* { dg-final { scan-assembler-times {vmseq.vx} 1 } } */
4040
/* { dg-final { scan-assembler-times {vmsne.vx} 1 } } */
4141
/* { dg-final { scan-assembler-times {vmsltu.vx} 1 } } */
42+
/* { dg-final { scan-assembler-times {vmsleu.vx} 1 } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,3 +42,4 @@ TEST_WIDEN_TERNARY_VX_UNSIGNED(T, NT)
4242
/* { dg-final { scan-assembler-times {vmseq.vx} 1 } } */
4343
/* { dg-final { scan-assembler-times {vmsne.vx} 1 } } */
4444
/* { dg-final { scan-assembler-times {vmsltu.vx} 1 } } */
45+
/* { dg-final { scan-assembler-times {vmsleu.vx} 1 } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,4 @@ TEST_TERNARY_VX_UNSIGNED_0(T)
2929
/* { dg-final { scan-assembler-times {vmseq.vx} 1 } } */
3030
/* { dg-final { scan-assembler-times {vmsne.vx} 1 } } */
3131
/* { dg-final { scan-assembler-times {vmsltu.vx} 1 } } */
32+
/* { dg-final { scan-assembler-times {vmsleu.vx} 1 } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ TEST_WIDEN_TERNARY_VX_UNSIGNED(T, NT)
3939
/* { dg-final { scan-assembler-not {vmseq.vx} } } */
4040
/* { dg-final { scan-assembler-not {vmsne.vx} } } */
4141
/* { dg-final { scan-assembler-not {vmsltu.vx} } } */
42+
/* { dg-final { scan-assembler-not {vmsleu.vx} } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ TEST_WIDEN_TERNARY_VX_UNSIGNED(T, NT)
3939
/* { dg-final { scan-assembler-not {vmseq.vx} } } */
4040
/* { dg-final { scan-assembler-not {vmsne.vx} } } */
4141
/* { dg-final { scan-assembler-not {vmsltu.vx} } } */
42+
/* { dg-final { scan-assembler-not {vmsleu.vx} } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ TEST_WIDEN_TERNARY_VX_UNSIGNED(T, NT)
3939
/* { dg-final { scan-assembler-not {vmseq.vx} } } */
4040
/* { dg-final { scan-assembler-not {vmsne.vx} } } */
4141
/* { dg-final { scan-assembler-not {vmsltu.vx} } } */
42+
/* { dg-final { scan-assembler-not {vmsleu.vx} } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,4 @@ TEST_TERNARY_VX_UNSIGNED_0(T)
2929
/* { dg-final { scan-assembler-not {vmseq.vx} } } */
3030
/* { dg-final { scan-assembler-not {vmsne.vx} } } */
3131
/* { dg-final { scan-assembler-not {vmsltu.vx} } } */
32+
/* { dg-final { scan-assembler-not {vmsleu.vx} } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ TEST_WIDEN_TERNARY_VX_UNSIGNED(T, NT)
3939
/* { dg-final { scan-assembler-not {vmseq.vx} } } */
4040
/* { dg-final { scan-assembler-not {vmsne.vx} } } */
4141
/* { dg-final { scan-assembler-not {vmsltu.vx} } } */
42+
/* { dg-final { scan-assembler-not {vmsleu.vx} } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ TEST_WIDEN_TERNARY_VX_UNSIGNED(T, NT)
3939
/* { dg-final { scan-assembler-not {vmseq.vx} } } */
4040
/* { dg-final { scan-assembler-not {vmsne.vx} } } */
4141
/* { dg-final { scan-assembler-not {vmsltu.vx} } } */
42+
/* { dg-final { scan-assembler-not {vmsleu.vx} } } */

gcc/testsuite/gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ TEST_WIDEN_TERNARY_VX_UNSIGNED(T, NT)
3939
/* { dg-final { scan-assembler-not {vmseq.vx} } } */
4040
/* { dg-final { scan-assembler-not {vmsne.vx} } } */
4141
/* { dg-final { scan-assembler-not {vmsltu.vx} } } */
42+
/* { dg-final { scan-assembler-not {vmsleu.vx} } } */

0 commit comments

Comments
 (0)