A blindingly obvious thought just occurred to me, and I want to write it
down before I forget: there is no reason that procedures expecting a closure
pointer need to honor the standard calling convention.

Such a procedure can only be called in two ways:

1. Through a statically resolved reference from a bitc call site.
2. From it's trampoline, which is actuall a degenerate case of (2).

So what this means is that the entire calling convention problem for
closures is entirely a consequence of generating C code, and the whole issue
will go away when native code generation is used.

Yet *another* reason not to generate C code for this kind of thing. Sigh.
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to