aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorTejas Joshi <TejasSanjay.Joshi@amd.com>2022-06-28 16:33:53 +0530
committerVenkataramanan Kumar <Venkataramanan.Kumar@amd.com>2022-10-21 15:25:57 +0530
commitbf3b532b524ecacb3202ab2c8af419ffaaab7cff (patch)
tree0fbde96ab28f9269588ac179f880ca78e95ef4fb /gcc/config.gcc
parent88b34661f73e9da8032d20a37299223b39db4ef9 (diff)
downloadgcc-bf3b532b524ecacb3202ab2c8af419ffaaab7cff.zip
gcc-bf3b532b524ecacb3202ab2c8af419ffaaab7cff.tar.gz
gcc-bf3b532b524ecacb3202ab2c8af419ffaaab7cff.tar.bz2
Enable AMD znver4 support and add instruction reservations
2022-09-28 Tejas Joshi <TejasSanjay.Joshi@amd.com> gcc/ChangeLog: * common/config/i386/cpuinfo.h (get_amd_cpu): Recognize znver4. * common/config/i386/i386-common.cc (processor_names): Add znver4. (processor_alias_table): Add znver4 and modularize old znvers. * common/config/i386/i386-cpuinfo.h (processor_subtypes): AMDFAM19H_ZNVER4. * config.gcc (x86_64-*-* |...): Likewise. * config/i386/driver-i386.cc (host_detect_local_cpu): Let -march=native recognize znver4 cpus. * config/i386/i386-c.cc (ix86_target_macros_internal): Add znver4. * config/i386/i386-options.cc (m_ZNVER4): New definition. (m_ZNVER): Include m_ZNVER4. (processor_cost_table): Add znver4. * config/i386/i386.cc (ix86_reassociation_width): Likewise. * config/i386/i386.h (processor_type): Add PROCESSOR_ZNVER4. (PTA_ZNVER1): New definition. (PTA_ZNVER2): Likewise. (PTA_ZNVER3): Likewise. (PTA_ZNVER4): Likewise. * config/i386/i386.md (define_attr "cpu"): Add znver4 and rename md file. * config/i386/x86-tune-costs.h (znver4_cost): New definition. * config/i386/x86-tune-sched.cc (ix86_issue_rate): Add znver4. (ix86_adjust_cost): Likewise. * config/i386/znver1.md: Rename to znver.md. * config/i386/znver.md: Add new reservations for znver4. * doc/extend.texi: Add details about znver4. * doc/invoke.texi: Likewise. gcc/testsuite/ChangeLog: * gcc.target/i386/funcspec-56.inc: Handle new march. * g++.target/i386/mv29.C: Likewise.
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc10
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index a3d336e..160c52c 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -660,7 +660,7 @@ c7 esther"
# 64-bit x86 processors supported by --with-arch=. Each processor
# MUST be separated by exactly one space.
x86_64_archs="amdfam10 athlon64 athlon64-sse3 barcelona bdver1 bdver2 \
-bdver3 bdver4 znver1 znver2 znver3 btver1 btver2 k8 k8-sse3 opteron \
+bdver3 bdver4 znver1 znver2 znver3 znver4 btver1 btver2 k8 k8-sse3 opteron \
opteron-sse3 nocona core2 corei7 corei7-avx core-avx-i core-avx2 atom \
slm nehalem westmere sandybridge ivybridge haswell broadwell bonnell \
silvermont knl knm skylake-avx512 cannonlake icelake-client icelake-server \
@@ -3643,6 +3643,10 @@ case ${target} in
arch=znver3
cpu=znver3
;;
+ znver4-*)
+ arch=znver4
+ cpu=znver4
+ ;;
bdver4-*)
arch=bdver4
cpu=bdver4
@@ -3772,6 +3776,10 @@ case ${target} in
arch=znver3
cpu=znver3
;;
+ znver4-*)
+ arch=znver4
+ cpu=znver4
+ ;;
bdver4-*)
arch=bdver4
cpu=bdver4