[pypy-dev] Interpreter level array implementation
fijall at gmail.com
Sat Jul 3 08:20:01 CEST 2010
On Sat, Jul 3, 2010 at 12:14 AM, Hakan Ardo <hakan at debian.org> wrote:
> On Fri, Jul 2, 2010 at 11:21 PM, Maciej Fijalkowski <fijall at gmail.com> wrote:
>> General note - we consider 2x optimized C a pretty good result :) Details below
> As do I :) I just want to make this as jit-friendly as possible
> without rely knowing what's jit-friendly...
I think it's fairly JIT friendly. You can look into traces (as you
did), but seems fine to me.
>> Yes. We don't do loop invariant optimizations for some reasons, the
>> best of it being the fact that to loop you can always add a bridge
>> which will invalidate this invariant.
> Are you telling me that you probably never will include that kind of
> optimization because of the limitations it imposes on other parts of
> the jit or just that it would be a lot of work to get it in place?
It requires thinking. It's harder to do because we don't know
statically upfront how many paths we'll compile to assembler, but I
can think about ways to mitigate that.
> What is a bridge?
If guard fails often enough, it's traced and compiled to assembler.
That's a bridge
> Håkan Ardö
More information about the Pypy-dev