Design and Implementation - penberg/hornet GitHub Wiki

Fast Interpreter

The fast interpreter is designed around direct threaded code for dispatch (Ertl, 2003) using GCC's "Labels as Values extension" and instruction specialization by having a translation stage (Casey, 2005).

Future optimizations:

  • Superinstructions (Casey, 2005)
  • Instruction replication (Casey, 2005)

References

Casey, Kevin, M. Anton Ertl, and David Gregg. "Optimizations for a java interpreter using instruction set enhancement." Department of Computer Science, University of Dublin, Trinity College, Tech. Rep. TCD-CS-2005-61 (2005).

Ertl, M. Anton, and David Gregg. "The structure and performance of efficient interpreters." Journal of Instruction-Level Parallelism 5 (2003): 1-25.