aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorLuis Machado <luis.machado@linaro.org>2018-05-24 14:37:21 +0000
committerLuis Machado <luisgpm@gcc.gnu.org>2018-05-24 14:37:21 +0000
commit8d39ea2f9d6fe301885a3ca1064ecec8e689ab12 (patch)
tree2465810209e53c4d8d5d181be2ae3de7d710e0f6 /gcc/config
parent1268ecc26fc1289b6e9a10b38fa18b4354460ef1 (diff)
downloadgcc-8d39ea2f9d6fe301885a3ca1064ecec8e689ab12.zip
gcc-8d39ea2f9d6fe301885a3ca1064ecec8e689ab12.tar.gz
gcc-8d39ea2f9d6fe301885a3ca1064ecec8e689ab12.tar.bz2
[AArch64, Falkor] Falkor address costs tuning
Switch from using generic address costs to using Falkor-specific ones, which give Falkor better results overall. gcc/ChangeLog: 2018-05-24 Luis Machado <luis.machado@linaro.org> * config/aarch64/aarch64.c (qdf24xx_addrcost_table): New static global. (qdf24xx_tunings) <addr_costs>: Set to qdf24xx_addrcost_table. From-SVN: r260675
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/aarch64/aarch64.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 9e385e0..04dedd2 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -317,6 +317,22 @@ static const struct cpu_addrcost_table thunderx2t99_addrcost_table =
0, /* imm_offset */
};
+static const struct cpu_addrcost_table qdf24xx_addrcost_table =
+{
+ {
+ 1, /* hi */
+ 1, /* si */
+ 1, /* di */
+ 2, /* ti */
+ },
+ 1, /* pre_modify */
+ 1, /* post_modify */
+ 3, /* register_offset */
+ 4, /* register_sextend */
+ 3, /* register_zextend */
+ 2, /* imm_offset */
+};
+
static const struct cpu_regmove_cost generic_regmove_cost =
{
1, /* GP2GP */
@@ -871,7 +887,7 @@ static const struct tune_params xgene1_tunings =
static const struct tune_params qdf24xx_tunings =
{
&qdf24xx_extra_costs,
- &generic_addrcost_table,
+ &qdf24xx_addrcost_table,
&qdf24xx_regmove_cost,
&generic_vector_cost,
&generic_branch_cost,