3 MateVM is a Java JIT compiler written in Haskell, using already existing
4 libaries, namly `harpy' [1] and `hs-java' [2].
6 We use `hs-java' to parse Java Classfiles in order to get a Java Bytecode
7 representation. Afterwards we perform a basic-block analysis and generate a
8 control-flow-graph (CFG). We apply several program-analyses, transformations
9 and optimizations. Given the annotated CFG we emit native code with `harpy'
10 (i386) in an on demand manner.
12 At the moment we try to minimize effort, by focusing on essential features of
13 the JVM, e.g. no exception handling.
14 Performance will be evaluated using a dedicated testsuite which can be handeld
15 in our limited implementation.
18 [1] http://hackage.haskell.org/package/harpy
19 [2] http://hackage.haskell.org/package/hs-java