Upgrade to version 1.1.5.

Submitted by:	Roman Kennke <roman@ontographics.com>
This commit is contained in:
Archie Cobbs 2004-06-17 15:25:29 +00:00
parent e00367a24b
commit 04b14f7d46
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=111670
23 changed files with 2632 additions and 2662 deletions

View File

@ -6,112 +6,48 @@
#
PORTNAME= sablevm
PORTVERSION= 1.0.6
PORTREVISION= 2
PORTVERSION= 1.1.5
CATEGORIES= java
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR=sablevm
DISTFILES= ${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX} \
${PORTNAME}-class-library-${PORTVERSION}${EXTRACT_SUFX} \
${PORTNAME}-native-library-${PORTVERSION}${EXTRACT_SUFX}
${PORTNAME}-classpath-${PORTVERSION}${EXTRACT_SUFX}
MAINTAINER= archie@freebsd.org
COMMENT= Java VM created by McGill University's Sable Research Group
BUILD_DEPENDS= jikes:${PORTSDIR}/java/jikes
LIB_DEPENDS= popt.0:${PORTSDIR}/devel/popt \
ffi.2:${PORTSDIR}/devel/libffi \
gmp.6:${PORTSDIR}/math/libgmp4
LIB_DEPENDS= popt:${PORTSDIR}/devel/popt \
ffi:${PORTSDIR}/devel/libffi \
ltdl:${PORTSDIR}/devel/libltdl15
USE_LIBLTDL= yes
PATCH_WRKSRC= ${WRKDIR}
PATCH_STRIP= -p1
USE_LIBTOOL_VER=13
LIBTOOLFILES= ${SABLEVMDIR}/configure ${NATIVEDIR}/configure
GNU_CONFIGURE= yes
USE_GMAKE= yes
USE_LIBTOOL_VER=13
INSTALLS_SHLIB= yes
PLIST_SUB= PORTVERSION=${PORTVERSION}
CONFIGURE_ENV= CFLAGS="-D__XSI_VISIBLE -D__BSD_VISIBLE -D_P1003_1B_VISIBLE -pthread -I${PREFIX}/include -L${PREFIX}/lib"
CONFIGURE_ENV= CFLAGS="-I${PREFIX}/include -L${PREFIX}/lib"
ONLY_FOR_ARCHS= i386
.if defined(WITH_GNOMELIBS) || exists(${X11BASE}/include/gnome-1.0/libart_lgpl/art_misc.h)
USE_GNOME= gnomelibs
PLIST_SUB+= GNOME:=""
.else
PLIST_SUB+= GNOME:="@comment "
.endif
MAN1= java-sablevm.1 sablevm.1
# Directories for the three SableVM source components
INFO= hacking vmintegration
# Directories for the SableVM source components
SABLEVMDIR= ${PORTNAME}-${PORTVERSION}
NATIVEDIR= ${PORTNAME}-native-library-${PORTVERSION}
CLASSESDIR= ${PORTNAME}-class-library-${PORTVERSION}
CLASSPATHDIR= ${PORTNAME}-classpath-${PORTVERSION}
.include <bsd.port.pre.mk>
# Conditionally compile the gnome-dependent stuff
.if !defined(WITH_GNOMELIBS) && !exists(${X11BASE}/include/gnome-1.0/libart_lgpl/art_misc.h)
EXTRA_PATCHES= ${PATCHDIR}/extra-patch-aa ${PATCHDIR}/extra-patch-ab
pre-fetch:
@${ECHO} ''
@${ECHO} '***' ' ' NOTICE
@${ECHO} '***'
@${ECHO} '***' You do not seem to have the Gnome libraries installed.
@${ECHO} '***' Therefore, SableVM will be built without graphics
@${ECHO} '***' support. If you would like to install the Gnome
@${ECHO} '***' libraries to include graphics support, hit Control-C
@${ECHO} '***' now and type \'make WITH_GNOMELIBS=yes\'.
@${ECHO} '***'
@${ECHO} ''
@sleep 3
.endif
# Repair make dependency damage caused by patching 'configure.ac' files
post-patch:
@for dir in ${SABLEVMDIR}; do \
for file in aclocal.m4 configure Makefile.in Makefile; do \
${ECHO} ${TOUCH} ${WRKDIR}/$${dir}/$${file}; \
${TOUCH} ${WRKDIR}/$${dir}/$${file}; \
done; \
done
pre-configure:
@echo "===> ${NATIVEDIR}"
post-build:
@${ECHO} "===> ${CLASSPATHDIR}"
@( cd ${.CURDIR} && ${MAKE} do-configure \
CONFIGURE_WRKSRC=${WRKDIR}/${NATIVEDIR} \
CFLAGS="-I${X11BASE}/include/gtk12 \
-I${PREFIX}/include/glib12" )
@echo "===> ${SABLEVMDIR}"
pre-build:
@echo "===> ${NATIVEDIR}"
CONFIGURE_WRKSRC=${WRKDIR}/${CLASSPATHDIR} \
CONFIGURE_ARGS="--disable-gtk-peer" )
@( cd ${.CURDIR} && ${MAKE} do-build \
BUILD_WRKSRC=${WRKDIR}/${NATIVEDIR} )
@echo "===> ${CLASSESDIR}"
@cd ${WRKDIR}/${CLASSESDIR}; \
${MKDIR} classes; \
${FIND} . | ${GREP} '\.java$$' | ${XARGS} jikes -g \
-target 1.1 -d classes \
-bootclasspath src:classes -classpath src:classes \
-sourcepath src || exit 1; \
${FIND} resource -type f | cut -d\/ -f2- \
| ${AWK} '{print "cp resource/" $$0 " classes/" $$0 }' \
| ${SH}; \
${CHMOD} -R a+rX classes
@echo "===> ${SABLEVMDIR}"
BUILD_WRKSRC=${WRKDIR}/${CLASSPATHDIR} )
pre-install:
@echo "===> ${NATIVEDIR}"
post-install:
@${ECHO} "===> ${CLASSPATHDIR}"
@( cd ${.CURDIR} && ${MAKE} do-install \
INSTALL_WRKSRC=${WRKDIR}/${NATIVEDIR} )
@echo "===> ${CLASSESDIR}"
${RM} -rf ${PREFIX}/lib/sablevm/classes-${PORTVERSION}
${CP} -R ${WRKDIR}/${CLASSESDIR}/classes \
${PREFIX}/lib/sablevm/classes-${PORTVERSION}
${CP} -R ${WRKDIR}/${CLASSESDIR}/resource \
${PREFIX}/lib/sablevm/classes-${PORTVERSION}
${MKDIR} -p ${PREFIX}/lib/sablevm/lib/security
${ECHO} security.provider.1=gnu.java.security.provider.Gnu \
> ${PREFIX}/lib/sablevm/lib/security/classpath.security
@echo "===> ${SABLEVMDIR}"
INSTALL_WRKSRC=${WRKDIR}/${CLASSPATHDIR} )
.include <bsd.port.post.mk>
.include <bsd.port.mk>

