aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2021-08-03 13:00:49 +0100
committerRichard Sandiford <richard.sandiford@arm.com>2021-08-03 13:00:49 +0100
commit048039c49b96875144f67e7789fdea54abf7710b (patch)
tree66aa1cc477b2c9289b5a5990dac0d9401d52a32d /libgcc
parent9690309baf8294b0512b55b133bc102dc0dac5b5 (diff)
downloadgcc-048039c49b96875144f67e7789fdea54abf7710b.zip
gcc-048039c49b96875144f67e7789fdea54abf7710b.tar.gz
gcc-048039c49b96875144f67e7789fdea54abf7710b.tar.bz2
aarch64: Add -mtune=neoverse-512tvb
This patch adds an option to tune for Neoverse cores that have a total vector bandwidth of 512 bits (4x128 for Advanced SIMD and a vector-length-dependent equivalent for SVE). This is intended to be a compromise between tuning aggressively for a single core like Neoverse V1 (which can be too narrow) and tuning for AArch64 cores in general (which can be too wide). -mcpu=neoverse-512tvb is equivalent to -mcpu=neoverse-v1 -mtune=neoverse-512tvb. gcc/ * doc/invoke.texi: Document -mtune=neoverse-512tvb and -mcpu=neoverse-512tvb. * config/aarch64/aarch64-cores.def (neoverse-512tvb): New entry. * config/aarch64/aarch64-tune.md: Regenerate. * config/aarch64/aarch64.c (neoverse512tvb_sve_vector_cost) (neoverse512tvb_sve_issue_info, neoverse512tvb_vec_issue_info) (neoverse512tvb_vector_cost, neoverse512tvb_tunings): New structures. (aarch64_adjust_body_cost_sve): Handle -mtune=neoverse-512tvb. (aarch64_adjust_body_cost): Likewise.
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions