Optimizations in the Cibyl binary translator for J2ME devices
Blekinge Institute of Technology, School of Engineering, Department of Systems and Software Engineering2008 (English)Conference paper (Refereed) Published
The Java J2ME platform is one of the largest software platforms available, and often the only available development platform for mobile phones, which is a problem when porting C or C++ applications. The Cibyl binary translator targets this problem, translating MIPS binaries into Java bytecode to run on J2ME devices. This paper presents the optimization framework used by Cibyl to provide compact and well-performing translated code. Cibyl optimizes expensive multiplications/divisions, floating point support, function co-location to Java methods and provides a peephole optimizer. The paper also evaluates Cibyl performance both in a real-world GPS navigation application where the optimizations increase display update frequency with around 15% and a comparison against native Java and the NestedVM binary translator where we show that Cibyl can provide significant advantages for common code patterns.
Place, publisher, year, edition, pages
Salt Lake City, Utah, U.S.A., 2008.
IdentifiersURN: urn:nbn:se:bth-8508Local ID: oai:bth.se:forskinfoC1AB0DDFCD210494C12574A30026C683OAI: oai:DiVA.org:bth-8508DiVA: diva2:836234
12th Workshop on Interaction between Compilers and Computer Architectures (INTERACT-12)