RISC-V: Support VLS modes vec_init auto-vectorization
There are multiple SLP dump FAILs in vect testsuite. After analysis, confirm we are missing vec_init for VLS modes. This patch is not sufficient to fix those FAILs (We need more VLS patterns will send them soon). This patch is the prerequsite patch for fixing those SLP FAILs. Finish the whole regression. Ok for trunk ? gcc/ChangeLog: * config/riscv/autovec.md: Extend VLS modes. * config/riscv/vector.md: Ditto. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/vls/def.h: Add VLS vec_init tests. * gcc.target/riscv/rvv/autovec/vls/init-1.c: New test. * gcc.target/riscv/rvv/autovec/vls/init-2.c: New test. * gcc.target/riscv/rvv/autovec/vls/init-3.c: New test. * gcc.target/riscv/rvv/autovec/vls/init-4.c: New test. * gcc.target/riscv/rvv/autovec/vls/init-5.c: New test. * gcc.target/riscv/rvv/autovec/vls/init-6.c: New test. * gcc.target/riscv/rvv/autovec/vls/init-7.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-1.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-2.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-3.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-4.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-5.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-6.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-7.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-8.c: New test. * gcc.target/riscv/rvv/autovec/vls/repeat-9.c: New test.
Showing
- gcc/config/riscv/autovec.md 1 addition, 1 deletiongcc/config/riscv/autovec.md
- gcc/config/riscv/vector.md 34 additions, 34 deletionsgcc/config/riscv/vector.md
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/def.h 143 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/def.h
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-1.c 46 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-1.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-2.c 48 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-2.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-3.c 27 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-3.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-4.c 48 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-4.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-5.c 26 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-5.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-6.c 48 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-6.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-7.c 26 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-7.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-1.c 654 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-1.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-2.c 654 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-2.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-3.c 337 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-3.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-4.c 337 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-4.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-5.c 178 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-5.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-6.c 178 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-6.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-7.c 53 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-7.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-8.c 337 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-8.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-9.c 178 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-9.c
Loading
Please register or sign in to comment