diff options
author | Philipp Tomsich <philipp.tomsich@vrull.eu> | 2021-11-14 22:56:19 +0100 |
---|---|---|
committer | Philipp Tomsich <philipp.tomsich@vrull.eu> | 2022-11-14 19:49:52 +0100 |
commit | 991cfe5b30cb06611aa03d8c67860552785faba8 (patch) | |
tree | 805adbd6c218521eac65f10d0af00068c3fc5b93 /gcc/cp | |
parent | b4fca4fc70dc76cf18406fd2b046c834d976aa90 (diff) | |
download | gcc-991cfe5b30cb06611aa03d8c67860552785faba8.zip gcc-991cfe5b30cb06611aa03d8c67860552785faba8.tar.gz gcc-991cfe5b30cb06611aa03d8c67860552785faba8.tar.bz2 |
RISC-V: Add instruction fusion (for ventana-vt1)
The Ventana VT1 core supports quad-issue and instruction fusion.
This implemented TARGET_SCHED_MACRO_FUSION_P to keep fusible sequences
together and adds idiom matcheing for the supported fusion cases.
gcc/ChangeLog:
* config/riscv/riscv.cc (enum riscv_fusion_pairs): Add symbolic
constants to identify supported fusion patterns.
(struct riscv_tune_param): Add fusible_op field.
(riscv_macro_fusion_p): Implement.
(riscv_fusion_enabled_p): Implement.
(riscv_macro_fusion_pair_p): Implement and recognize fusible
idioms for Ventana VT1.
(TARGET_SCHED_MACRO_FUSION_P): Point to riscv_macro_fusion_p.
(TARGET_SCHED_MACRO_FUSION_PAIR_P): Point to
riscv_macro_fusion_pair_p.
Diffstat (limited to 'gcc/cp')
0 files changed, 0 insertions, 0 deletions