[pypy-dev] Telling the JIT to remove a stack array
Armin Rigo
arigo at tunes.org
Sun Feb 23 09:06:36 CET 2014
Hi Timothy,
On 23 February 2014 01:24, Timothy Baldridge <tbaldridge at gmail.com> wrote:
> I tried digging into the PyPy source to find how how this is done there, but
> I haven't been able to find it yet.
pypy/interpreter/pyframe.py: self.locals_stack_w. The trick is that
it's an attribute of a "frame" class, which is itself turned into a
virtualizable with a special declaration about the attribute. See
``PyFrame._virtualizable_ = ['locals_stack_w[*]']'' in
pypy/module/pypyjit/interp_jit.py. It's currently the only way to
trigger special behavior about the list: you have to make it a
special attribute of a virtualizable "frame" class.
A bientôt,
Armin.
More information about the pypy-dev
mailing list