Hi,
An alternative solution, which I use on sparc, is to copy the
arguments which are in the incoming registers to the
outgoing registers
/stack locations. See mini-sparc.c for more info.
Zoltan
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Behalf Of ext
> Sent: Thursday, July 15, 2004 5:19 PM
> To: [EMAIL PROTECTED]
> Subject: [Mono-list] Tailcall
>
>
> Hi,
> The implementation of tailc is quite x86-centric in mini.c.
> It assumes that all parameters are on the stack and by simply
> going back to the previous stack frame then the jump to the
> new routine will have access to the parameters that it wants.
> For architectures where parameters can be in registers as
> well as on the stack then this causes problems. The tailc
> needs to be processed like a normal call so that the
> registers get set up properly but the actual call can be like
> "jmp". I'm not sure what the best approach to fixing this
would be.
>
> Neale Ferguson
> _______________________________________________
> Mono-list maillist - [EMAIL PROTECTED]
> http://lists.ximian.com/mailman/listinfo/mono-list
>
_______________________________________________
Mono-list maillist - [EMAIL PROTECTED]
http://lists.ximian.com/mailman/listinfo/mono-list