Incremental Dynamic Code Generation with Trace Trees


The unit of compilation for traditional just-in-time compilers is the method. We have explored trace-based compilation, in which the unit of compilation is a loop, potentially spanning multiple methods and even library code. Using a new intermediate representation that is discovered and updated lazily on-demand while the program is being executed, our compiler generates code that is competitive with traditional dynamic compilers, but that uses only a fraction of the compile time and memory footprint.

11 Figures and Tables

Cite this paper

@inproceedings{Gal2006IncrementalDC, title={Incremental Dynamic Code Generation with Trace Trees}, author={Andreas Gal and Michael Franz}, year={2006} }