-
Notifications
You must be signed in to change notification settings - Fork 4
shudo/shujit
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
shuJIT - a JIT compiler for x86 http://www.shudo.net/jit/ Kazuyuki Shudo <shudo@computer.org> * What this is ShuJIT is a Java Just-in-Time compiler for Sun Microsystems' Classic VM (i.e. JDK, Java 2 SDK, JRE) and Intel x86 processors. It supports FreeBSD, Linux and NetBSD. * Platforms Working on the following platforms is confirmed. - FreeBSD - JDK 1.3.1 patchlevel 8, GCC 2.95.4 and FreeBSD 4.9-STABLE - JDK 1.1.8 (ELF, V1999-11-9), GCC 2.95.4 and FreeBSD 4.9-STABLE - Linux - Blackdown JDK 1.3.1_02b, GCC 3.3.2 20031022, glibc 2.3.2 and Linux 2.6.0-test9 - JDK 1.1.8v3, GCC 3.3.2 20031022, glibc 2.3.2 and Linux 2.6.0-test9 - JDK 1.1.7v1a, egcs 1.1.2, libc 5.4.38 and Linux 2.0.35 * Installation With Java 2, you have to place the libshujit.so in jdk1.X.X/jre/lib/i386/ or make a symbolic link in the path. With JDK 1.1.X, copy the libshujit.so to a path in LD_LIBRARY_PATH variable or the path on which libjava.so exists (ex. /usr/local/jdk1.1.8/lib/i686/green_threads/). * Run Java programs with shuJIT Type instead of usual java command % java -Djava.compiler=shujit ... or set JAVA_COMPILER variable to `shujit'. If you use C shell compatible shells, type % setenv JAVA_COMPILER shujit If you use bourne shell compatible shells, type % export JAVA_COMPILER=shujit * Compilation You need the following tools to compile shuJIT. - JDK 1.3.X, 1.2.X or 1.1.X Classic VM ShuJIT works with Sun's Classic VM which these JDKs contain. Other JVMs, i.e. IBM JDK and HotSpot VMs, are not supported. - GCC 3.X, 2.9X or egcs You can examine the version number of your GCC with -v option. % gcc -v GCC 2.7.X cannot compile shuJIT correctly. - objdump (in GNU binutils) Most Linux distributions and ELF FreeBSD systems have this. - Ruby A script which generate some tables is written in Ruby. See http://www.ruby-lang.org/ - GNU make 1. Run configure script. % ./configure If you want to use SSE2 instructions of Pentium 4 processor, type % ./configure --enable-sse2 2. Type `make'. You will get libshujit.so % make Or, on FreeBSD systems % gmake Type `make debug' to obtain libshujit_g.so, which is for debugging. * Bugs and Problems Any comments and bug reports are welcome. Please feel easy to write to me. * Copying This software is a free software which is copyrighted by Kazuyuki Shudo. You may redistribute and modify it under the terms of GNU Lesser General Public License; either version 2.1 of the License, or any later version. See LGPL.txt for more details. * Thanks Thanks all folks around me and especially the following people: Takuzo O'hara <takuzo at sm.sony.co.jp> (compilation on FreeBSD) Hideaki Takahashi <htaka at nalgo.co.jp> (bug report and debug) Keishiro Tanaka <ksr at lp.nm.fujitsu.co.jp> (test on FreeBSD) Ryo Neyama <neyama at jp.ibm.com> (test on Linux) Toshitaka Miura <miura at computer.org> (preparation of FreeBSD) Jun'ya Kato <kato at goto.info.waseda.ac.jp> (preparation of FreeBSD) Fuyuhiko Maruyama <fuyuhik8 at is.titech.ac.jp> (discussion and code) Toshihiko Shimokawa <toshi at csce.kyushu-u.ac.jp> (preparetion of FreeBSD) Keizo Maeda <keizo at toolhouse.jp> (porting) and my deceased wife Mari. Kazuyuki Shudo/首藤一幸 私をたばねないで あらせいとうの花のように shudo at computer.org http://www.shudo.net/
About
Java Just-in-Time Compiler for x86 processors
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published