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

Reply via email to