Name: ARM jitter for Squeak VM
Level: Advanced
Possible mentor: Eliot Miranda
Possible second mentor: �Igor Stasenko
Description
The Squeak VM is the dynamic virtual machine used for many open-source software projects such as Scratch [1], eToys [2], Pharo [3], the Newspeak language [4], the innovative web framework Seaside [5] and many others. CogVM [6] is a development of the Squeak VM which adds a powerful Intel x86 JITer [7]. The CogVM JIT has significantly improved the performance of the open-source Smalltalk projects which have adapted to use it.
Increasingly low cost highly capable ARM hardware such as the Raspberry Pi [8] and the Beagle Board [9] have become widely available. In addition the new version of the one-laptop-per-child is based on the ARM platform [10]. The Squeak VM compiles for ARM platforms, but currently there is no JIT on ARM platforms, significantly decreasing the performance of popular software on ARM. The goal of this project is to add simple ARM JITTing capability to the CogVM.