aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJocelyn Mayer <l_indien@magic.fr>2016-06-23 20:06:43 +0200
committerUros Bizjak <uros@gcc.gnu.org>2016-06-23 20:06:43 +0200
commita239d460519a9d8a4b7c973a3d9f3f356faf3e15 (patch)
tree2cddf38d560ad619793fd6892dd87d065a0022b7 /gcc
parentf6d1b868c179eb6ad51dcab054a59d1fa1f6fa9f (diff)
downloadgcc-a239d460519a9d8a4b7c973a3d9f3f356faf3e15.zip
gcc-a239d460519a9d8a4b7c973a3d9f3f356faf3e15.tar.gz
gcc-a239d460519a9d8a4b7c973a3d9f3f356faf3e15.tar.bz2
driver-i386.c (host_detect_local_cpu): Set PROCESSOR_PENTIUMPRO for signature_CENTAUR_ebx family >= 9.
* config/i386/driver-i386.c (host_detect_local_cpu): Set PROCESSOR_PENTIUMPRO for signature_CENTAUR_ebx family >= 9. <case PROCESSOR_PENTIMUMPRO>: Pass c7 or nehemiah for signature_CENTAUR_ebx. From-SVN: r237741
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/i386/driver-i386.c23
2 files changed, 23 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d70dc48..1a526b7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2016-06-23 Jocelyn Mayer <l_indien@magic.fr>
+
+ * config/i386/driver-i386.c (host_detect_local_cpu): Set
+ PROCESSOR_PENTIUMPRO for signature_CENTAUR_ebx family >= 9.
+ <case PROCESSOR_PENTIMUMPRO>: Pass c7 or nehemiah for
+ signature_CENTAUR_ebx.
+
2016-06-23 H.J. Lu <hongjiu.lu@intel.com>
PR target/66232
diff --git a/gcc/config/i386/driver-i386.c b/gcc/config/i386/driver-i386.c
index 9f44ee8..22a8f28 100644
--- a/gcc/config/i386/driver-i386.c
+++ b/gcc/config/i386/driver-i386.c
@@ -653,10 +653,7 @@ const char *host_detect_local_cpu (int argc, const char **argv)
case 6:
if (has_longmode)
processor = PROCESSOR_K8;
- else if (model > 9)
- /* Use the default detection procedure. */
- ;
- else if (model == 9)
+ else if (model >= 9)
processor = PROCESSOR_PENTIUMPRO;
else if (model >= 6)
processor = PROCESSOR_I486;
@@ -818,15 +815,27 @@ const char *host_detect_local_cpu (int argc, const char **argv)
as all the CPUs below are 32-bit only. */
cpu = "x86-64";
else if (has_sse3)
- /* It is Core Duo. */
- cpu = "pentium-m";
+ {
+ if (vendor == signature_CENTAUR_ebx)
+ /* C7 / Eden "Esther" */
+ cpu = "c7";
+ else
+ /* It is Core Duo. */
+ cpu = "pentium-m";
+ }
else if (has_sse2)
/* It is Pentium M. */
cpu = "pentium-m";
else if (has_sse)
{
if (vendor == signature_CENTAUR_ebx)
- cpu = "c3-2";
+ {
+ if (model >= 9)
+ /* Eden "Nehemiah" */
+ cpu = "nehemiah";
+ else
+ cpu = "c3-2";
+ }
else
/* It is Pentium III. */
cpu = "pentium3";