View File

@ -1,6 +1,4 @@
MD5 (sablevm-1.0.6.tar.gz) = ba057c47cf52d6ff2dc612067b1b831d
SIZE (sablevm-1.0.6.tar.gz) = 459443
MD5 (sablevm-class-library-1.0.6.tar.gz) = 654c66f4a82b37b5eeead31e291d1d6c
SIZE (sablevm-class-library-1.0.6.tar.gz) = 1782098
MD5 (sablevm-native-library-1.0.6.tar.gz) = fbb2fc1bb19c427db1ae1db4c9a2c431
SIZE (sablevm-native-library-1.0.6.tar.gz) = 479215
MD5 (sablevm-1.1.5.tar.gz) = bd622682679dbb6ad7fb8e9fc339abf8
SIZE (sablevm-1.1.5.tar.gz) = 663191
MD5 (sablevm-classpath-1.1.5.tar.gz) = 6bab25aa50da3c2b4bea4179d48cd1c5
SIZE (sablevm-classpath-1.1.5.tar.gz) = 3514687

View File

@ -1,11 +0,0 @@
--- work/sablevm-native-library-1.0.6/src/Makefile.in.orig Wed Feb 19 22:40:03 2003
+++ work/sablevm-native-library-1.0.6/src/Makefile.in Sat Feb 22 20:01:14 2003
@@ -77,7 +77,7 @@
STRIP = @STRIP@
VERSION = @VERSION@
-SUBDIRS = include jni-include classpath fdlibm java-io java-lang java-net java-util gnu-java-awt-peer-gtk
+SUBDIRS = include jni-include classpath fdlibm java-io java-lang java-net java-util
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../src/include/config.h

