> I don't think we're on the same page. I don't mean
another code
> generation macro, I meant a simple flag, so that my
code generation
> routines can switch between a custom calling
convention, and the
> standard prolog.
>
> void codegen() {
> if (JIT_NEEDS_PROLOG) {
> jit_prolog(n);
> ...
> } else {
> //custom cc
> ...
> }
> }
>
> The switch will likely be #ifdef'd, but that's the
idea. I don't see
> how jit_leaf helps me here. It' sufficient to define:
If jit_leaf worked, you could have used
jit_leaf (0);
instead.
>> > I've considered CPS, particularly in
conjunction with the Cheney on
>> > the MTA-style GC. Unfortunately, CPS just
kills the pipeline due to
>> > the indirect function calls. Given how deep
pipelines are nowadays,
>> > and the fact that they're getting deeper, I'm
reluctant to go this
>> > way.
>>
>> Do you have so many function calls?
... so many as to make the slowdown from indirect function
calls sensible?
Paolo
_______________________________________________
help-smalltalk mailing list
help-smalltalk gnu.org
http://lists.gnu.org/mailman/listinfo/help-smalltalk
|