Set reasonable values for the INT/FP/VEC reassociation widths. I was
able to measure a significant speedup on a dependent FP chain (almost
2x faster) with this applied. I wasn't able to measure a clear
improvement on integer and vector, but I chose conservative values
for both.
gcc/ChangeLog:
* config/riscv/riscv.cc (tt_ascalon_d8_tune_info): Set
int_reassoc_width, fp_reassoc_width, and vec_reassoc_width.
---
gcc/config/riscv/riscv.cc | 3 +++
1 file changed, 3 insertions(+)
diff --git a/gcc/config/riscv/riscv.cc b/gcc/config/riscv/riscv.cc
index 87c24e5dcc1..0d75b890397 100644
--- a/gcc/config/riscv/riscv.cc
+++ b/gcc/config/riscv/riscv.cc
@@ -837,6 +837,9 @@ static const struct riscv_tune_param
tt_ascalon_d8_tune_info = {
NULL, /* jump_align */
NULL, /* loop_align */
true, /* prefer-agnostic. */
+ 4, /* int_reassoc_width. */
+ 4, /* fp_reassoc_width. */
+ 2, /* vec_reassoc_width. */
};
/* Costs to use when optimizing for size. */
--
2.34.1