diff mbox

[x86_64] libgcc changes to add znver1

Message ID CY1PR1201MB1098334A5EF31ABDAC147BB98F200@CY1PR1201MB1098.namprd12.prod.outlook.com
State New
Headers show

Commit Message

Kumar, Venkataramanan Oct. 29, 2015, 1:16 p.m. UTC
Hi Uros,

As per your comments in https://gcc.gnu.org/ml/gcc-patches/2015-09/msg02326.html  please find the patch that also adds changes to libgcc.

It was bootstrapped and regressed tested on x86_64. 

Ok for trunk?

Change logs 
gcc/ChangeLog

2015-10-29  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>

       * config/i386/i386.c (get_builtin_code_for_version): Set priority for
       PROCESSOR_ZNVER1.
       (enum processor_model): Add M_AMDFAM17H_znver1.
       (struct arch_names_table): Likewise.
       * doc/extend.texi: ADD znver1.

libgcc/ChangeLog
2015-10-12  Venkataramanan kumar  <venkataramanan.kumar@amd.com>

       * config/i386/cpuinfo.c (enum processor_types): Add AMDFAM17H.
       (processor_subtypes): Add znver1.
       (get_amd_cpu): Detect znver1.


Regards,
Venkat.

Comments

Uros Bizjak Oct. 30, 2015, 9:02 a.m. UTC | #1
On Thu, Oct 29, 2015 at 2:16 PM, Kumar, Venkataramanan
<Venkataramanan.Kumar@amd.com> wrote:
> Hi Uros,
>
> As per your comments in https://gcc.gnu.org/ml/gcc-patches/2015-09/msg02326.html  please find the patch that also adds changes to libgcc.
>
> It was bootstrapped and regressed tested on x86_64.
>
> Ok for trunk?
>
> Change logs
> gcc/ChangeLog
>
> 2015-10-29  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>
>
>        * config/i386/i386.c (get_builtin_code_for_version): Set priority for
>        PROCESSOR_ZNVER1.
>        (enum processor_model): Add M_AMDFAM17H_znver1.
>        (struct arch_names_table): Likewise.
>        * doc/extend.texi: ADD znver1.
>
> libgcc/ChangeLog
> 2015-10-12  Venkataramanan kumar  <venkataramanan.kumar@amd.com>
>
>        * config/i386/cpuinfo.c (enum processor_types): Add AMDFAM17H.
>        (processor_subtypes): Add znver1.
>        (get_amd_cpu): Detect znver1.

OK.

Thanks,
Uros.
Kumar, Venkataramanan Oct. 30, 2015, 1:30 p.m. UTC | #2
Hi Uros,

> -----Original Message-----

> From: Uros Bizjak [mailto:ubizjak@gmail.com]

> Sent: Friday, October 30, 2015 2:33 PM

> To: Kumar, Venkataramanan

> Cc: gcc-patches@gcc.gnu.org

> Subject: Re: [Patch] [x86_64] libgcc changes to add znver1

> 

> On Thu, Oct 29, 2015 at 2:16 PM, Kumar, Venkataramanan

> <Venkataramanan.Kumar@amd.com> wrote:

> > Hi Uros,

> >

> > As per your comments in https://gcc.gnu.org/ml/gcc-patches/2015-

> 09/msg02326.html  please find the patch that also adds changes to libgcc.

> >

> > It was bootstrapped and regressed tested on x86_64.

> >

> > Ok for trunk?

> >

> > Change logs

> > gcc/ChangeLog

> >

> > 2015-10-29  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>

> >

> >        * config/i386/i386.c (get_builtin_code_for_version): Set priority for

> >        PROCESSOR_ZNVER1.

> >        (enum processor_model): Add M_AMDFAM17H_znver1.

> >        (struct arch_names_table): Likewise.

> >        * doc/extend.texi: ADD znver1.

> >

> > libgcc/ChangeLog

> > 2015-10-12  Venkataramanan kumar  <venkataramanan.kumar@amd.com>

> >

> >        * config/i386/cpuinfo.c (enum processor_types): Add AMDFAM17H.

> >        (processor_subtypes): Add znver1.

> >        (get_amd_cpu): Detect znver1.

> 

> OK.


Thank you.  I committed  the patch.
Ref: https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=229575

Regards,
Venkat. 

> 

> Thanks,

> Uros.
diff mbox

Patch

diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 82fd054..a52b313 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -35898,6 +35898,10 @@  get_builtin_code_for_version (tree decl, tree *predicate_list)
 	      arg_str = "bdver4";
 	      priority = P_PROC_AVX2;
 	      break;
+	    case PROCESSOR_ZNVER1:
+	      arg_str = "znver1";
+	      priority = P_PROC_AVX2;
+	      break;
 	    }
 	}
 
@@ -36808,6 +36812,7 @@  fold_builtin_cpu (tree fndecl, tree *args)
     M_AMDFAM15H_BDVER2,
     M_AMDFAM15H_BDVER3,
     M_AMDFAM15H_BDVER4,
+    M_AMDFAM17H_ZNVER1,
     M_INTEL_COREI7_IVYBRIDGE,
     M_INTEL_COREI7_HASWELL,
     M_INTEL_COREI7_BROADWELL,
@@ -36850,6 +36855,7 @@  fold_builtin_cpu (tree fndecl, tree *args)
       {"bdver3", M_AMDFAM15H_BDVER3},
       {"bdver4", M_AMDFAM15H_BDVER4},
       {"btver2", M_AMD_BTVER2},
+      {"znver1", M_AMDFAM17H_ZNVER1},
     };
 
   static struct _isa_names_table
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index fdb1547..7a05c27 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -16995,6 +16995,9 @@  AMD Family 15h Bulldozer version 4.
 
 @item btver2
 AMD Family 16h CPU.
+
+@item znver1
+AMD Family 17h CPU.
 @end table
 
 Here is an example:
diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
index 1313ca3..b0ebfcf 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -59,6 +59,7 @@  enum processor_types
   INTEL_KNL,
   AMD_BTVER1,
   AMD_BTVER2,  
+  AMDFAM17H,
   CPU_TYPE_MAX
 };
 
@@ -74,6 +75,7 @@  enum processor_subtypes
   AMDFAM15H_BDVER2,
   AMDFAM15H_BDVER3,
   AMDFAM15H_BDVER4,
+  AMDFAM17H_ZNVER1,
   INTEL_COREI7_IVYBRIDGE,
   INTEL_COREI7_HASWELL,
   INTEL_COREI7_BROADWELL,
@@ -177,6 +179,12 @@  get_amd_cpu (unsigned int family, unsigned int model)
     case 0x16:
       __cpu_model.__cpu_type = AMD_BTVER2;
       break;
+    case 0x17:
+      __cpu_model.__cpu_type = AMDFAM17H;
+      /* AMD family 17h version 1.  */
+      if (model <= 0x1f)
+	__cpu_model.__cpu_subtype = AMDFAM17H_ZNVER1;
+      break;
     default:
       break;
     }