View File

@ -1,10 +0,0 @@
diff -ur work.orig/sablevm-native-library-1.0.6/src/Makefile.am work/sablevm-native-library-1.0.6/src/Makefile.am
--- work.orig/sablevm-native-library-1.0.6/src/Makefile.am Sun Jul 28 17:14:15 2002
+++ work/sablevm-native-library-1.0.6/src/Makefile.am Sun Aug 18 17:26:09 2002
@@ -44,5 +44,4 @@
java-io \
java-lang \
java-net \
- java-util \
- gnu-java-awt-peer-gtk
+ java-util

View File

@ -1,70 +0,0 @@
--- work/sablevm-1.0.6/configure.orig Wed Feb 19 22:28:32 2003
+++ work/sablevm-1.0.6/configure Thu Feb 20 13:35:35 2003
@@ -8088,67 +8088,6 @@
echo ***ERROR: libpopt is missing; exit 1
fi
-echo "$as_me:$LINENO: checking for pthread_self in -lpthread" >&5
-echo $ECHO_N "checking for pthread_self in -lpthread... $ECHO_C" >&6
-if test "${ac_cv_lib_pthread_pthread_self+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpthread $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-#line $LINENO "configure"
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char pthread_self ();
-int
-main ()
-{
-pthread_self ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_pthread_pthread_self=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_pthread_pthread_self=no
-fi
-rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_self" >&5
-echo "${ECHO_T}$ac_cv_lib_pthread_pthread_self" >&6
-if test $ac_cv_lib_pthread_pthread_self = yes; then
- echo -n
-else
- echo ***ERROR: libpthread is missing; exit 1
-fi
-
-
echo "$as_me:$LINENO: checking for ANSI C header files" >&5
echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
if test "${ac_cv_header_stdc+set}" = set; then

View File

@ -1,11 +0,0 @@
diff -ur work.orig/sablevm-1.0.6/configure.ac work/sablevm-1.0.6/configure.ac
--- work.orig/sablevm-1.0.6/configure.ac Wed Aug 14 22:29:54 2002
+++ work/sablevm-1.0.6/configure.ac Sat Aug 17 21:14:51 2002
@@ -119,7 +119,6 @@
AC_CHECK_LIB(ltdl,lt_dlinit,echo -n,echo ***ERROR: libltdl is missing; exit 1)
AC_CHECK_LIB(m,fmod,echo -n,echo ***ERROR: libm is missing; exit 1)
AC_CHECK_LIB(popt,poptGetContext,echo -n,echo ***ERROR: libpopt is missing; exit 1)
-AC_CHECK_LIB(pthread,pthread_self,echo -n,echo ***ERROR: libpthread is missing; exit 1)
dnl Checks for header files.
AC_HEADER_STDC

View File

@ -1,12 +0,0 @@
diff -ur work.orig/sablevm-1.0.6/src/libsablevm/Makefile.am work/sablevm-1.0.6/src/libsablevm/Makefile.am
--- work.orig/sablevm-1.0.6/src/libsablevm/Makefile.am Sun Aug 11 14:33:05 2002
+++ work/sablevm-1.0.6/src/libsablevm/Makefile.am Sat Aug 17 21:14:51 2002
@@ -306,7 +306,7 @@
rm -f util.c
rm -f vm_args.c
-libsablevm_la_LIBADD = -lpthread -lm -lffi -lltdl
+libsablevm_la_LIBADD = -lm -L@libdir@ -lffi -lltdl
libsablevm_la_LDFLAGS = -version-info @LIBRARY_VERSION@

View File

@ -1,12 +0,0 @@
diff -ur work.orig/sablevm-1.0.6/src/libsablevm/Makefile.in work/sablevm-1.0.6/src/libsablevm/Makefile.in
--- work.orig/sablevm-1.0.6/src/libsablevm/Makefile.in Wed Aug 14 22:34:07 2002
+++ work/sablevm-1.0.6/src/libsablevm/Makefile.in Sat Aug 17 21:14:51 2002
@@ -245,7 +245,7 @@
vm_args.m4.c
-libsablevm_la_LIBADD = -lpthread -lm -lffi -lltdl
+libsablevm_la_LIBADD = -lm -L@libdir@ -lffi -lltdl
libsablevm_la_LDFLAGS = -version-info @LIBRARY_VERSION@

View File

@ -1,20 +0,0 @@
--- work/sablevm-class-library-1.0.6/src/java/io/LineNumberReader.java.orig Mon Dec 9 19:12:35 2002
+++ work/sablevm-class-library-1.0.6/src/java/io/LineNumberReader.java Mon Dec 9 19:12:02 2002
@@ -115,7 +115,7 @@
public
LineNumberReader(Reader in, int size)
{
- super(new PushbackReader(in), size);
+ super(in, size);
}
/*************************************************************************/
@@ -243,7 +243,7 @@
int extra_char_read = super.read();
if ((extra_char_read != '\n') && (extra_char_read != -1))
- ((PushbackReader)in).unread(extra_char_read);
+ pos--;
char_read = '\n';
++line_number;

View File

@ -1,12 +0,0 @@
--- work/sablevm-1.0.6/src/libsablevm/thread.c.orig Fri Dec 13 11:29:17 2002
+++ work/sablevm-1.0.6/src/libsablevm/thread.c Fri Dec 13 11:29:19 2002
@@ -229,7 +229,8 @@
void *new_stack;
/* detect overflows */
- if (new_size <= current_size)
+ if ((vm->stack_max_size != 0 && new_size > vm->stack_max_size) ||
+ new_size <= current_size)
{
_svmf_error_OutOfMemoryError (env);
return JNI_ERR;

View File

@ -1,16 +0,0 @@
diff -ur work.orig/sablevm-native-library-1.0.6/src/gnu-java-awt-peer-gtk/Makefile.am work/sablevm-native-library-1.0.6/src/gnu-java-awt-peer-gtk/Makefile.am
--- work.orig/sablevm-native-library-1.0.6/src/gnu-java-awt-peer-gtk/Makefile.am Sun Jul 28 17:14:15 2002
+++ work/sablevm-native-library-1.0.6/src/gnu-java-awt-peer-gtk/Makefile.am Mon Aug 19 09:02:01 2002
@@ -75,9 +75,9 @@
INCLUDES = \
-I@top_srcdir@/src/include \
-I@top_srcdir@/src/jni-include \
- -I/usr/include/gtk-1.2 \
- -I/usr/include/glib-1.2 \
+ -I/usr/X11R6/include/gtk12 \
+ -I/usr/local/include/glib12 \
-I/usr/lib/glib/include \
-I/usr/X11R6/include \
- -I/usr/include/gnome-1.0 \
+ -I/usr/X11R6/include/gnome-1.0 \
-I@top_srcdir@/src/classpath

View File

@ -1,11 +0,0 @@
--- work/sablevm-native-library-1.0.6/src/gnu-java-awt-peer-gtk/Makefile.in.orig Wed Feb 19 22:40:07 2003
+++ work/sablevm-native-library-1.0.6/src/gnu-java-awt-peer-gtk/Makefile.in Thu Feb 20 13:39:55 2003
@@ -84,7 +84,7 @@
# gnu_java_awt_image_GdkPixbufDecoder.c
-INCLUDES = -I@top_srcdir@/src/include -I@top_srcdir@/src/jni-include -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include -I/usr/include/gnome-1.0 -I@top_srcdir@/src/classpath
+INCLUDES = -I@top_srcdir@/src/include -I@top_srcdir@/src/jni-include -I/usr/X11R6/include/gtk12 -I/usr/local/include/glib12 -I/usr/lib/glib/include -I/usr/X11R6/include -I/usr/X11R6/include/gnome-1.0 -I@top_srcdir@/src/classpath
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../../src/include/config.h

View File

@ -1,16 +0,0 @@
--- work.orig/sablevm-native-library-1.0.6/src/fdlibm/mprec.h.orig Thu Aug 22 21:32:46 2002
+++ work/sablevm-native-library-1.0.6/src/fdlibm/mprec.h Thu Aug 22 21:35:34 2002
@@ -57,11 +57,11 @@
/* ISO C99 int type declarations */
-#if !defined HAVE_INT32_DEFINED && defined HAVE_BSD_INT32_DEFINED
+#if 0
typedef u_int32_t uint32_t;
#endif
-#if !defined HAVE_BSD_INT32_DEFINED && !defined HAVE_INT32_DEFINED
+#if 0
// FIXME -- this could have problems with systems that don't define SI to be 4
typedef int int32_t __attribute__ ((mode (SI)));

View File

@ -1,11 +0,0 @@
--- work.orig/sablevm-native-library-1.0.6/src/classpath/jcl.c Tue Jan 22 16:16:06 2002
+++ work/sablevm-native-library-1.0.6/src/classpath/jcl.c Fri Aug 30 10:21:41 2002
@@ -37,7 +37,7 @@
#include <stdio.h>
#include <jcl.h>
-#include <malloc.h>
+#include <stdlib.h>
static char errstr[4098]; // this way the memory is pre-allocated, so that we do not have to worry if we are out of memory.

View File

@ -1,10 +0,0 @@
--- work.orig/sablevm-native-library-1.0.6/src/java-io/javaio.c Tue Jan 22 16:16:06 2002
+++ work/sablevm-native-library-1.0.6/src/java-io/javaio.c Fri Aug 30 10:21:47 2002
@@ -43,7 +43,6 @@
#include <fcntl.h>
#include <unistd.h>
#include <sys/stat.h>
-#include <malloc.h>
#include <jni.h>
#include <jcl.h>

View File

@ -1,140 +0,0 @@
#--- work/sablevm-1.0.6/src/libsablevm/instructions.m4.c.orig Tue Sep 10 10:35:39 2002
#+++ work/sablevm-1.0.6/src/libsablevm/instructions.m4.c Mon Dec 16 17:28:28 2002
#@@ -4838,10 +4838,28 @@
# }
#
# addr[0].jint = methodref_info->method->java_args_count;
#- addr[1].offset =
#- sizeof (_svmt_vtable) +
#- (methodref_info->method->method_id *
#- sizeof (_svmt_method_info *));
#+
#+ /*
#+ * _svmf_resolve_CONSTANT_Methodref() may return an interface
#+ * method in certain situations (e.g., invoking an interface
#+ * method that's implemented in a subclass of an abstract class
#+ * not implementing the method but implementing the interface).
#+ */
#+ if (_svmf_is_set_flag
#+ (methodref_info->method->class_info->access_flags,
#+ SVM_ACC_INTERFACE))
#+ {
#+ addr[1].offset =
#+ -((1 + methodref_info->method->method_id) *
#+ sizeof (_svmt_method_info *));
#+ }
#+ else
#+ {
#+ addr[1].offset =
#+ sizeof (_svmt_vtable) +
#+ (methodref_info->method->method_id *
#+ sizeof (_svmt_method_info *));
#+ }
#
# /* execute bytecode */
# {
--- work/sablevm-1.0.6/src/libsablevm/instructions_preparation_direct_threaded.c.orig Wed Oct 16 14:54:30 2002
+++ work/sablevm-1.0.6/src/libsablevm/instructions_preparation_direct_threaded.c Mon Dec 16 17:28:29 2002
@@ -17905,10 +17905,28 @@
}
addr[0].jint = methodref_info->method->java_args_count;
- addr[1].offset =
- sizeof (_svmt_vtable) +
- (methodref_info->method->method_id *
- sizeof (_svmt_method_info *));
+
+ /*
+ * _svmf_resolve_CONSTANT_Methodref() may return an interface
+ * method in certain situations (e.g., invoking an interface
+ * method that's implemented in a subclass of an abstract class
+ * not implementing the method but implementing the interface).
+ */
+ if (_svmf_is_set_flag
+ (methodref_info->method->class_info->access_flags,
+ SVM_ACC_INTERFACE))
+ {
+ addr[1].offset =
+ -((1 + methodref_info->method->method_id) *
+ sizeof (_svmt_method_info *));
+ }
+ else
+ {
+ addr[1].offset =
+ sizeof (_svmt_vtable) +
+ (methodref_info->method->method_id *
+ sizeof (_svmt_method_info *));
+ }
/* execute bytecode */
{
--- work/sablevm-1.0.6/src/libsablevm/instructions_preparation_inlined_threaded.c.orig Wed Oct 16 14:54:31 2002
+++ work/sablevm-1.0.6/src/libsablevm/instructions_preparation_inlined_threaded.c Mon Dec 16 17:28:29 2002
@@ -21512,10 +21512,28 @@
}
addr[0].jint = methodref_info->method->java_args_count;
- addr[1].offset =
- sizeof (_svmt_vtable) +
- (methodref_info->method->method_id *
- sizeof (_svmt_method_info *));
+
+ /*
+ * _svmf_resolve_CONSTANT_Methodref() may return an interface
+ * method in certain situations (e.g., invoking an interface
+ * method that's implemented in a subclass of an abstract class
+ * not implementing the method but implementing the interface).
+ */
+ if (_svmf_is_set_flag
+ (methodref_info->method->class_info->access_flags,
+ SVM_ACC_INTERFACE))
+ {
+ addr[1].offset =
+ -((1 + methodref_info->method->method_id) *
+ sizeof (_svmt_method_info *));
+ }
+ else
+ {
+ addr[1].offset =
+ sizeof (_svmt_vtable) +
+ (methodref_info->method->method_id *
+ sizeof (_svmt_method_info *));
+ }
/* execute bytecode */
{
--- work/sablevm-1.0.6/src/libsablevm/instructions_switch.c.orig Wed Oct 16 14:54:31 2002
+++ work/sablevm-1.0.6/src/libsablevm/instructions_switch.c Mon Dec 16 17:28:29 2002
@@ -15936,10 +15936,28 @@
}
addr[0].jint = methodref_info->method->java_args_count;
- addr[1].offset =
- sizeof (_svmt_vtable) +
- (methodref_info->method->method_id *
- sizeof (_svmt_method_info *));
+
+ /*
+ * _svmf_resolve_CONSTANT_Methodref() may return an interface
+ * method in certain situations (e.g., invoking an interface
+ * method that's implemented in a subclass of an abstract class
+ * not implementing the method but implementing the interface).
+ */
+ if (_svmf_is_set_flag
+ (methodref_info->method->class_info->access_flags,
+ SVM_ACC_INTERFACE))
+ {
+ addr[1].offset =
+ -((1 + methodref_info->method->method_id) *
+ sizeof (_svmt_method_info *));
+ }
+ else
+ {
+ addr[1].offset =
+ sizeof (_svmt_vtable) +
+ (methodref_info->method->method_id *
+ sizeof (_svmt_method_info *));
+ }
/* execute bytecode */
{

View File

@ -1,18 +0,0 @@
--- work/sablevm-1.0.6/src/libsablevm/gc_copying.c.orig Tue Dec 10 11:51:13 2002
+++ work/sablevm-1.0.6/src/libsablevm/gc_copying.c Tue Dec 10 11:51:34 2002
@@ -1054,14 +1054,7 @@
return JNI_ERR;
}
- {
- size_t i;
-
- for (i = 0; i < instance_size; i++)
- {
- ((char *) result)[i] = 0;
- }
- }
+ memset(result, 0, instance_size);
*pinstance = result;

View File

@ -1,12 +0,0 @@
--- work/sablevm-1.0.6/src/sablevm/sablevm.c.orig Thu Oct 24 07:52:16 2002
+++ work/sablevm-1.0.6/src/sablevm/sablevm.c Thu Feb 20 13:32:59 2003
@@ -1431,6 +1431,9 @@
exit_status = EXIT_FAILURE;
goto cleanup;
}
+
+ /* free up local native reference */
+ (*env)->DeleteLocalRef (env, s);
}
}

