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