diff options
author | Luis Machado <luis.machado@linaro.org> | 2018-05-24 14:37:21 +0000 |
---|---|---|
committer | Luis Machado <luisgpm@gcc.gnu.org> | 2018-05-24 14:37:21 +0000 |
commit | 8d39ea2f9d6fe301885a3ca1064ecec8e689ab12 (patch) | |
tree | 2465810209e53c4d8d5d181be2ae3de7d710e0f6 | |
parent | 1268ecc26fc1289b6e9a10b38fa18b4354460ef1 (diff) | |
download | gcc-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
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64.c | 18 |
2 files changed, 23 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1500fc0..1143e14 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +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. + 2018-05-24 Richard Sandiford <richard.sandiford@linaro.org> * match.pd: Delay FMA folds until after vectorization. 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, |