aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.cc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2024-09-03 18:20:34 +0200
committerJan Hubicka <jh@suse.cz>2024-09-03 18:20:55 +0200
commitf0ab3de6ec0e3540f2e57f3f5628005f0a4e3fa5 (patch)
treec4e60e9e3cde89c03baa1d0699dd39de43688a97 /gcc/expr.cc
parent36f63000c6f869f4f5550780d77b381b1a8b1700 (diff)
downloadgcc-f0ab3de6ec0e3540f2e57f3f5628005f0a4e3fa5.zip
gcc-f0ab3de6ec0e3540f2e57f3f5628005f0a4e3fa5.tar.gz
gcc-f0ab3de6ec0e3540f2e57f3f5628005f0a4e3fa5.tar.bz2
Zen5 tuning part 4: update reassocation width
Zen5 has 6 instead of 4 ALUs and the integer multiplication can now execute in 3 of them. FP units can do 2 additions and 2 multiplications with latency 2 and 3. This patch updates reassociation width accordingly. This has potential of increasing register pressure but unlike while benchmarking znver1 tuning I did not noticed this actually causing problem on spec, so this patch bumps up reassociation width to 6 for everything except for integer vectors, where there are 4 units with typical latency of 1. Bootstrapped/regtested x86_64-linux, comitted. gcc/ChangeLog: * config/i386/i386.cc (ix86_reassociation_width): Update for Znver5. * config/i386/x86-tune-costs.h (znver5_costs): Update reassociation widths.
Diffstat (limited to 'gcc/expr.cc')
0 files changed, 0 insertions, 0 deletions