Title
Compiler-guaranteed safety in code-copying virtual machines
Abstract
Virtual Machine authors face a difficult choice between low performance, cheap interpreters, or specialized and costly compilers. A method able to bridge this wide gap is the existing code-copying technique that reuses chunks of the VM's binary code to create a simple JIT. This technique is not reliable without a compiler guaranteeing that copied chunks are still functionally equivalent despite aggressive optimizations. We present a proof-of-concept, minimal-impact modification of a highly optimizing compiler, GCC. A VM programmer marks chunks of VM source code as copyable. The chunks of native code resulting from compilation of the marked source become addressable and self-contained. Chunks can be safely copied at VM runtime, concatenated and executed together. This allows code-copying VMs to safely achieve speedup up to 3 times, 1.67 on average, over the direct interpretation. This maintainable enhancement makes the code-copying technique reliable and thus practically usable.
Year
DOI
Venue
2008
10.1007/978-3-540-78791-4_11
CC
Keywords
Field
DocType
vm source code,existing code-copying technique,code-copying technique,binary code,compiler-guaranteed safety,vm runtime,marked source,costly compiler,virtual machine,compiler guaranteeing,native code,vm programmer marks chunk,optimizing compiler,source code,proof of concept
Virtual machine,Programmer,Programming language,Source code,Computer science,Compiler,Basic block,Optimizing compiler,Machine code,Speedup
Conference
Volume
ISSN
ISBN
4959
0302-9743
3-540-78790-9
Citations 
PageRank 
References 
0
0.34
7
Authors
2
Name
Order
Citations
PageRank
Gregory B. Prokopski100.34
Clark Verbrugge241139.15