diff options
author | Wilco Dijkstra <wdijkstr@arm.com> | 2021-05-24 14:31:37 +0100 |
---|---|---|
committer | Wilco Dijkstra <wdijkstr@arm.com> | 2021-05-24 15:00:42 +0100 |
commit | b326f495218a213079f572bd9960903b3425da74 (patch) | |
tree | d7343bdefe1ce099f5242135c878c9dcb8645be3 /gcc | |
parent | fb0746f3a6b7fd0223efa71d0dc3fc02166e338b (diff) | |
download | gcc-b326f495218a213079f572bd9960903b3425da74.zip gcc-b326f495218a213079f572bd9960903b3425da74.tar.gz gcc-b326f495218a213079f572bd9960903b3425da74.tar.bz2 |
AArch64: Enable fast shifts on Neoverse N1
Enable the fast shift feature in Neoverse N1 tuning - this means additions with
a shift left by 1-4 are as fast as addition. This improves multiply by constant
expansions, eg. x * 25 is now emitted using shifts rather than a multiply:
add w0, w0, w0, lsl 2
add w0, w0, w0, lsl 2
ChangeLog:
2020-09-11 Wilco Dijkstra <wdijkstr@arm.com>
* config/aarch64/aarch64.c (neoversen1_tunings):
Enable AARCH64_EXTRA_TUNE_CHEAP_SHIFT_EXTEND.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/aarch64/aarch64.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index e9f961d..2753c85 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -1659,7 +1659,7 @@ static const struct tune_params neoversen1_tunings = 2, /* min_div_recip_mul_df. */ 0, /* max_case_values. */ tune_params::AUTOPREFETCHER_WEAK, /* autoprefetcher_model. */ - (AARCH64_EXTRA_TUNE_NONE), /* tune_flags. */ + (AARCH64_EXTRA_TUNE_CHEAP_SHIFT_EXTEND), /* tune_flags. */ &generic_prefetch_tune }; |