-
- Downloads
RISC-V: Fix wrong vsetvli fusion for vmv.s.x
gcc/ChangeLog: * config/riscv/riscv-vsetvl.cc (reg_available_p): Fix bugs. (pass_vsetvl::compute_local_backward_infos): Fix bugs. (pass_vsetvl::need_vsetvl): Fix bugs. (pass_vsetvl::backward_demand_fusion): Fix bugs. (pass_vsetvl::demand_fusion): Fix bugs. (eliminate_insn): Fix bugs. (insert_vsetvl): Ditto. (pass_vsetvl::emit_local_forward_vsetvls): Ditto. * config/riscv/riscv-vsetvl.h (enum vsetvl_type): Ditto. * config/riscv/vector.md: Ditto. gcc/testsuite/ChangeLog: * g++.target/riscv/rvv/base/bug-10.C: New test. * g++.target/riscv/rvv/base/bug-11.C: New test. * g++.target/riscv/rvv/base/bug-12.C: New test. * g++.target/riscv/rvv/base/bug-13.C: New test. * g++.target/riscv/rvv/base/bug-14.C: New test. * g++.target/riscv/rvv/base/bug-15.C: New test. * g++.target/riscv/rvv/base/bug-16.C: New test. * g++.target/riscv/rvv/base/bug-17.C: New test. * g++.target/riscv/rvv/base/bug-2.C: New test. * g++.target/riscv/rvv/base/bug-3.C: New test. * g++.target/riscv/rvv/base/bug-4.C: New test. * g++.target/riscv/rvv/base/bug-5.C: New test. * g++.target/riscv/rvv/base/bug-6.C: New test. * g++.target/riscv/rvv/base/bug-7.C: New test. * g++.target/riscv/rvv/base/bug-8.C: New test. * g++.target/riscv/rvv/base/bug-9.C: New test. Signed-off-by:Ju-Zhe Zhong <juzhe.zhong@rivai.ai> Co-authored-by:
kito-cheng <kito.cheng@sifive.com>
Showing
- gcc/config/riscv/riscv-vsetvl.cc 36 additions, 20 deletionsgcc/config/riscv/riscv-vsetvl.cc
- gcc/config/riscv/riscv-vsetvl.h 1 addition, 0 deletionsgcc/config/riscv/riscv-vsetvl.h
- gcc/config/riscv/vector.md 2 additions, 2 deletionsgcc/config/riscv/vector.md
- gcc/testsuite/g++.target/riscv/rvv/base/bug-10.C 378 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-10.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-11.C 463 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-11.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-12.C 410 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-12.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-13.C 481 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-13.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-14.C 428 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-14.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-15.C 381 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-15.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-16.C 443 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-16.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-17.C 406 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-17.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-2.C 473 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-2.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-3.C 385 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-3.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-4.C 417 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-4.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-5.C 416 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-5.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-6.C 321 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-6.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-7.C 278 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-7.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-8.C 412 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-8.C
- gcc/testsuite/g++.target/riscv/rvv/base/bug-9.C 579 additions, 0 deletionsgcc/testsuite/g++.target/riscv/rvv/base/bug-9.C
Loading
Please register or sign in to comment