From: Pan Li <[email protected]>
Like v[sz]ext.vf8, we continue the support for vfw{add,sub,mul}.vf.
The below test suites are passed for this patch:
1. The rv64gcv fully regression tests.
Pan Li (5):
RISC-V: Allow RVV register overlap for vfw{add,sub,mul}.vf
RISC-V: Add test cases for vfwadd.vf reg overlap
RISC-V: Add test cases for vfwsub.vf reg overlap
RISC-V: Add test cases for vfwmul.vf reg overlap
RISC-V: Remove xfail of the vfwadd.vf reg overlap test case
gcc/config/riscv/vector.md | 20 +++++++++----------
.../autovec/group_overlap/vfwadd_vf-f16-m1.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwadd_vf-f16-m2.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwadd_vf-f16-m4.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwadd_vf-f16-mf2.c | 19 ++++++++++++++++++
.../autovec/group_overlap/vfwadd_vf-f16-mf4.c | 19 ++++++++++++++++++
.../autovec/group_overlap/vfwadd_vf-f32-m1.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwadd_vf-f32-m2.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwadd_vf-f32-m4.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwadd_vf-f32-mf2.c | 19 ++++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f16-m1.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f16-m2.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f16-m4.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f16-mf2.c | 19 ++++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f16-mf4.c | 19 ++++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f32-m1.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f32-m2.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f32-m4.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwmul_vf-f32-mf2.c | 19 ++++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f16-m1.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f16-m2.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f16-m4.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f16-mf2.c | 19 ++++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f16-mf4.c | 19 ++++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f32-m1.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f32-m2.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f32-m4.c | 18 +++++++++++++++++
.../autovec/group_overlap/vfwsub_vf-f32-mf2.c | 19 ++++++++++++++++++
.../gcc.target/riscv/rvv/base/pr112431-25.c | 2 +-
.../gcc.target/riscv/rvv/base/pr112431-26.c | 2 +-
.../gcc.target/riscv/rvv/base/pr112431-27.c | 2 +-
31 files changed, 508 insertions(+), 13 deletions(-)
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f16-m1.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f16-m2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f16-m4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f16-mf2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f16-mf4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f32-m1.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f32-m2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f32-m4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwadd_vf-f32-mf2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f16-m1.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f16-m2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f16-m4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f16-mf2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f16-mf4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f32-m1.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f32-m2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f32-m4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwmul_vf-f32-mf2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f16-m1.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f16-m2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f16-m4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f16-mf2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f16-mf4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f32-m1.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f32-m2.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f32-m4.c
create mode 100644
gcc/testsuite/gcc.target/riscv/rvv/autovec/group_overlap/vfwsub_vf-f32-mf2.c
--
2.43.0