On Fri, Aug 01, 2014 at 02:52:28PM +0000, Gopalasubramanian, Ganesh wrote: > --- a/gcc/config/i386/driver-i386.c > +++ b/gcc/config/i386/driver-i386.c > @@ -432,7 +432,8 @@ const char *host_detect_local_cpu (int argc, const char > **argv) > > model = (eax >> 4) & 0x0f; > family = (eax >> 8) & 0x0f; > - if (vendor == signature_INTEL_ebx) > + if ((vendor == signature_INTEL_ebx) || > + (vendor == signature_AMD_ebx))
Wrong formatting. No ()s around the comparisons needed, and || should go on the second line, not first. > @@ -576,7 +577,7 @@ const char *host_detect_local_cpu (int argc, const char > **argv) > > if (name == signature_NSC_ebx) > processor = PROCESSOR_GEODE; > - else if (has_movbe) > + else if (family == 22) > processor = PROCESSOR_BTVER2; Wouldn't it be safer to use has_movbe && family == 22? I mean, especially with emulators which choose to provide some architecture, but disable some CPUID flags it is IMHO safer to also check the flags. Jakub