Abstract

Intel MMXTM technology can be exploited by a JavaTM JIT compiler to speedup the execution of integer operations. While translating bytecode into Intel machine code, the compiler identifies innermost loops that allow the same integer operations to be applied to multiple data elements in parallel and generates code that uses Intel MMXTM technology to execute these loops in SIMD fashion. In the context of JIT compilation, compile‐time directly contributes to the run‐time of the application. Therefore, limiting program analysis‐time and synthesis‐time is even more important than in a static compilation model. The compiler must also ensure that arithmetic precision and the exception handling semantics specified by the JVM are preserved.