Student research opportunities
PC-Relative Branching For a High Performance Compiler
Project Code: CECS_67
This project is available at the following levels:
Honours, Summer Scholar, Masters, PhD
Supervisor:
Professor Steve BlackburnOutline:
The optimizing compiler used by Jikes RVM (formerly known as Jalapeno) is a leading-edge compiler, use in many research publications, and the basis for Jikes RVM's excellent performance (performing as well as Sun, IBM and Oracle JVMs on many important benchmarks). However, the compiler currently uses indirection rather than PC-relative branching for calls. This design is a legacy of the VM's flexibility and a now-deprecated feature that allowed code to be moved by the system's garbage collector.
Goals of this project
This project will implement PC-relative branching in the IA32 version of Jikes RVM. The project will likely involve collaboration with colleagues at IBM's TJ Watson Research Labs. There is good reason to expect that this will yield a noticeable performance improvement to this already competitive JVM. We expect the student to enjoy working with a high performance compiler, interacting with top people from industry and academia, and with some luck, being rewarded with a noticeable performance improvement.



