[Mono-devel-list] tailcall support in mcs

Michal Moskal malekith at pld-linux.org
Mon Sep 15 07:36:35 EDT 2003

On Mon, Sep 15, 2003 at 12:25:04PM +0100, Chris Seaton wrote:
> On Mon, 2003-09-15 at 12:18, Michal Moskal wrote:
> > I see support in ilasm and mini, but no mcs :/
> I can't imagine it's not implemented. In x86 isn't it just a case of a
> "leave" instruction before calling the tail called procedure?

The problem is that mcs doesn't emit tail calls, not that the runtime
engine doesn't support it.

BTW: now I see how tail.call is different from call ; ret (e.g. why tail
call cannot be always performed on call ; ret), it would require
analizing if we don't pass refs to local variables. Not very hard,

: Michal Moskal :: http://www.kernel.pl/~malekith : GCS {C,UL}++++$ a? !tv
: When in doubt, use brute force. -- Ken Thompson : {E-,w}-- {b++,e}>+++ h

More information about the Mono-devel-list mailing list