On 07/01/2011 17:01, Patrick R. Michaud wrote:
On Fri, Jan 07, 2011 at 09:35:02AM -0600, Patrick R. Michaud wrote:
On Fri, Jan 07, 2011 at 04:15:14PM +0100, Nick Wellnhofer wrote:
I completely agree with your analysis. There's another approach:

(4) We don't build the signature object at all, but we transfer the
arguments directly from the "raw" signatures and the registers of
the caller to the registers of the callee. So we'd have a single
function that does the work of build_sig_object and fill_params.
This might be even more complex than fill_params, though.

Isn't "transfer arguments directly to registers of callee"
almost _exactly_ what we had before the work on the new Parrot
calling conventions work of ~16 months ago...?

...however, since what we had before was arguably somewhat
faster than what we have now, don't take my comment above as a
vote for-or-against Nick's suggestion.  Just take it as a remark of
"if we choose this approach, what do we know now that we didn't
know then?"  and  "Let's be sure to review the reasons that caused
us to change from this approach in the first place."

I haven't been around back then, so it's possible that what I described was the old approach. I also not sure if that approach is better overall, but it certainly has some upsides.

Nick
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to