This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Allow cmpxchg16b even with -march=core2
> On Wed, Jan 17, 2007 at 05:09:11PM +0100, Jan Hubicka wrote:
> > > Hi!
> > >
> > > Core2 has cmpxchg16b (well, even newer AMD chips have it it seems,
> > > but we don't have a separate PROCESSOR_ constant for them yet).
> > > Ok for trunk?
> >
> > I would probably preffer if the flag was hanlded using PTA flag same way
> > as we do. lets say, PREFETCH_SSE. The PROCESSOR_* macros are copied
> > everywhere and we should not introduce too many of them for CPU
> > subvariants.
>
> Like this? On AMD side I still have no idea which CPUs are guaranteed to
> have it and which don't, so I haven't touched them in override_options.
> cat /proc/cpuinfo | egrep 'model name|flags.*cx16'
> model name : AMD Athlon(tm) 64 X2 Dual Core Processor 4600+
> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm cr8_legacy
> model name : AMD Athlon(tm) 64 X2 Dual Core Processor 4600+
> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm cr8_legacy
> cat /proc/cpuinfo | egrep 'model name|flags.*cx16'
> model name : AMD Athlon(tm) 64 Processor 2800+
> cat /proc/cpuinfo | egrep 'model name|flags.*cx16'
> model name : AMD Opteron(tm) Processor 244
> model name : AMD Opteron(tm) Processor 244
Yes,
this is OK. Also I would pre-approve change turning both prefetch_sse
and x86* (well and other predicate vars) into bool.
Evandro, where we want to get this enabled on AMD chips?
Thanks,
Honza