Kevin Lawton wrote:
> 
> Jeff Dubrule wrote:
> 
> > What's this error about, then?
> > gcc -c -g -O2 -Wall -Wstrict-prototypes -fno-strength-reduce -fomit-frame-pointer 
>-malign-loops=2 -malign-jumps=2 -malign-functions=2 -D__KERNEL__ 
>-I/usr/src/linux/include -DCPU=586 -DMODULE -DEMULATION -I../include -I../.. 
>-DIN_MONITOR_SPACE arith8.c
> > /tmp/cccTBfC0.s: Assembler messages:
> > /tmp/cccTBfC0.s:298: Error: suffix or operands invalid for `add'
> > /tmp/cccTBfC0.s:429: Error: `%si' not allowed with `addb'
> > /tmp/cccTBfC0.s:940: Error: suffix or operands invalid for `add'
> > /tmp/cccTBfC0.s:2056: Error: suffix or operands invalid for `sub'
> > /tmp/cccTBfC0.s:2181: Error: suffix or operands invalid for `cmp'
> > /tmp/cccTBfC0.s:2275: Error: suffix or operands invalid for `cmp'
> > /tmp/cccTBfC0.s:2420: Error: `%si' not allowed with `cmpb'
> > /tmp/cccTBfC0.s:2514: Error: `%si' not allowed with `subb'
> > /tmp/cccTBfC0.s:2619: Error: suffix or operands invalid for `sub'
> > /tmp/cccTBfC0.s:2810: Error: suffix or operands invalid for `add'

Kevin,

You need to be more strict with AT&T assembly.
I haven't looked at the code yet but I can predict the
sort of mistakes: for instance,

/tmp/cccTBfC0.s:2420: Error: `%si' not allowed with `cmpb'

%si is a *word*, and you do a compare *byte*.  Change to cmpw
and it should be OK.

-- Ramon



Reply via email to