Christoph Plattner wrote:
>
> While compiling etherboot32 in version 4.6.8 I got following error
> on Linux RedHat 6.2 (egcs-2.91.66, as 2.9.5)
>
> gcc -E -DMOTD -DIMAGE_MENU -DBACKOFF_LIMIT=7 -DASK_BOOT=3
> -DANS_DEFAULT=ANS_NETWORK -O2 -g -fstrength-reduce -fomit-frame-pointer
> -m386 -malign-jumps=1 -malign-loops=1 -malign-functions=1 -Wall -W
> -Wno-format -Wno-unused -DVERSION=\"4.6.8\" -DRELOC=0x98000 start32.S |
> as -o bin32/start32.o
> {standard input}: Assembler messages:
> {standard input}:323: Error: suffix or operands invalid for `ljmp'
> make: *** [bin32/start32.o] Error 1
>
> The problem seem to be the `*' in the LJMPI() macro.
> The problem is in the xstart routine. As I saw in the other
> parts of the code and the the code 4.6.2, I think, the `*' has
> to be removed. In 4.6.2 there was no distinguish between GAS291 and
> GAS295 on this line in xstart:
>
> ADDR32 ljmp _execaddr-_start
>
> In 4.6.8 this line:
>
> ADDR32 LJMPI(_execaddr-_start)
>
> with the difference:
>
> #ifdef GAS291
> #define DATA32 data32;
> #define ADDR32 addr32;
> #define LJMPI(x) ljmp x
> #else
> #define DATA32 data32
> #define ADDR32 addr32
> #define LJMPI(x) ljmp *x
> #endif
>
> Whatfor the `*' here ?
The newer gas 2.9.5 obviously issue a warning if there is no `*', but
unfortunately the older ones don't accept it. The problem witg binutils 2.9.5
is that it is work in progress and not a released, stable version. I also ran
into this problem. For now I think it should be removed. The warning message
can be ignored, but not the error message :)
> PS: Without `*' the code builds, but I have not tested it !
It works.
Klaus
===========================================================================
This Mail was sent to netboot mailing list by:
Klaus Espenlaub <espenlaub@informatik.uni-ulm.de>
To get help about this list, send a mail with 'help' as the only string in
it's body to majordomo@baghira.han.de. If you have problems with this list,
send a mail to netboot-owner@baghira.han.de.
For requests or suggestions regarding this mailing list archive please write to netboot@gkminix.han.de.