
Hi Richard, On Thu, Dec 14, 2006 at 01:22:15AM +0000, Richard Emslie wrote:
Fixed now. Jitting execution seems to work as well as the normal one. We tried various things, including stuff not supported by Psyco (generators, nested scopes...), with success.
Very cool! But do recursive intepreters work now? :-)
Yes, everything works :-) Except the bytecode trace hook. The machine code is really terrible at all points of view, but you can JIT whatever piece of Python code you like - generators, nested scopes, class: statement bodies, all these cases where Psyco give up. That's the point of the approach, really :-) We have a minor detail to solve before it can be tested on larger examples, though - it exhausts the 32-bit address space far too early (without actually consuming much of the reserved pages) and then we get a MemoryError. It's a back-end problem; Arre started working on that today. A bientot, Armin.