On Fri, Oct 2, 2015 at 6:12 PM, Kirill Yukhin <kirill.yuk...@gmail.com> wrote:
> 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".

OK.

Thanks,
Uros.

> --
> 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