Re: Assembler warnings 2.2.12

Horst von Brand (vonbrand@inf.utfsm.cl)
Mon, 30 Aug 1999 16:57:44 -0400


nbecker@fred.net said:
> Has anyone else seen this?
>
> i686-pc-linux-gnu
> > gcc --version
> 2.9-codefusion-990706
>
> make[1]: Entering directory `/usr/src/linux-2.2.12/fs'
> gcc -D__KERNEL__ -I/usr/src/linux-2.2.12/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe
> -m486 -malign-loops=2 -malign-jumps=2 -malign-functions=2 -DCPU=686 -DMODULE -c -o binfmt_aout.o binfmt_aout.c
> {standard input}: Assembler messages:
> {standard input}:1019: Warning: using `%eax' instead of `%ax' due to `l' suffix
> {standard input}:1019: Warning: using `%eax' instead of `%ax' due to `l' suffix

> Is this a linux-kernel problem, or a gcc problem? Or maybe not a
> problem?

I've send a fix for this (and assorted other warnings) to Alan Cox, which
for the case under discussion (and similar ones) was rejected by Linus in
the end. The trouble is that the "right" way to handle this is to change
the %ax et al to %eax and family, or use the "w" forms of the affected
instructions. New binutils (current betas) handle these changes right,
older ones generate idiotic code for them (unneeded prefixes, AFAIR). With
what is in the kernel right now, new binutils generate the right code and
complain, older ones generate the right code and keep quiet.

Will have to wait...

-- 
Dr. Horst H. von Brand                       mailto:vonbrand@inf.utfsm.cl
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/