Cacaovm - Just-In-Time (JIT) Compiler
cacaovm is a Java Virtual Machine (JVM) which uses Just-In-Time (JIT) compilation to execute Java methods natively. cacaovm uses GNU Classpath or OpenJDK or phoneME as Java runtime library. The cacaovm project started as a research JVM to explore new implementation techniques. The first version for the Alpha was released in February 1997 as a binary.
CACAO supports i386, x86_64, Alpha, ARM, MIPS 32/64, PowerPC 32/64, S390 architectures. CACAO is almost fully compliant with the Java Virtual Machine Specification. It has a complete byte code verifier that uses subtype constraints to guarantee type-safety without unnecessary loading. A tailored CACAO can be built by enabling or disabling couple of features to reduce executable size.