#! /bin/sh
 
# results on fedora 11
#  gcc/gcj 4.4.1
#  kernel 2.6.30.5-43.fc11.x86_64
#  openjdk fedora-29.b16.fc11-x86_64
#
#			open jdk	gcj
# no_jni		 1.48		    7.46	(  5 times slower)
# jni			66.70		17140.00	(257 times slower)

echo no jni
cd no_jni
javac *.java
gcj -O3 -fjni --main=tst *.class -o tst
/usr/bin/time java tst 100000000
/usr/bin/time ./tst 100000000
rm -f *.class tst

echo jni
cd ../jni
javac *.java
gcc -O3 -g -fPIC -shared tstServiceImpl.c -o libtst.so
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH
gcj -O3 -g -fjni --main=tst *.class -o tst
# time should be multiplied by 10
/usr/bin/time java tst 10000000
# time should be multiplied by 1000
/usr/bin/time ./tst 100000
rm -f *.class *.so tst

cd ..
tar cf tst.tar gen no_jni jni