View File

@ -1,20 +0,0 @@
--- work/sablevm-class-library-1.0.6/src/gnu/java/io/encode/EncoderUTF8.java.orig Thu Feb 20 14:00:06 2003
+++ work/sablevm-class-library-1.0.6/src/gnu/java/io/encode/EncoderUTF8.java Thu Feb 20 14:00:36 2003
@@ -85,7 +85,7 @@
{
int num_bytes = 0;
- for (int i = offset; i < len; i++)
+ for (int i = offset; i < offset + len; i++)
{
if (buf[i] <= 0x007F)
++num_bytes;
@@ -107,7 +107,7 @@
convertToBytes(char[] buf, int buf_offset, int len, byte[] bbuf,
int bbuf_offset)
{
- for (int i = buf_offset; i < len; i++)
+ for (int i = buf_offset; i < buf_offset + len; i++)
{
if (buf[i] >= 0x0000 && buf[i] <= 0x007F)
{

View File

@ -1,12 +0,0 @@
--- work/sablevm-1.0.6/src/libsablevm/class_loader.c.orig Thu Feb 20 13:58:04 2003
+++ work/sablevm-1.0.6/src/libsablevm/class_loader.c Thu Feb 20 14:02:19 2003
@@ -299,8 +299,7 @@
}
/* check version and name */
- if (!(class->major_version == 45 ||
- (class->major_version == 46 && class->minor_version == 0)))
+ if (!(class->major_version >= 45 && class->major_version <= 48))
{
_svmf_error_UnsupportedClassVersionError (env);
return JNI_ERR;

View File

@ -1,12 +0,0 @@
--- work/sablevm-1.0.6/src/libsablevm/java_lang_VMClassLoader.c.orig Wed Mar 19 16:21:51 2003
+++ work/sablevm-1.0.6/src/libsablevm/java_lang_VMClassLoader.c Wed Mar 19 16:22:20 2003
@@ -460,8 +460,7 @@
}
/* check version and name */
- if (!(class->major_version == 45 ||
- (class->major_version == 46 && class->minor_version == 0)))
+ if (!(class->major_version >= 45 && class->major_version <= 48))
{
_svmf_error_UnsupportedClassVersionError (env);
goto end;

View File

@ -1,15 +0,0 @@
--- work/sablevm-class-library-1.0.6/src/java/lang/ClassLoader.java.orig Wed Mar 19 16:28:55 2003
+++ work/sablevm-class-library-1.0.6/src/java/lang/ClassLoader.java Wed Mar 19 16:13:56 2003
@@ -913,9 +913,12 @@
try
{
// Give the new system class loader a null parent.
+ /***********
Constructor c = Class.forName(loader).getConstructor
( new Class[] { ClassLoader.class } );
return (ClassLoader) c.newInstance(new Object[1]);
+ ***********/
+ return new gnu.java.lang.SystemClassLoader(null);
}
catch (Exception e)
{

File diff suppressed because it is too large Load Diff