Hello,

Patch in the bottom introduces cpuid detection
for Skylake CPU supporting AVX-512.

Bootstrapped. Changed test pass. Is it ok for trunk?

libgcc/
        * libgcc/config/i386/cpuinfo.c (get_intel_cpu): Detect "skylake-avx512".

gcc/testsuite/
        * gcc.target/i386/builtin_target.c: Add check for "skylake-avx512".

--
Thanks, K

commit 230beb0d31a9463c8339975580142298138442f6
Author: Kirill Yukhin <kirill.yuk...@intel.com>
Date:   Fri Oct 2 19:03:21 2015 +0300

    AVX-512. Add family/model to cpuinfo.c.

diff --git a/gcc/testsuite/gcc.target/i386/builtin_target.c 
b/gcc/testsuite/gcc.target/i386/builtin_target.c
index a9a8753..82357a7 100644
--- a/gcc/testsuite/gcc.target/i386/builtin_target.c
+++ b/gcc/testsuite/gcc.target/i386/builtin_target.c
@@ -91,6 +91,11 @@ check_intel_cpu_model (unsigned int family, unsigned int 
model,
              assert (__builtin_cpu_is ("corei7"));
              assert (__builtin_cpu_is ("skylake"));
              break;
+           case 0x55:
+             /* Skylake with AVX-512 support.  */
+             assert (__builtin_cpu_is ("corei7"));
+             assert (__builtin_cpu_is ("skylake-avx512"));
+             break;
            case 0x17:
            case 0x1d:
              /* Penryn.  */
diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
index 40ed84c..0cbbc85 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -78,6 +78,7 @@ enum processor_subtypes
   INTEL_COREI7_HASWELL,
   INTEL_COREI7_BROADWELL,
   INTEL_COREI7_SKYLAKE,
+  INTEL_COREI7_SKYLAKE_AVX512,
   CPU_SUBTYPE_MAX
 };
 
@@ -260,6 +261,11 @@ get_intel_cpu (unsigned int family, unsigned int model, 
unsigned int brand_id)
              __cpu_model.__cpu_type = INTEL_COREI7;
              __cpu_model.__cpu_subtype = INTEL_COREI7_SKYLAKE;
              break;
+           case 0x55:
+             /* Skylake with AVX-512 support.  */
+             __cpu_model.__cpu_type = INTEL_COREI7;
+             __cpu_model.__cpu_subtype = INTEL_COREI7_SKYLAKE_AVX512;
+             break;
            case 0x17:
            case 0x1d:
              /* Penryn.  */

Reply via email to