This project aims at exploring the possibilities of applying JIT translation of Java Bytecode (and related virtual machine instructions) on systems based on VLIW processors, exploiting the instruction-level parallelism as much as possible.
In particular, we implemented JIST, a scheduling JIT compiler, based on the open source Java Virtual Machine implementation Kaffe, and targeted to the Lx platform, a family of Very Long Instruction Word processors jointly developed by Hewlett Packard and STMicroelectronics. Within this framework, three main issues are considered: register allocation, instruction scheduling (both local and global), and memory disambiguation.
We are also investigating the impact of selective compilation and optimization on the performances of our virtual machine.