On Sun, Feb 17, 2008 at 11:07:54AM +0100, Richard Guenther wrote:
> On Feb 17, 2008 10:54 AM, Andreas Schwab <[EMAIL PROTECTED]> wrote:
> > "Richard Guenther" <[EMAIL PROTECTED]> writes:
> >
> > > I see the use of cpuid.h is wrapped inside #ifdef __GNUC__, so the issue 
> > > is only
> > > using old GCC as the host compiler (I checked 2.95 which chokes on the 
> > > asm).
> > > Can we change this guard to only allow GCC >= 3.3 which would also fix 
> > > this?
> >
> > Won't those host dependent parameters cause bootstrap comparison
> > failures?  If the stage1 compiler doesn't use the same detection
> > routines as the stage2 compiler then the stage2 compiler is compiled
> > with different options than the stage3 compiler.
> 
> If you bootstrap with BOOT_CFLAGS="-march=native" yes, otherwise no.
> Maybe we should build
> i386-driver.c with the stage1 compiler and not the host compiler,
> which of course
> causes a chicken and egg problem...

Or we can just duplicate the 2 inline asms for __GNUC__ < 3
or what is the oldest GCC that can handle the alternatives correctly.
The __cpuid asm is short and the other one, while long, doesn't need
changing too often.

        Jakub

Reply via email to