* David Welton said: > I noticed this on the release notes for 2.2.12: > > Compilers: This code is intended to build with gcc 2.7.2 and egcs > 1.1.2. It is known that not all of it builds validly on the x86 > CPU's with gcc 2.95. As far as we know these are Linux not gcc > issues. Fixes for gcc 2.95 to gcc 3.0 may go into Linux 2.2 in > time. You should therefore not use gcc 2.95 to build stable kernels > for the moment. > > So, it would be good to make a note of this for people compiling their > own kernels, in our release notes, if these things haven't been > cleared up by then, as our default gcc is 2.9.5. The linux kernel makefile takes that into account. The problem is with the strict aliasing feature used in 2.95. It can optimize some code so that overlapping variables (in e.g. unions) would vanish. That can kill linux kernel code in several places, but the strict can be turned off with -fno-strict-aliasing - and the Linux makefile does just that if it detects that the compiler understands that flag. marek
Attachment:
pgpPZbGQkl86U.pgp
Description: PGP signature