RISC-V: Optimize combine sequence by merge approach
gcc/ChangeLog: * config/riscv/riscv-v.cc (rvv_builder::combine_sequence_use_merge_profitable_p): New function. (expand_vector_init_merge_combine_sequence): Ditto. (expand_vec_init): Adapt for new optimization. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge-1.c: New test. * gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge-2.c: New test. * gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-1.c: New test. * gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-2.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-1.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-10.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-11.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-12.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-13.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-14.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-2.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-3.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-4.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-5.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-6.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-7.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-8.c: New test. * gcc.target/riscv/rvv/autovec/vls/combine-merge-9.c: New test.
Showing
- gcc/config/riscv/riscv-v.cc 88 additions, 1 deletiongcc/config/riscv/riscv-v.cc
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge-1.c 18 additions, 0 deletions.../gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge-1.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge-2.c 18 additions, 0 deletions.../gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge-2.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-1.c 30 additions, 0 deletions....target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-1.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-2.c 30 additions, 0 deletions....target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-2.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-1.c 179 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-1.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-10.c 98 additions, 0 deletions...suite/gcc.target/riscv/rvv/autovec/vls/combine-merge-10.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-11.c 98 additions, 0 deletions...suite/gcc.target/riscv/rvv/autovec/vls/combine-merge-11.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-12.c 178 additions, 0 deletions...suite/gcc.target/riscv/rvv/autovec/vls/combine-merge-12.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-13.c 98 additions, 0 deletions...suite/gcc.target/riscv/rvv/autovec/vls/combine-merge-13.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-14.c 98 additions, 0 deletions...suite/gcc.target/riscv/rvv/autovec/vls/combine-merge-14.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-2.c 97 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-2.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-3.c 97 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-3.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-4.c 97 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-4.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-5.c 98 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-5.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-6.c 97 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-6.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-7.c 97 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-7.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-8.c 337 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-8.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-9.c 178 additions, 0 deletions...tsuite/gcc.target/riscv/rvv/autovec/vls/combine-merge-9.c
Loading
Please register or sign in to comment