]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR target/57927 (-march=core-avx2 different than -march=native on INTEL Haswell...
authorChristian Widmer <shadow@umbrox.de>
Tue, 27 Aug 2013 17:24:37 +0000 (17:24 +0000)
committerUros Bizjak <uros@gcc.gnu.org>
Tue, 27 Aug 2013 17:24:37 +0000 (19:24 +0200)
PR target/57927
* config/i386/driver-i386.c (host_detect_local_cpu): Add detection
of Ivy Bridge and Haswell processors.  Assume core-avx2 for unknown
AVX2 capable processors.

From-SVN: r202026

gcc/ChangeLog
gcc/config/i386/driver-i386.c

index 902293b25f8acbc92e4a36ae74d95da01bb0e252..9698dc910184135626b19e0dfff935cdc47d6c8b 100644 (file)
@@ -1,3 +1,10 @@
+2013-08-27  Christian Widmer  <shadow@umbrox.de>
+
+       PR target/57927
+       * config/i386/driver-i386.c (host_detect_local_cpu): Add detection
+       of Ivy Bridge and Haswell processors.  Assume core-avx2 for unknown
+       AVX2 capable processors.
+
 2013-08-27  Tejas Belagod  <tejas.belagod@arm.com>
 
        * config/aarch64/arm_neon.h: Replace all inline asm implementations
index ee7ed23c8bb9ffa17650392dc2bb432d3ad413aa..001d12fd241066bd50bffa1c62bf38e6bd7a8c92 100644 (file)
@@ -644,13 +644,18 @@ const char *host_detect_local_cpu (int argc, const char **argv)
          /* Atom.  */
          cpu = "atom";
          break;
+       case 0x0f:
+         /* Merom.  */
+       case 0x17:
+       case 0x1d:
+         /* Penryn.  */
+         cpu = "core2";
+         break;
        case 0x1a:
        case 0x1e:
        case 0x1f:
        case 0x2e:
          /* Nehalem.  */
-         cpu = "corei7";
-         break;
        case 0x25:
        case 0x2c:
        case 0x2f:
@@ -662,20 +667,23 @@ const char *host_detect_local_cpu (int argc, const char **argv)
          /* Sandy Bridge.  */
          cpu = "corei7-avx";
          break;
-       case 0x17:
-       case 0x1d:
-         /* Penryn.  */
-         cpu = "core2";
+       case 0x3a:
+       case 0x3e:
+         /* Ivy Bridge.  */
+         cpu = "core-avx-i";
          break;
-       case 0x0f:
-         /* Merom.  */
-         cpu = "core2";
+       case 0x3c:
+         /* Haswell.  */
+         cpu = "core-avx2";
          break;
        default:
          if (arch)
            {
              /* This is unknown family 0x6 CPU.  */
-             if (has_avx)
+             if (has_avx2)
+               /* Assume Haswell.  */
+               cpu = "core-avx2";
+             else if (has_avx)
                /* Assume Sandy Bridge.  */
                cpu = "corei7-avx";
              else if (has_sse4_2)