On Tue, Jan 08, 2002 at 01:02:26AM +0100, Marcus Brinkmann wrote: > BTW, the corresponding glibc-2.2.4/gcc2.95 code for the above code (function > in function) is > > _hurd_stack_setup: > pushl %ebp > movl %esp,%ebp > subl $24,%esp > leal 8(%ebp),%eax > movl %eax,-4(%ebp) > call __mach_init > leave > ret > > Mmmh. It does the same derefernce 8(%ebp). Maybe the code is right and the > problem is even before that?
Jeff just enlightened me on lea, which loads the address to the register, not the content (if I understood everything correctly), for *later* dereference. So the question is if gcc-3.0 produces bad code or just code that is uncomfortable for us. I have not read on in the assembler how %eax is going to be used later. Thanks, Marcus -- `Rhubarb is no Egyptian god.' Debian http://www.debian.org [EMAIL PROTECTED] Marcus Brinkmann GNU http://www.gnu.org [EMAIL PROTECTED] [EMAIL PROTECTED] http://www.marcus-brinkmann.de _______________________________________________ Bug-hurd mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-hurd