Language implementation frameworks such as RPython and Truffle/Graal are effective tools for creating a high-performance language with lower effort th

Threaded Code Generation with a Meta-tracing JIT Compiler (ICOOOLPS 2021 - Workshop on Implementation, Compilation, Optimization of OO Languages, Programs and Systems) - ECOOP and ISSTA 2021

submited by
Style Pass
2021-06-25 17:00:06

Language implementation frameworks such as RPython and Truffle/Graal are effective tools for creating a high-performance language with lower effort than implementing from scratch. The two frameworks support only a single JIT compilation strategy, trace-based compilation and method-based compilation, but they have its own advantages and disadvantages. We proposed a meta-hybrid JIT compiler framework to take advantages of the two strategies as a language implementation framework. We also implemented a proof-of-concept framework called BacCaml. As a next step, in this position paper, we propose a new approach to realize a method-based baseline JIT compiler along with a trace-based JIT compilation. We aim to use it for further speed-up by preventing the path-divergence problem, which causes serious slow-down. We also show how to implement the baseline JIT compiler with minimal changes on top of RPython.

Leave a Comment