[kaffe] CVS kaffe (dalibor): Converted CALL_KAFFE_EXCEPTION to a static inline function
Kaffe CVS
cvs-commits at kaffe.org
Tue Dec 23 09:39:02 PST 2003
PatchSet 4233
Date: 2003/12/23 17:26:20
Author: dalibor
Branch: HEAD
Tag: (none)
Log:
Converted CALL_KAFFE_EXCEPTION to a static inline function
2003-12-23 Dalibor Topic <robilad at kaffe.org>
* configure.in
(CONFIG_CALLKAFFEEXCEPTION_H): New variable.
* config/alpha/jit.h,
config/arm/jit.h,
config/i386/jit.h,
config/m68k/jit.h,
config/mips/jit.h,
config/sparc/jit.h:
(CALL_KAFFE_EXCEPTION) Converted to static inline
function, and moved to its own file.
* config/alpha/callKaffeException.h,
config/arm/callKaffeException.h,
config/i386/callKaffeException.h,
config/m68k/callKaffeException.h,
config/mips/callKaffeException.h,
config/sparc/callKaffeException.h:
New files.
* kaffe/kaffevm/exception.c:
Include callKaffeException.h.
* config/Makefile.am
(EXTRA_DIST): Added config/alpha/callKaffeException.h,
config/arm/callKaffeException.h,
config/i386/callKaffeException.h,
config/m68k/callKaffeException.h,
config/mips/callKaffeException.h,
config/sparc/callKaffeException.h.
(GEN_HDRS, DISTCLEANFILES, noinst_HEADERS) Cleaned up.
(callKaffeException.h, stamp-h04) New targets.
* Makefile.in,
config/Makefile.in,
configure,
include/Makefile.in,
kaffe/Makefile.in,
kaffe/jvmpi/Makefile.in,
kaffe/kaffe/Makefile.in,
kaffe/kaffeh/Makefile.in,
kaffe/kaffevm/Makefile.am,
kaffe/kaffevm/Makefile.in,
kaffe/kaffevm/gcj/Makefile.in,
kaffe/kaffevm/intrp/Makefile.in,
kaffe/kaffevm/jit/Makefile.in,
kaffe/kaffevm/jit3/Makefile.in,
kaffe/kaffevm/systems/Makefile.in,
kaffe/kaffevm/systems/beos-native/Makefile.in,
kaffe/kaffevm/systems/oskit-pthreads/Makefile.in,
kaffe/kaffevm/systems/unix-jthreads/Makefile.in,
kaffe/kaffevm/systems/unix-pthreads/Makefile.in,
kaffe/man/Makefile.in,
kaffe/scripts/Makefile.in,
kaffe/scripts/bat/Makefile.in,
kaffe/scripts/compat/Makefile.in,
kaffe/xprof/Makefile.in,
libraries/Makefile.in,
libraries/clib/Makefile.in,
libraries/clib/awt/Makefile.in,
libraries/clib/awt/X/Makefile.in,
libraries/clib/awt/qt/Makefile.in, libraries/clib/io/Makefile.in,
libraries/clib/management/Makefile.in,
libraries/clib/math/Makefile.in,
libraries/clib/native/Makefile.in,
libraries/clib/net/Makefile.in,
libraries/clib/nio/Makefile.in,
libraries/clib/security/Makefile.in,
libraries/clib/zip/Makefile.in,
libraries/extensions/Makefile.in,
libraries/extensions/comm/Makefile.in,
libraries/extensions/comm/javalib/Makefile.in,
libraries/extensions/microsoft/Makefile.in,
libraries/extensions/microsoft/clib/Makefile.in,
libraries/extensions/microsoft/javalib/Makefile.in,
libraries/extensions/pjava/Makefile.in,
libraries/extensions/pjava/javalib/Makefile.in,
libraries/extensions/servlet/Makefile.in,
libraries/extensions/servlet/javalib/Makefile.in,
libraries/extensions/sound/Makefile.in,
libraries/extensions/sound/alsa/Makefile.in,
libraries/extensions/sound/common/Makefile.in,
libraries/extensions/sound/esd/Makefile.in,
libraries/javalib/Makefile.in,
replace/Makefile.in,
test/Makefile.in,
test/internal/Makefile.in,
test/regression/Makefile.in,
test/regression/compile_time/Makefile.in,
test/regression/run_time/Makefile.in:
Regenerated.
Members:
ChangeLog:1.1822->1.1823
Makefile.in:1.122->1.123
configure:1.268->1.269
configure.in:1.233->1.234
config/Makefile.am:1.35->1.36
config/Makefile.in:1.103->1.104
config/alpha/callKaffeException.h:INITIAL->1.1
config/alpha/jit.h:1.6->1.7
config/arm/callKaffeException.h:INITIAL->1.1
config/arm/jit.h:1.11->1.12
config/i386/callKaffeException.h:INITIAL->1.1
config/i386/jit.h:1.19->1.20
config/m68k/callKaffeException.h:INITIAL->1.1
config/m68k/jit.h:1.10->1.11
config/mips/callKaffeException.h:INITIAL->1.1
config/mips/jit.h:1.9->1.10
config/sparc/callKaffeException.h:INITIAL->1.1
config/sparc/jit.h:1.8->1.9
include/Makefile.in:1.128->1.129
kaffe/Makefile.in:1.89->1.90
kaffe/jvmpi/Makefile.in:1.10->1.11
kaffe/kaffe/Makefile.in:1.103->1.104
kaffe/kaffeh/Makefile.in:1.86->1.87
kaffe/kaffevm/Makefile.am:1.47->1.48
kaffe/kaffevm/Makefile.in:1.120->1.121
kaffe/kaffevm/exception.c:1.74->1.75
kaffe/kaffevm/gcj/Makefile.in:1.69->1.70
kaffe/kaffevm/intrp/Makefile.in:1.75->1.76
kaffe/kaffevm/jit/Makefile.in:1.81->1.82
kaffe/kaffevm/jit3/Makefile.in:1.51->1.52
kaffe/kaffevm/systems/Makefile.in:1.77->1.78
kaffe/kaffevm/systems/beos-native/Makefile.in:1.68->1.69
kaffe/kaffevm/systems/oskit-pthreads/Makefile.in:1.74->1.75
kaffe/kaffevm/systems/unix-jthreads/Makefile.in:1.77->1.78
kaffe/kaffevm/systems/unix-pthreads/Makefile.in:1.47->1.48
kaffe/man/Makefile.in:1.75->1.76
kaffe/scripts/Makefile.in:1.112->1.113
kaffe/scripts/bat/Makefile.in:1.68->1.69
kaffe/scripts/compat/Makefile.in:1.93->1.94
kaffe/xprof/Makefile.in:1.43->1.44
libraries/Makefile.in:1.72->1.73
libraries/clib/Makefile.in:1.80->1.81
libraries/clib/awt/Makefile.in:1.85->1.86
libraries/clib/awt/X/Makefile.in:1.75->1.76
libraries/clib/awt/qt/Makefile.in:1.30->1.31
libraries/clib/io/Makefile.in:1.78->1.79
libraries/clib/management/Makefile.in:1.87->1.88
libraries/clib/math/Makefile.in:1.83->1.84
libraries/clib/native/Makefile.in:1.110->1.111
libraries/clib/net/Makefile.in:1.91->1.92
libraries/clib/nio/Makefile.in:1.4->1.5
libraries/clib/security/Makefile.in:1.51->1.52
libraries/clib/zip/Makefile.in:1.85->1.86
libraries/extensions/Makefile.in:1.63->1.64
libraries/extensions/comm/Makefile.in:1.58->1.59
libraries/extensions/comm/javalib/Makefile.in:1.58->1.59
libraries/extensions/microsoft/Makefile.in:1.50->1.51
libraries/extensions/microsoft/clib/Makefile.in:1.53->1.54
libraries/extensions/microsoft/javalib/Makefile.in:1.51->1.52
libraries/extensions/pjava/Makefile.in:1.58->1.59
libraries/extensions/pjava/javalib/Makefile.in:1.58->1.59
libraries/extensions/servlet/Makefile.in:1.58->1.59
libraries/extensions/servlet/javalib/Makefile.in:1.58->1.59
libraries/extensions/sound/Makefile.in:1.26->1.27
libraries/extensions/sound/alsa/Makefile.in:1.28->1.29
libraries/extensions/sound/common/Makefile.in:1.28->1.29
libraries/extensions/sound/esd/Makefile.in:1.28->1.29
libraries/javalib/Makefile.in:1.199->1.200
replace/Makefile.in:1.22->1.23
test/Makefile.in:1.78->1.79
test/internal/Makefile.in:1.36->1.37
test/regression/Makefile.in:1.145->1.146
test/regression/compile_time/Makefile.in:1.6->1.7
test/regression/run_time/Makefile.in:1.7->1.8
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.1822 kaffe/ChangeLog:1.1823
--- kaffe/ChangeLog:1.1822 Fri Dec 19 20:03:24 2003
+++ kaffe/ChangeLog Tue Dec 23 17:26:20 2003
@@ -1,3 +1,98 @@
+2003-12-23 Dalibor Topic <robilad at kaffe.org>
+
+ * configure.in
+ (CONFIG_CALLKAFFEEXCEPTION_H): New variable.
+
+ * config/alpha/jit.h,
+ config/arm/jit.h,
+ config/i386/jit.h,
+ config/m68k/jit.h,
+ config/mips/jit.h,
+ config/sparc/jit.h:
+ (CALL_KAFFE_EXCEPTION) Converted to static inline
+ function, and moved to its own file.
+
+ * config/alpha/callKaffeException.h,
+ config/arm/callKaffeException.h,
+ config/i386/callKaffeException.h,
+ config/m68k/callKaffeException.h,
+ config/mips/callKaffeException.h,
+ config/sparc/callKaffeException.h:
+ New files.
+
+ * kaffe/kaffevm/exception.c:
+ Include callKaffeException.h.
+
+ * config/Makefile.am
+ (EXTRA_DIST): Added config/alpha/callKaffeException.h,
+ config/arm/callKaffeException.h,
+ config/i386/callKaffeException.h,
+ config/m68k/callKaffeException.h,
+ config/mips/callKaffeException.h,
+ config/sparc/callKaffeException.h.
+ (GEN_HDRS, DISTCLEANFILES, noinst_HEADERS) Cleaned up.
+ (callKaffeException.h, stamp-h04) New targets.
+
+ * Makefile.in,
+ config/Makefile.in,
+ configure,
+ include/Makefile.in,
+ kaffe/Makefile.in,
+ kaffe/jvmpi/Makefile.in,
+ kaffe/kaffe/Makefile.in,
+ kaffe/kaffeh/Makefile.in,
+ kaffe/kaffevm/Makefile.am,
+ kaffe/kaffevm/Makefile.in,
+ kaffe/kaffevm/gcj/Makefile.in,
+ kaffe/kaffevm/intrp/Makefile.in,
+ kaffe/kaffevm/jit/Makefile.in,
+ kaffe/kaffevm/jit3/Makefile.in,
+ kaffe/kaffevm/systems/Makefile.in,
+ kaffe/kaffevm/systems/beos-native/Makefile.in,
+ kaffe/kaffevm/systems/oskit-pthreads/Makefile.in,
+ kaffe/kaffevm/systems/unix-jthreads/Makefile.in,
+ kaffe/kaffevm/systems/unix-pthreads/Makefile.in,
+ kaffe/man/Makefile.in,
+ kaffe/scripts/Makefile.in,
+ kaffe/scripts/bat/Makefile.in,
+ kaffe/scripts/compat/Makefile.in,
+ kaffe/xprof/Makefile.in,
+ libraries/Makefile.in,
+ libraries/clib/Makefile.in,
+ libraries/clib/awt/Makefile.in,
+ libraries/clib/awt/X/Makefile.in,
+ libraries/clib/awt/qt/Makefile.in,
+ libraries/clib/io/Makefile.in,
+ libraries/clib/management/Makefile.in,
+ libraries/clib/math/Makefile.in,
+ libraries/clib/native/Makefile.in,
+ libraries/clib/net/Makefile.in,
+ libraries/clib/nio/Makefile.in,
+ libraries/clib/security/Makefile.in,
+ libraries/clib/zip/Makefile.in,
+ libraries/extensions/Makefile.in,
+ libraries/extensions/comm/Makefile.in,
+ libraries/extensions/comm/javalib/Makefile.in,
+ libraries/extensions/microsoft/Makefile.in,
+ libraries/extensions/microsoft/clib/Makefile.in,
+ libraries/extensions/microsoft/javalib/Makefile.in,
+ libraries/extensions/pjava/Makefile.in,
+ libraries/extensions/pjava/javalib/Makefile.in,
+ libraries/extensions/servlet/Makefile.in,
+ libraries/extensions/servlet/javalib/Makefile.in,
+ libraries/extensions/sound/Makefile.in,
+ libraries/extensions/sound/alsa/Makefile.in,
+ libraries/extensions/sound/common/Makefile.in,
+ libraries/extensions/sound/esd/Makefile.in,
+ libraries/javalib/Makefile.in,
+ replace/Makefile.in,
+ test/Makefile.in,
+ test/internal/Makefile.in,
+ test/regression/Makefile.in,
+ test/regression/compile_time/Makefile.in,
+ test/regression/run_time/Makefile.in:
+ Regenerated.
+
2003-12-19 Dalibor Topic <robilad at kaffe.org>
* FAQ/FAQ.automake:
Index: kaffe/Makefile.in
diff -u kaffe/Makefile.in:1.122 kaffe/Makefile.in:1.123
--- kaffe/Makefile.in:1.122 Fri Dec 19 20:03:25 2003
+++ kaffe/Makefile.in Tue Dec 23 17:26:21 2003
@@ -114,6 +114,7 @@
COND_SOUND_ALSA_TRUE = @COND_SOUND_ALSA_TRUE@
COND_SOUND_ESD_FALSE = @COND_SOUND_ESD_FALSE@
COND_SOUND_ESD_TRUE = @COND_SOUND_ESD_TRUE@
+CONFIG_CALLKAFFEEXCEPTION_H = @CONFIG_CALLKAFFEEXCEPTION_H@
CONFIG_JIT_MD_H = @CONFIG_JIT_MD_H@
CONFIG_MD_H = @CONFIG_MD_H@
CONFIG_XPROFILE_MD_H = @CONFIG_XPROFILE_MD_H@
Index: kaffe/configure
diff -u kaffe/configure:1.268 kaffe/configure:1.269
--- kaffe/configure:1.268 Fri Dec 19 20:03:26 2003
+++ kaffe/configure Tue Dec 23 17:26:21 2003
@@ -467,7 +467,7 @@
#endif"
ac_subdirs_all="$ac_subdirs_all libltdl"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT abssrcdir CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBTOOL_DEPS LIBLTDL CCLD REGEN_FORWARD CONFIG_MD_H KAFFEVM_MD_C CONFIG_JIT_MD_H KAFFEVM_JIT_DEF KAFFEVM_ICODE_H HAVE_CONFIG_JIT_MD_H USE_JIT_TRUE USE_JIT_FALSE ENGINE_NAME BCEL_JAR HAVE_BCEL_TRUE HAVE_BCEL_FALSE ENABLE_JVMPI_TRUE ENABLE_JVMPI_FALSE DNSJAVA_JAR HAVE_DNSJAVA_TRUE HAVE_DNSJAVA_FALSE ENABLE_XPROF_TRUE ENABLE_XPROF_FALSE CONFIG_XPROFILE_MD_H NEED_LIBXPROF_TRUE NEED_LIBXPROF_FALSE SUN_COMPAT_TRUE SUN_COMPAT_FALSE THREAD_DIR JIKESPROG JIKES KAFFEVM_TRAMPOLINES_C KVER JAVA_LIBS with_engine THREAD_SYSTEM KPREFIX KAFFE_ARCHOS ZIP MKTEMP JASMIN HAVE_ZIP_TRUE HAVE_ZIP_FALSE HAVE_JIKES_TRUE HAVE_JIKES_FALSE HAVE_MKTEMP_TRUE HAVE_MKTEMP_FALSE HAVE_JASMIN_TRUE HAVE_JASMIN_FALSE KAFFE_LIBS M_LIBS VM_LIBS NET_LIBS ZIP_LIBS MATH_LIBS SECURITY_LIBS X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS AWT_LIBS HAVE_GCJ_SUPPORT_TRUE HAVE_GCJ_SUPPORT_FALSE LIBOBJS LIBICONV LTLIBICONV USE_COMPAT_IFADDRS_TRUE USE_COMPAT_IFADDRS_FALSE MOC UIC QEMBED QT_CXXFLAGS QT_LDADD QT_GUILINK AWT_DIR COND_SOUND_ALSA_TRUE COND_SOUND_ALSA_FALSE COND_SOUND_ESD_TRUE COND_SOUND_ESD_FALSE COND_PURE_JAVA_MATH_TRUE COND_PURE_JAVA_MATH_FALSE MATH_LIB INCLUDED_EXTENSIONS GNU_CRYPTO_HOME GNU_CRYPTO_JAR JAVAX_CRYPTO_JAR JAVAX_SECURITY_JAR USER_WANT_GNU_CRYPTO_TRUE USER_WANT_GNU_CRYPTO_FALSE PROFILE USE_PRECOMPILED_RT_JAR_TRUE USE_PRECOMPILED_RT_JAR_FALSE PATH_TO_RT_JAR DLOPEN_JAVA_LIBS KLIBFLAGS KVMBINFLAGS KVMLIBFLAGS KAFFEH MAKE_KAFFEH toolslibdir jredir jrebindir jrelibdir nativedir securitydir PATHSEP DIRSEP kaffe_TRANSF kaffeh_TRANSF kaffebin_TRANSF CFLAGS_WITHOUT_PG subdirs LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT abssrcdir CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBTOOL_DEPS LIBLTDL CCLD REGEN_FORWARD CONFIG_MD_H CONFIG_CALLKAFFEEXCEPTION_H KAFFEVM_MD_C CONFIG_JIT_MD_H KAFFEVM_JIT_DEF KAFFEVM_ICODE_H HAVE_CONFIG_JIT_MD_H USE_JIT_TRUE USE_JIT_FALSE ENGINE_NAME BCEL_JAR HAVE_BCEL_TRUE HAVE_BCEL_FALSE ENABLE_JVMPI_TRUE ENABLE_JVMPI_FALSE DNSJAVA_JAR HAVE_DNSJAVA_TRUE HAVE_DNSJAVA_FALSE ENABLE_XPROF_TRUE ENABLE_XPROF_FALSE CONFIG_XPROFILE_MD_H NEED_LIBXPROF_TRUE NEED_LIBXPROF_FALSE SUN_COMPAT_TRUE SUN_COMPAT_FALSE THREAD_DIR JIKESPROG JIKES KAFFEVM_TRAMPOLINES_C KVER JAVA_LIBS with_engine THREAD_SYSTEM KPREFIX KAFFE_ARCHOS ZIP MKTEMP JASMIN HAVE_ZIP_TRUE HAVE_ZIP_FALSE HAVE_JIKES_TRUE HAVE_JIKES_FALSE HAVE_MKTEMP_TRUE HAVE_MKTEMP_FALSE HAVE_JASMIN_TRUE HAVE_JASMIN_FALSE KAFFE_LIBS M_LIBS VM_LIBS NET_LIBS ZIP_LIBS MATH_LIBS SECURITY_LIBS X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS AWT_LIBS HAVE_GCJ_SUPPORT_TRUE HAVE_GCJ_SUPPORT_FALSE LIBOBJS LIBICONV LTLIBICONV USE_COMPAT_IFADDRS_TRUE USE_COMPAT_IFADDRS_FALSE MOC UIC QEMBED QT_CXXFLAGS QT_LDADD QT_GUILINK AWT_DIR COND_SOUND_ALSA_TRUE COND_SOUND_ALSA_FALSE COND_SOUND_ESD_TRUE COND_SOUND_ESD_FALSE COND_PURE_JAVA_MATH_TRUE COND_PURE_JAVA_MATH_FALSE MATH_LIB INCLUDED_EXTENSIONS GNU_CRYPTO_HOME GNU_CRYPTO_JAR JAVAX_CRYPTO_JAR JAVAX_SECURITY_JAR USER_WANT_GNU_CRYPTO_TRUE USER_WANT_GNU_CRYPTO_FALSE PROFILE USE_PRECOMPILED_RT_JAR_TRUE USE_PRECOMPILED_RT_JAR_FALSE PATH_TO_RT_JAR DLOPEN_JAVA_LIBS KLIBFLAGS KVMBINFLAGS KVMLIBFLAGS KAFFEH MAKE_KAFFEH toolslibdir jredir jrebindir jrelibdir nativedir securitydir PATHSEP DIRSEP kaffe_TRANSF kaffeh_TRANSF kaffebin_TRANSF CFLAGS_WITHOUT_PG subdirs LTLIBOBJS'
ac_subst_files='cpu_os_frag cpu_frag engine_frag threads_frag'
# Initialize some variables set by options.
@@ -19291,12 +19291,14 @@
CONFIG_MD_H="\$(srcdir)/$Khost_cpu/$Khost_os/md.h"
+CONFIG_CALLKAFFEEXCEPTION_H="\$(top_srcdir)/config/$Khost_cpu/callKaffeException.h"
KAFFEVM_MD_C="\$(top_srcdir)/config/$Khost_cpu/$Khost_os/md.c"
+
if test -f $srcdir/config/$Khost_cpu/$Khost_os/Make.frag ; then
cpu_os_frag=$srcdir/config/$Khost_cpu/$Khost_os/Make.frag
else
@@ -47047,6 +47049,7 @@
s, at CCLD@,$CCLD,;t t
s, at REGEN_FORWARD@,$REGEN_FORWARD,;t t
s, at CONFIG_MD_H@,$CONFIG_MD_H,;t t
+s, at CONFIG_CALLKAFFEEXCEPTION_H@,$CONFIG_CALLKAFFEEXCEPTION_H,;t t
s, at KAFFEVM_MD_C@,$KAFFEVM_MD_C,;t t
s, at CONFIG_JIT_MD_H@,$CONFIG_JIT_MD_H,;t t
s, at KAFFEVM_JIT_DEF@,$KAFFEVM_JIT_DEF,;t t
Index: kaffe/configure.in
diff -u kaffe/configure.in:1.233 kaffe/configure.in:1.234
--- kaffe/configure.in:1.233 Wed Dec 10 23:11:48 2003
+++ kaffe/configure.in Tue Dec 23 17:26:27 2003
@@ -184,8 +184,10 @@
dnl -------------------------------------------------------------------------
CONFIG_MD_H="\$(srcdir)/$Khost_cpu/$Khost_os/md.h"
+CONFIG_CALLKAFFEEXCEPTION_H="\$(top_srcdir)/config/$Khost_cpu/callKaffeException.h"
KAFFEVM_MD_C="\$(top_srcdir)/config/$Khost_cpu/$Khost_os/md.c"
AC_SUBST(CONFIG_MD_H)
+AC_SUBST(CONFIG_CALLKAFFEEXCEPTION_H)
AC_SUBST(KAFFEVM_MD_C)
dnl =========================================================================
Index: kaffe/config/Makefile.am
diff -u kaffe/config/Makefile.am:1.35 kaffe/config/Makefile.am:1.36
--- kaffe/config/Makefile.am:1.35 Sun Dec 14 16:31:39 2003
+++ kaffe/config/Makefile.am Tue Dec 23 17:26:30 2003
@@ -21,19 +21,36 @@
XPROF_HDRS =
endif
-GEN_HDRS = md.h $(XPROF_HDRS) $(ENGINE_GEN_HDRS)
+GEN_HDRS = \
+ md.h \
+ callKaffeException.h \
+ $(XPROF_HDRS) \
+ $(ENGINE_GEN_HDRS)
-DISTCLEANFILES = $(GEN_HDRS) stamp-h01 stamp-h02 stamp-h03
+DISTCLEANFILES = \
+ $(GEN_HDRS) \
+ stamp-h01 \
+ stamp-h02 \
+ stamp-h03 \
+ stamp-h04
-noinst_HEADERS = $(GEN_HDRS) \
- config-hacks.h config-io.h config-math.h config-mem.h \
- config-net.h config-setjmp.h config-signal.h config-std.h
+noinst_HEADERS = \
+ $(GEN_HDRS) \
+ config-hacks.h \
+ config-io.h \
+ config-math.h \
+ config-mem.h \
+ config-net.h \
+ config-setjmp.h \
+ config-signal.h \
+ config-std.h
EXTRA_DIST = \
config.alias \
regen-forward \
stamp-h1.in \
alpha/alpha.c \
+ alpha/callKaffeException.h \
alpha/common.h \
alpha/jit-alpha.def \
alpha/jit-icode.h \
@@ -53,6 +70,7 @@
alpha/sysdepCallMethod.h \
alpha/threads.h \
alpha/trampolines.c \
+ arm/callKaffeException.h \
arm/common.h \
arm/jit-arm.def \
arm/jit-icode.h \
@@ -96,6 +114,7 @@
i386/bsdi/jit-md.h \
i386/bsdi/md.c \
i386/bsdi/md.h \
+ i386/callKaffeException.h \
i386/common.h \
i386/cygwin32/config.frag \
i386/cygwin32/jit-md.h \
@@ -183,6 +202,7 @@
m68k/amigaos/config.frag \
m68k/amigaos/md.c \
m68k/amigaos/md.h \
+ m68k/callKaffeException.h \
m68k/common.h \
m68k/jit-icode.h \
m68k/jit-m68k.def \
@@ -213,6 +233,7 @@
m68k/sysdepCallMethod.h \
m68k/threads.h \
m68k/trampolines.c \
+ mips/callKaffeException.h \
mips/common.h \
mips/irix5/config.frag \
mips/irix5/md.c \
@@ -275,6 +296,7 @@
sparc/bsdi3/jit-md.h \
sparc/bsdi3/md.c \
sparc/bsdi3/md.h \
+ sparc/callKaffeException.h \
sparc/common.h \
sparc/jit-icode.h \
sparc/jit-sparc.def \
@@ -335,6 +357,12 @@
else :; fi
stamp-h03: $(top_builddir)/config.status
$(SHELL) $(REGEN_FORWARD) $(CONFIG_XPROFILE_MD_H) xprofile-md.h $@
+
+callKaffeException.h: stamp-h04
+ @if test ! -f $@; then rm -f stamp-h04; $(MAKE) stamp-h04; \
+ else :; fi
+stamp-h04: $(top_builddir)/config.status
+ $(SHELL) $(REGEN_FORWARD) $(CONFIG_CALLKAFFEEXCEPTION_H) callKaffeException.h $@
dist-hook:
@for file in $(DISTCLEANFILES); do \
Index: kaffe/config/Makefile.in
diff -u kaffe/config/Makefile.in:1.103 kaffe/config/Makefile.in:1.104
--- kaffe/config/Makefile.in:1.103 Fri Dec 19 20:03:32 2003
+++ kaffe/config/Makefile.in Tue Dec 23 17:26:30 2003
@@ -91,6 +91,7 @@
COND_SOUND_ALSA_TRUE = @COND_SOUND_ALSA_TRUE@
COND_SOUND_ESD_FALSE = @COND_SOUND_ESD_FALSE@
COND_SOUND_ESD_TRUE = @COND_SOUND_ESD_TRUE@
+CONFIG_CALLKAFFEEXCEPTION_H = @CONFIG_CALLKAFFEEXCEPTION_H@
CONFIG_JIT_MD_H = @CONFIG_JIT_MD_H@
CONFIG_MD_H = @CONFIG_MD_H@
CONFIG_XPROFILE_MD_H = @CONFIG_XPROFILE_MD_H@
@@ -281,17 +282,36 @@
@USE_JIT_TRUE at ENGINE_GEN_HDRS = jit-md.h
@ENABLE_XPROF_FALSE at XPROF_HDRS =
@ENABLE_XPROF_TRUE at XPROF_HDRS = xprofile-md.h
-GEN_HDRS = md.h $(XPROF_HDRS) $(ENGINE_GEN_HDRS)
-DISTCLEANFILES = $(GEN_HDRS) stamp-h01 stamp-h02 stamp-h03
-noinst_HEADERS = $(GEN_HDRS) \
- config-hacks.h config-io.h config-math.h config-mem.h \
- config-net.h config-setjmp.h config-signal.h config-std.h
+GEN_HDRS = \
+ md.h \
+ callKaffeException.h \
+ $(XPROF_HDRS) \
+ $(ENGINE_GEN_HDRS)
+
+DISTCLEANFILES = \
+ $(GEN_HDRS) \
+ stamp-h01 \
+ stamp-h02 \
+ stamp-h03 \
+ stamp-h04
+
+noinst_HEADERS = \
+ $(GEN_HDRS) \
+ config-hacks.h \
+ config-io.h \
+ config-math.h \
+ config-mem.h \
+ config-net.h \
+ config-setjmp.h \
+ config-signal.h \
+ config-std.h
EXTRA_DIST = \
config.alias \
regen-forward \
stamp-h1.in \
alpha/alpha.c \
+ alpha/callKaffeException.h \
alpha/common.h \
alpha/jit-alpha.def \
alpha/jit-icode.h \
@@ -311,6 +331,7 @@
alpha/sysdepCallMethod.h \
alpha/threads.h \
alpha/trampolines.c \
+ arm/callKaffeException.h \
arm/common.h \
arm/jit-arm.def \
arm/jit-icode.h \
@@ -354,6 +375,7 @@
i386/bsdi/jit-md.h \
i386/bsdi/md.c \
i386/bsdi/md.h \
+ i386/callKaffeException.h \
i386/common.h \
i386/cygwin32/config.frag \
i386/cygwin32/jit-md.h \
@@ -441,6 +463,7 @@
m68k/amigaos/config.frag \
m68k/amigaos/md.c \
m68k/amigaos/md.h \
+ m68k/callKaffeException.h \
m68k/common.h \
m68k/jit-icode.h \
m68k/jit-m68k.def \
@@ -471,6 +494,7 @@
m68k/sysdepCallMethod.h \
m68k/threads.h \
m68k/trampolines.c \
+ mips/callKaffeException.h \
mips/common.h \
mips/irix5/config.frag \
mips/irix5/md.c \
@@ -533,6 +557,7 @@
sparc/bsdi3/jit-md.h \
sparc/bsdi3/md.c \
sparc/bsdi3/md.h \
+ sparc/callKaffeException.h \
sparc/common.h \
sparc/jit-icode.h \
sparc/jit-sparc.def \
@@ -819,6 +844,12 @@
else :; fi
stamp-h03: $(top_builddir)/config.status
$(SHELL) $(REGEN_FORWARD) $(CONFIG_XPROFILE_MD_H) xprofile-md.h $@
+
+callKaffeException.h: stamp-h04
+ @if test ! -f $@; then rm -f stamp-h04; $(MAKE) stamp-h04; \
+ else :; fi
+stamp-h04: $(top_builddir)/config.status
+ $(SHELL) $(REGEN_FORWARD) $(CONFIG_CALLKAFFEEXCEPTION_H) callKaffeException.h $@
dist-hook:
@for file in $(DISTCLEANFILES); do \
===================================================================
Checking out kaffe/config/alpha/callKaffeException.h
RCS: /home/cvs/kaffe/kaffe/config/alpha/callKaffeException.h,v
VERS: 1.1
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/alpha/callKaffeException.h Tue Dec 23 17:30:57 2003
@@ -0,0 +1,36 @@
+/*
+ * alpha/callKaffeException.h
+ * Common Alpha JIT configuration information.
+ *
+ * Copyright (c) 1996, 1997
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ */
+
+#ifndef __alpha_callKaffeException_h
+#define __alpha_callKaffeException_h
+
+struct Hjava_lang_Throwable;
+
+/* Call the relevant exception handler (rewinding the stack as
+ necessary). */
+#define CALL_KAFFE_EXCEPTION(FramePointer, Handler, EObj) callKaffeException(FramePointer, Handler, EObj)
+
+static inline void callKaffeException(uintp fp,
+ uintp handler,
+ struct Hjava_lang_Throwable* eobj) {
+ __asm__ __volatile__(
+ "mov %0,$15\n\t"
+ "mov %1,$0\n\t"
+ "mov %2,$27\n\t"
+ "jmp (%2)"
+ : : "r" (fp), "r" (eobj), "r" (handler)
+ : "$15", "$0", "$27");
+}
+
+#endif /* __alpha_callKaffeException_h */
Index: kaffe/config/alpha/jit.h
diff -u kaffe/config/alpha/jit.h:1.6 kaffe/config/alpha/jit.h:1.7
--- kaffe/config/alpha/jit.h:1.6 Thu Dec 21 12:27:22 2000
+++ kaffe/config/alpha/jit.h Tue Dec 23 17:26:31 2003
@@ -5,6 +5,9 @@
* Copyright (c) 1996, 1997
* Transvirtual Technologies, Inc. All rights reserved.
*
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
* See the file "license.terms" for information on usage and redistribution
* of this file.
*/
@@ -45,18 +48,6 @@
#define FRAMEOBJECT(obj, f, einfo) \
/* rebuild alpha_slot2argoffset[0] as in jit-alpha.def */ \
(obj) = *((Hjava_lang_Object**)((uintp)(f) - 8))
-
-/* Call the relevant exception handler (rewinding the stack as
- necessary). */
-#define CALL_KAFFE_EXCEPTION(frame, info, obj) \
- __asm__ __volatile__( \
- "mov %0,$15\n\t" \
- "mov %1,$0\n\t" \
- "mov %2,$27\n\t" \
- "jmp (%2)" \
- : : "r" (frame), "r" (obj), "r" (info) \
- : "$15", "$0", "$27")
-
/**/
/* Method dispatch. */
===================================================================
Checking out kaffe/config/arm/callKaffeException.h
RCS: /home/cvs/kaffe/kaffe/config/arm/callKaffeException.h,v
VERS: 1.1
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/arm/callKaffeException.h Tue Dec 23 17:30:57 2003
@@ -0,0 +1,34 @@
+/*
+ * arm/callKaffeException.h
+ * Common ARM JIT exception calling.
+ *
+ * Copyright (c) 1996, 1997, 1998, 1999
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ */
+
+#ifndef __arm_callKaffeException_h
+#define __arm_callKaffeException_h
+
+struct Hjava_lang_Throwable;
+
+/* Call the relevant exception handler (rewinding the stack as
+ necessary). */
+#define CALL_KAFFE_EXCEPTION(FramePointer, Handler, EObj) callKaffeException(FramePointer, Handler, EObj)
+
+static inline void callKaffeException(uintp fp,
+ uintp handler,
+ struct Hjava_lang_Throwable* eobj) {
+ asm volatile (" \n"
+ " mov r0, %0 \n"
+ " mov fp, %2 \n"
+ " mov pc, %1 \n"
+ : : "r" (eobj), "r" (handler), "r" (fp) : "r0");
+}
+
+#endif /* __arm_callKaffeException_h */
Index: kaffe/config/arm/jit.h
diff -u kaffe/config/arm/jit.h:1.11 kaffe/config/arm/jit.h:1.12
--- kaffe/config/arm/jit.h:1.11 Thu Oct 2 20:12:17 2003
+++ kaffe/config/arm/jit.h Tue Dec 23 17:26:31 2003
@@ -5,6 +5,9 @@
* Copyright (c) 1996, 1997, 1998, 1999
* Transvirtual Technologies, Inc. All rights reserved.
*
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
* See the file "license.terms" for information on usage and redistribution
* of this file.
*/
@@ -71,15 +74,6 @@
} while (0)
-/* Call the relevant exception handler (rewinding the stack as
- necessary). */
-#define CALL_KAFFE_EXCEPTION(frame, handler, object) \
- asm volatile (" \n" \
- " mov r0, %0 \n" \
- " mov fp, %2 \n" \
- " mov pc, %1 \n" \
- : : "r" (object), "r" (handler), "r" (frame) : "r0")
-
/**/
/* Method dispatch. */
/**/
===================================================================
Checking out kaffe/config/i386/callKaffeException.h
RCS: /home/cvs/kaffe/kaffe/config/i386/callKaffeException.h,v
VERS: 1.1
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/i386/callKaffeException.h Tue Dec 23 17:30:57 2003
@@ -0,0 +1,33 @@
+/*
+ * i386/callKaffeException.h
+ * Common i386 JIT configuration information.
+ *
+ * Copyright (c) 1996, 1997
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ */
+
+#ifndef __i386_callKaffeException_h
+#define __i386_callKaffeException_h
+
+struct Hjava_lang_Throwable;
+
+/* Call the relevant exception handler (rewinding the stack as
+ necessary). */
+#define CALL_KAFFE_EXCEPTION(FramePointer, Handler, EObj) callKaffeException(FramePointer, Handler, EObj)
+
+static inline void callKaffeException(uintp fp,
+ uintp handler,
+ struct Hjava_lang_Throwable* eobj) {
+ asm(" movl %2,%%eax \n"
+ " movl %0,%%ebp \n"
+ " jmp *%1 \n"
+ : : "g" (fp), "r" (handler), "g" (eobj) : "eax");
+}
+
+#endif /* __i386_callKaffeException_h */
Index: kaffe/config/i386/jit.h
diff -u kaffe/config/i386/jit.h:1.19 kaffe/config/i386/jit.h:1.20
--- kaffe/config/i386/jit.h:1.19 Sat Oct 4 22:55:23 2003
+++ kaffe/config/i386/jit.h Tue Dec 23 17:26:32 2003
@@ -37,15 +37,6 @@
#define FIRSTFRAME(f, o) \
((f) = *(exceptionFrame*)__builtin_frame_address(0))
-/* Call the relevant exception handler (rewinding the stack as
- necessary). */
-#define CALL_KAFFE_EXCEPTION(F, H, O) \
- asm(" movl %2,%%eax \n" \
- " movl %0,%%ebp \n" \
- " jmp *%1 \n" \
- : : "g" (F), "r" (H), "g" (O) : "eax")
-
-
/**/
/* Method dispatch. */
/**/
===================================================================
Checking out kaffe/config/m68k/callKaffeException.h
RCS: /home/cvs/kaffe/kaffe/config/m68k/callKaffeException.h,v
VERS: 1.1
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/m68k/callKaffeException.h Tue Dec 23 17:30:57 2003
@@ -0,0 +1,39 @@
+/*
+ * m68k/callKaffeException.h
+ * Common M68000 JIT exception calling.
+ *
+ * Copyright (c) 1996, 1997
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ *
+ * Modified by Kiyo Inaba <k-inaba at mxb.mesh.ne.jp>, 1999;
+ * to support the trampoline mechanism.
+ */
+
+#ifndef __m68k_callKaffeException_h
+#define __m68k_callKaffeException_h
+
+struct Hjava_lang_Throwable;
+
+/* Call the relevant exception handler (rewinding the stack as
+ necessary). */
+#define CALL_KAFFE_EXCEPTION(FramePointer, Handler, EObj) callKaffeException(FramePointer, Handler, EObj)
+
+static inline void callKaffeException(uintp fp,
+ uintp handler,
+ struct Hjava_lang_Throwable* eobj) {
+ __asm__ __volatile__("move%.l %1,%/d0\n\t"
+ "move%.l %0,%/a6\n\t"
+ "jmp %2@"
+ : : "g"(fp), "g"(eobj), "a"(handler)
+ : "d0", "cc", "memory");
+}
+
+
+
+#endif /* __m68k_callKaffeException_h */
Index: kaffe/config/m68k/jit.h
diff -u kaffe/config/m68k/jit.h:1.10 kaffe/config/m68k/jit.h:1.11
--- kaffe/config/m68k/jit.h:1.10 Wed Dec 20 02:39:37 2000
+++ kaffe/config/m68k/jit.h Tue Dec 23 17:26:32 2003
@@ -5,6 +5,9 @@
* Copyright (c) 1996, 1997
* Transvirtual Technologies, Inc. All rights reserved.
*
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
* See the file "license.terms" for information on usage and redistribution
* of this file.
*
@@ -40,16 +43,6 @@
/* Extract the object argument from given frame */
#define FRAMEOBJECT(obj, f, einfo) \
(obj) = *(Hjava_lang_Object**)((f) + 8)
-
-/* Call the relevant exception handler (rewinding the stack as
- necessary). */
-#define CALL_KAFFE_EXCEPTION(frame, handler, obj) \
- __asm__ __volatile__( \
- "move%.l %1,%/d0\n\t" \
- "move%.l %0,%/a6\n\t" \
- "jmp %2@" \
- : : "g"(frame), "g"(obj), "a"(handler) \
- : "d0", "cc", "memory")
/**/
/* Method dispatch. */
===================================================================
Checking out kaffe/config/mips/callKaffeException.h
RCS: /home/cvs/kaffe/kaffe/config/mips/callKaffeException.h,v
VERS: 1.1
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/mips/callKaffeException.h Tue Dec 23 17:30:57 2003
@@ -0,0 +1,39 @@
+/*
+ * mips/callKaffeException.h
+ * Common MIPS JIT exception calling.
+ *
+ * Copyright (c) 1996, 1997
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ *
+ * Written by Christian Krusel <chrkr at uni-paderborn.de>, 1997.
+ * Modified by Michael Chen <mikey at hydra.stanford.edu>, 1998.
+ * last changed 2.15.98
+ */
+
+#ifndef __mips_callKaffeException_h
+#define __mips_callKaffeException_h
+
+struct Hjava_lang_Throwable;
+
+/* Call the relevant exception handler (rewinding the stack as
+ necessary). */
+#define CALL_KAFFE_EXCEPTION(FramePointer, Handler, EObj) callKaffeException(FramePointer, Handler, EObj)
+
+static inline void callKaffeException(uintp fp,
+ uintp handler,
+ struct Hjava_lang_Throwable* eobj) {
+ asm volatile(" \n"
+ " move $2,%2 \n"
+ " move $fp,%0 \n"
+ " jr %1 \n"
+ " nop \n"
+ " " : : "r" (fp), "r" (handler), "r" (eobj) : "$2");
+}
+
+#endif /* __mips_callKaffeException_h */
Index: kaffe/config/mips/jit.h
diff -u kaffe/config/mips/jit.h:1.9 kaffe/config/mips/jit.h:1.10
--- kaffe/config/mips/jit.h:1.9 Sat Oct 4 23:55:54 2003
+++ kaffe/config/mips/jit.h Tue Dec 23 17:26:33 2003
@@ -5,6 +5,9 @@
* Copyright (c) 1996, 1997
* Transvirtual Technologies, Inc. All rights reserved.
*
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
* See the file "license.terms" for information on usage and redistribution
* of this file.
*
@@ -42,16 +45,6 @@
/* Extract the object argument from given frame */
#define FRAMEOBJECT(obj, f, einfo) \
(obj) = (*(Hjava_lang_Object**)(f))
-
-/* Call the relevant exception handler (rewinding the stack as
- necessary). */
-#define CALL_KAFFE_EXCEPTION(F, H, O) \
- asm volatile(" \n" \
-" move $2,%2 \n" \
-" move $fp,%0 \n" \
-" jr %1 \n" \
-" nop \n" \
-" " : : "r" ((F)), "r" ((H)), "r" (O) : "$2")
/**/
/* Method dispatch. */
===================================================================
Checking out kaffe/config/sparc/callKaffeException.h
RCS: /home/cvs/kaffe/kaffe/config/sparc/callKaffeException.h,v
VERS: 1.1
***************
--- /dev/null Sun Aug 4 19:57:58 2002
+++ kaffe/config/sparc/callKaffeException.h Tue Dec 23 17:30:57 2003
@@ -0,0 +1,38 @@
+/*
+ * sparc/callKaffeException.h
+ * Common SPARC JIT exception calling.
+ *
+ * Copyright (c) 1996, 1997
+ * Transvirtual Technologies, Inc. All rights reserved.
+ *
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file.
+ */
+
+#ifndef __sparc_callKaffeException_h
+#define __sparc_callKaffeException_h
+
+struct Hjava_lang_Throwable;
+
+/* Call the relevant exception handler (rewinding the stack as
+ necessary). */
+#define CALL_KAFFE_EXCEPTION(FramePointer, Handler, EObj) callKaffeException(FramePointer, Handler, EObj)
+
+static inline void callKaffeException(uintp fp,
+ uintp handler,
+ struct Hjava_lang_Throwable* eobj) {
+ register int o1 asm("o1"), o2 asm("o2"), o3 asm("o3");
+ asm volatile(
+ " ta 3 \n"
+ " sub %%sp,64,%%sp \n"
+ " mov %2,%%fp \n"
+ " jmpl %1,%%g0 \n"
+ " restore %0,0,%%o0 \n"
+ : : "r" (o1=(int)(eobj)), "r" (o2=(int)(handler)), "r" (o3=(int)(fp)));
+ asm volatile("" : : "r"(o1), "r"(o2), "r"(o3));
+}
+
+#endif /* __sparc_callKaffeException_h */
Index: kaffe/config/sparc/jit.h
diff -u kaffe/config/sparc/jit.h:1.8 kaffe/config/sparc/jit.h:1.9
--- kaffe/config/sparc/jit.h:1.8 Sat Oct 25 12:52:43 2003
+++ kaffe/config/sparc/jit.h Tue Dec 23 17:26:33 2003
@@ -5,6 +5,9 @@
* Copyright (c) 1996, 1997
* Transvirtual Technologies, Inc. All rights reserved.
*
+ * Copyright (c) 2003
+ * Kaffe.org contributors, see ChangeLogs for details. All rights reserved.
+ *
* See the file "license.terms" for information on usage and redistribution
* of this file.
*/
@@ -54,22 +57,6 @@
(obj) = (*(Hjava_lang_Object**) \
(((exceptionFrame*)(((exceptionFrame*)(f))->retbp) \
)->retbp+68))
-
-/* Call the relevant exception handler (rewinding the stack as
- necessary). */
-#define CALL_KAFFE_EXCEPTION(F, H, O) \
-do { \
- register int o1 asm("o1"), o2 asm("o2"), o3 asm("o3"); \
- asm volatile( \
-" ta 3 \n" \
-" sub %%sp,64,%%sp \n" \
-" mov %2,%%fp \n" \
-" jmpl %1,%%g0 \n" \
-" restore %0,0,%%o0 \n" \
- : : "r" (o1=(int)(O)), "r" (o2=(int)(H)), "r" (o3=(int)(F))); \
- asm volatile("" : : "r"(o1), "r"(o2), "r"(o3)); \
-} while (0)
-
/**/
/* Method dispatch. */
Index: kaffe/include/Makefile.in
*** Patch too long, truncated ***
More information about the kaffe
mailing list