[ipxe-devel] compile fails with gcc 4.8.0
Michael Brown
mbrown at fensystems.co.uk
Thu Apr 4 21:42:34 UTC 2013
On 03/04/13 09:37, Christian Hesse wrote:
> Christian Hesse<list at eworm.de> on Tue, 2013/04/02 10:35:
>> Hello everybody,
>>
>> with gcc 4.8.0 compilation fails:
>>
>> With [BUILD] bin/pxe_call.o
>> arch/i386/interface/pxe/pxe_call.c: In function ‘pxe_start_nbp’:
>> arch/i386/interface/pxe/pxe_call.c:284:1: error: bp cannot be used in asm
>> here }
>> ^
>>
>> No idea how to fix this, though.
>
> Oh, this has been reported before... Sorry.
>
> But I have a patch. Compiles and works for me [tm], hope it is correct.
Thanks. The patch works, but it would be awesome to find a proper
generic solution to this issue.
The problem with adding a manual "pushl/popl %ebp" pair is twofold:
- it may add unnecessary code (if there's nothing useful currently in
%ebp anyway)
- it generates incorrect code if any of the asm constraints end up
generating memory references to local variables. (Not applicable in
this case, but it's a nasty thing to have to remember for future
maintenance.)
I did get access to the gcc compile farm, but none of the test machines
therein seem to have gcc 4.8 installed!
If anyone has the time to investigate a proper solution for this, I'd be
very grateful.
Michael
More information about the ipxe-devel
mailing list