aboutsummaryrefslogtreecommitdiff
path: root/gcc/system.h
diff options
context:
space:
mode:
authorJuzhe-Zhong <juzhe.zhong@rivai.ai>2023-04-07 09:34:13 +0800
committerKito Cheng <kito.cheng@sifive.com>2023-04-21 14:46:03 +0800
commitd51f2456ee51bd59a79b4725ca0e488c25260bbf (patch)
tree14b2e7fb21a087de5a9bacf45acb526349530342 /gcc/system.h
parentce4e4f37fd12f4335c25f508f9fa40492a408556 (diff)
downloadgcc-d51f2456ee51bd59a79b4725ca0e488c25260bbf.zip
gcc-d51f2456ee51bd59a79b4725ca0e488c25260bbf.tar.gz
gcc-d51f2456ee51bd59a79b4725ca0e488c25260bbf.tar.bz2
RISC-V: Add local user vsetvl instruction elimination [PR109547]
This patch is to enhance optimization for auto-vectorization. Before this patch: Loop: vsetvl a5,a2... vsetvl zero,a5... vle After this patch: Loop: vsetvl a5,a2 vle gcc/ChangeLog: PR target/109547 * config/riscv/riscv-vsetvl.cc (local_eliminate_vsetvl_insn): New function. (vector_insn_info::skip_avl_compatible_p): Ditto. (vector_insn_info::merge): Remove default value. (pass_vsetvl::compute_local_backward_infos): Ditto. (pass_vsetvl::cleanup_insns): Add local vsetvl elimination. * config/riscv/riscv-vsetvl.h: Ditto. gcc/testsuite/ChangeLog: PR target/109547 * gcc.target/riscv/rvv/vsetvl/pr109547.c: New. * gcc.target/riscv/rvv/vsetvl/vsetvl-17.c: Update scan condition.
Diffstat (limited to 'gcc/system.h')
0 files changed, 0 insertions, 0 deletions