PyPy
PyPy JIT[index]
modified Jul 30, 2008 by Armin Rigo

JIT documentation

Abstract

When PyPy is translated into an executable like pypy-c, the executable contains a full virtual machine that can optionally include a Just-In-Time compiler. This JIT compiler is generated automatically from the interpreter that we wrote in RPython.

This JIT Compiler Generator can be applied on interpreters for any language, as long as the interpreter itself is written in RPython and contains a few hints to guide the JIT Compiler Generator.

Content

  • Overview: motivating our approach
  • Status: using a pypy-c with a JIT
  • How-to: make your own JIT compilers, with examples for tiny languages
  • Theory: partial evaluation
  • How it all works: the Rainbow interpreter
  • Machine code Backends
  • Current work and prototype in Prolog (!): see this blog post.

(work and documentation in progress!)