Hi Uros, I realized both GCC 4.9 and GCC 5 branches includes processor subtype AMDFAM15H_BDVER4. So I need to back port not only model selection fix but also the detection of model for bdver4.
Is that fine? Regards, Venkat. > -----Original Message----- > From: Kumar, Venkataramanan > Sent: Friday, October 09, 2015 3:31 PM > To: 'Uros Bizjak' > Cc: gcc-patches@gcc.gnu.org > Subject: RE: [Patch] [x86_64]: Add bdver4 for multi versioning and fix AMD > cpu model detection. > > Thank you Uros, > > I will test and commit model selection change in all release branches as > well. > > Regards, > Venkat. > > > -----Original Message----- > > From: Uros Bizjak [mailto:ubiz...@gmail.com] > > Sent: Friday, October 09, 2015 3:25 PM > > To: Kumar, Venkataramanan > > Cc: gcc-patches@gcc.gnu.org > > Subject: Re: [Patch] [x86_64]: Add bdver4 for multi versioning and fix > > AMD cpu model detection. > > > > On Fri, Oct 9, 2015 at 11:50 AM, Kumar, Venkataramanan > > <venkataramanan.ku...@amd.com> wrote: > > > Hi Uros, > > > > > > Please find below patch that adds bdver4 target for multi versioning. > > > Also I while computing model, the extended_model is incorrectly left > > shifted by 4. I have removed it now. > > > > > > Is below patch Ok for trunk ? > > > GCC bootstrap and regressions passed. > > > > OK for trunk and release branches, where applicable. IMO, model > > selection fix should be applied to all release branches. > > > > Thanks, > > Uros. > > > > > diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index > > > bb3a722..8676747 100644 > > > --- a/libgcc/ChangeLog > > > +++ b/libgcc/ChangeLog > > > @@ -1,3 +1,8 @@ > > > +2015-10-09 Venkataramanan Kumar > > <venkataramanan.ku...@amd.com> > > > + > > > + * config/i386/cpuinfo.c (get_amd_cpu): Detect bdver4. > > > + (__cpu_indicator_init): Fix model selection for AMD CPUs. > > > + > > > 2015-10-05 Kirill Yukhin <kirill.yuk...@intel.com> > > > > > > * config/i386/cpuinfo.c (get_intel_cpu): Detect "skylake-avx512". > > > diff --git a/libgcc/config/i386/cpuinfo.c > > > b/libgcc/config/i386/cpuinfo.c index 0cbbc85..1313ca3 100644 > > > --- a/libgcc/config/i386/cpuinfo.c > > > +++ b/libgcc/config/i386/cpuinfo.c > > > @@ -169,6 +169,9 @@ get_amd_cpu (unsigned int family, unsigned int > > model) > > > /* Bulldozer version 3 "Steamroller" */ > > > if (model >= 0x30 && model <= 0x4f) > > > __cpu_model.__cpu_subtype = AMDFAM15H_BDVER3; > > > + /* Bulldozer version 4 "Excavator" */ > > > + if (model >= 0x60 && model <= 0x7f) > > > + __cpu_model.__cpu_subtype = AMDFAM15H_BDVER4; > > > break; > > > /* AMD Family 16h "btver2" */ > > > case 0x16: > > > @@ -455,7 +458,7 @@ __cpu_indicator_init (void) > > > if (family == 0x0f) > > > { > > > family += extended_family; > > > - model += (extended_model << 4); > > > + model += extended_model; > > > } > > > > > > /* Get CPU type. */ > > > > > > Regards, > > > Venkat. > > > > > > > > > > > > > > > > > >