[kaffe] [PATCH] JIT on arm
Kiyo Inaba
inaba at src.ricoh.co.jp
Wed May 2 01:26:10 PDT 2007
I said,
>Since I don't want to see 'jit on arm every few months', I started
>to work with emulators...
After several days of hastle, I finally make kaffe jit works for
arm with only one modification (sys1 macro definition). It is very
important to use gcc-2.95, and don't specify 'with-staticvm' etc.
The configure command I used is
----------------------------------------------------------------------
CC=gcc-2.95 CXX=g++-2.95 \
../kaffe-snap-070215/configure \
--with-glibj-zip=/home/kaffe/src/glibj-070215.zip \
--with-engine=jit \
--enable-pure-java-math \
--with-threads=unix-pthreads \
--with-gc=kaffe-gc \
--disable-boehm-gc-configuration \
--disable-sound \
--without-x \
--disable-native-awt \
--disable-gtk-peer \
--disable-gconf-peer \
--disable-plugin \
--disable-Werror
----------------------------------------------------------------------
The mod I did in diff format is
----------------------------------------------------------------------
diff -ur -N -x CVS kaffe/config/arm/linux/md.c /mnt/cdrom/home/kaffe/src/kaffe-snap-070215/config/arm/linux/md.c
--- kaffe/config/arm/linux/md.c 2007-05-02 13:05:18.000000000 +0900
+++ /mnt/cdrom/home/kaffe/src/kaffe-snap-070215/config/arm/linux/md.c 2007-05-02 14:36:57.000000000 +0900
@@ -16,6 +16,7 @@
#endif
#include <malloc.h>
#include <sched.h>
+#define __KERNEL__
#include <asm/unistd.h>
void
----------------------------------------------------------------------
I am still not sure whether this is better (to say we are now compiling
kernel code) than something else, so I have not yet committed this.
The 'uname -a' output is
----------------------------------------------------------------------
Linux debian 2.6.18-4-versatile #1 Wed Feb 7 21:07:15 CET 2007 armv5tejl GNU/Linux
----------------------------------------------------------------------
And /proc/cpuinfo tells me
----------------------------------------------------------------------
Processor : ARM926EJ-S rev 5 (v5l)
BogoMIPS : 209.71
Features : swp half fastmult edsp java
CPU implementer : 0x41
CPU architecture: 5TEJ
CPU variant : 0x0
CPU part : 0x926
CPU revision : 5
Cache type : write-through
Cache clean : not required
Cache lockdown : not supported
Cache format : Harvard
I size : 4096
I assoc : 4
I line length : 32
I sets : 32
D size : 65536
D assoc : 4
D line length : 32
D sets : 512
Hardware : ARM-Versatile PB
Revision : 0000
CPU implementer : 0x41
CPU architecture: 5TEJ
CPU variant : 0x0
CPU part : 0x926
CPU revision : 5
Cache type : write-through
Cache clean : not required
Cache lockdown : not supported
Cache format : Harvard
I size : 4096
I assoc : 4
I line length : 32
I sets : 32
D size : 65536
D assoc : 4
D line length : 32
D sets : 512
Hardware : ARM-Versatile PB
Revision : 0000
Serial : 0000000000000000
----------------------------------------------------------------------
So, next TODOs are
1) Why it does not work with newer version of gcc?
2) Why with-staticvm broken?
3) Does X part work?
4) Make jit3 to work.
Kiyo
More information about the kaffe
mailing list