On Fri, Feb 12, 2010 at 6:51 PM, Geoffrey Broadwell <[email protected]> wrote:
> On Feb 12, 2010, at 15:30, Peter Lobsinger wrote:
> You know, the above makes me wonder if we need a thunk *interpreter*
> library.  Instead of generating optimized machine code for each thunk, it
> would instead simply take a signature string and a varargs list and convert
> the varargs to platform-appropriate native call arguments, perform the call,
> and unpack the return similarly.  It would be slow, but fully generic.  I'm
> assuming we'd have to write one of these per platform/compiler, but I
> wouldn't think it would be terribly difficult code.
>
> Just another point in the solution space, I guess.

A good idea. And like most good ideas, this has been done before. As
far as I can tell, libffi (http://sourceware.org/libffi/) takes this
approach and supports a large variety of platforms and os.

I am interested in providing a frame builder based on libffi. But
based on my experience with the libjit frame builder, I have come to
understand that there are complications with providing runtime frame
builders on parrot as it stands today. The opengl_dynamic_nci solution
is an incremental improvement on what we have now that provides a
"good enough" solution immediately.
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to