Hello, and other things
Patrick Wright
pdoubleya at gmail.com
Sat Mar 15 02:20:23 PDT 2008
And here's a research paper on optimizations done in Cibyl, might be
interesting to you as well
http://www.ipd.bth.se/ska/phd-cibyl-performance.pdf
>From the abstract, "This paper presents
the optimization framework used by Cibyl to provide com-
pact and well-performing translated code. Cibyl optimizes
expensive multiplications/divisions, floating point support,
function co-location to Java methods and provides a peep-
hole optimizer. The paper also evaluates Cibyl perfor-
mance 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
patternshigh-level Java code) might not be a good match for the
compiler structure. The general design of Cibyl has been
described in an earlier paper [8], and this paper focuses on
optimizations made to reduce the size and improve the per-
formance of the translated binaries.
The optimizations we employ for Cibyl share some sim-
ilarities with regular compiler optimizations, e.g., use of
function inlining and constant propagation, but is also sig-
nificantly different. Since the GCC compiler has already
optimized the high-level C code, the goal of the Cibyl bi-
nary translator is to make the translation into Java bytecode".
Sorry if this is off-topic for the list, seems related to Jason's
original question on the thread.
Regards
Patrick
> There's also Cibyl, http://spel.bth.se/index.php/Cibyl, "Cibyl is a
> programming environment and binary translator that allows compiled C
> programs to execute on J2ME-capable phones. Cibyl uses GCC to compile
> the C programs to MIPS binaries, and these are then recompiled into
> Java bytecode"
More information about the mlvm-dev
mailing list