Only in kaffe: autom4te.cache
diff -ur /home/topic/CVS/kaffe/config/config.h.in kaffe/config/config.h.in
--- /home/topic/CVS/kaffe/config/config.h.in	2003-06-26 06:02:03.000000000 -0400
+++ kaffe/config/config.h.in	2003-06-29 13:46:43.000000000 -0400
@@ -602,15 +602,6 @@
 /* Do we enable stats in the vm? */
 #undef KAFFE_STATS
 
-/* Define if LONG_MIN / -1l produces an arithmetic exception */
-#undef LONG_DIVISION_BROKEN
-
-/* Define if LONG_LONG_MIN % -1ll produces an arithmetic exception */
-#undef LONG_LONG_MODULO_BROKEN
-
-/* Define if LONG_MIN % -1l produces an arithmetic exception */
-#undef LONG_MODULO_BROKEN
-
 /* If the vm is static or all libraries are static */
 #undef NO_SHARED_VMLIBRARY
 
diff -ur /home/topic/CVS/kaffe/configure kaffe/configure
--- /home/topic/CVS/kaffe/configure	2003-06-26 07:33:46.000000000 -0400
+++ kaffe/configure	2003-06-29 13:47:39.000000000 -0400
@@ -38915,183 +38915,6 @@
 
 LIBS="$KSAVE_LIBS"
 
-echo "$as_me:$LINENO: checking whether long division is broken" >&5
-echo $ECHO_N "checking whether long division is broken... $ECHO_C" >&6
-if test "${ac_cv_long_division_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-      if test "$cross_compiling" = yes; then
-  ac_cv_long_division_broken=cross
-else
-  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.  */
-
-#include <limits.h>
-#define T long
-#ifndef LONG_MIN
-# define LONG_MIN ((((unsigned T)(~(T)0))>>1)+1)
-#endif
-T foo(T i, T j);
-int main() { return foo(LONG_MIN, -1l) && 1; }
-T foo(T i, T j) { return i / j; }
-
-_ACEOF
-rm -f 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='./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_long_division_broken=no
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_long_division_broken=yes
-fi
-rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_long_division_broken" >&5
-echo "${ECHO_T}$ac_cv_long_division_broken" >&6
-if test x"$ac_cv_long_division_broken" = x"yes"; then
-
-cat >>confdefs.h <<\_ACEOF
-#define LONG_DIVISION_BROKEN 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking whether long modulo is broken" >&5
-echo $ECHO_N "checking whether long modulo is broken... $ECHO_C" >&6
-if test "${ac_cv_long_modulo_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-      if test "$cross_compiling" = yes; then
-  ac_cv_long_modulo_broken=cross
-else
-  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.  */
-
-#include <limits.h>
-#define T long
-#ifndef LONG_MIN
-# define LONG_MIN ((((unsigned T)(~(T)0))>>1)+1)
-#endif
-T foo(T i, T j);
-int main() { return foo(LONG_MIN, -1l) == 0; }
-T foo(T i, T j) { return i % j; }
-
-_ACEOF
-rm -f 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='./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_long_modulo_broken=no
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_long_modulo_broken=yes
-fi
-rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_long_modulo_broken" >&5
-echo "${ECHO_T}$ac_cv_long_modulo_broken" >&6
-if test x"$ac_cv_long_modulo_broken" = x"yes"; then
-
-cat >>confdefs.h <<\_ACEOF
-#define LONG_MODULO_BROKEN 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking whether long long modulo is broken" >&5
-echo $ECHO_N "checking whether long long modulo is broken... $ECHO_C" >&6
-if test "${ac_cv_long_long_modulo_broken+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-      if test "$cross_compiling" = yes; then
-  ac_cv_long_long_modulo_broken=cross
-else
-  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.  */
-
-#include <limits.h>
-#define T long long
-#ifndef LONG_LONG_MIN
-# define LONG_LONG_MIN ((((unsigned T)(~(T)0))>>1)+1)
-#endif
-T foo(T i, T j);
-int main() { return foo(LONG_LONG_MIN, -1ll) == 0; }
-T foo(T i, T j) { return i % j; }
-
-_ACEOF
-rm -f 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='./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_long_long_modulo_broken=no
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_long_long_modulo_broken=yes
-fi
-rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_long_long_modulo_broken" >&5
-echo "${ECHO_T}$ac_cv_long_long_modulo_broken" >&6
-if test x"$ac_cv_long_long_modulo_broken" = x"yes"; then
-
-cat >>confdefs.h <<\_ACEOF
-#define LONG_LONG_MODULO_BROKEN 1
-_ACEOF
-
-fi
-
 echo "$as_me:$LINENO: checking whether strtod(\"-0.0\") is broken" >&5
 echo $ECHO_N "checking whether strtod(\"-0.0\") is broken... $ECHO_C" >&6
 if test "${ac_cv_strtod_m0_broken+set}" = set; then
diff -ur /home/topic/CVS/kaffe/configure.in kaffe/configure.in
--- /home/topic/CVS/kaffe/configure.in	2003-06-26 07:33:47.000000000 -0400
+++ kaffe/configure.in	2003-06-29 13:45:29.000000000 -0400
@@ -1015,57 +1015,6 @@
 AC_CHECK_FUNCS([strdup strstr strtod strtol strtoul])
 LIBS="$KSAVE_LIBS"
 
-dnl Test whether LONG_MIN / -1l crashes
-AC_CACHE_CHECK([whether long division is broken],
-  ac_cv_long_division_broken, [dnl
-    AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <limits.h>
-#define T long
-#ifndef LONG_MIN
-# define LONG_MIN ((((unsigned T)(~(T)0))>>1)+1)
-#endif
-T foo(T i, T j);
-int main() { return foo(LONG_MIN, -1l) && 1; }
-T foo(T i, T j) { return i / j; }
-]])],[ac_cv_long_division_broken=no],[ac_cv_long_division_broken=yes],[ac_cv_long_division_broken=cross])])
-if test x"$ac_cv_long_division_broken" = x"yes"; then
-  AC_DEFINE(LONG_DIVISION_BROKEN, 1, [Define if LONG_MIN / -1l produces an arithmetic exception])
-fi
-
-dnl Test whether LONG_MIN % -1l crashes
-AC_CACHE_CHECK([whether long modulo is broken],
-  ac_cv_long_modulo_broken, [dnl
-    AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <limits.h>
-#define T long
-#ifndef LONG_MIN
-# define LONG_MIN ((((unsigned T)(~(T)0))>>1)+1)
-#endif
-T foo(T i, T j);
-int main() { return foo(LONG_MIN, -1l) == 0; }
-T foo(T i, T j) { return i % j; }
-]])],[ac_cv_long_modulo_broken=no],[ac_cv_long_modulo_broken=yes],[ac_cv_long_modulo_broken=cross])])
-if test x"$ac_cv_long_modulo_broken" = x"yes"; then
-  AC_DEFINE(LONG_MODULO_BROKEN, 1, [Define if LONG_MIN % -1l produces an arithmetic exception])
-fi
-
-dnl Test whether LONG_LONG_MIN % -1ll crashes
-AC_CACHE_CHECK([whether long long modulo is broken],
-  ac_cv_long_long_modulo_broken, [dnl
-    AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <limits.h>
-#define T long long
-#ifndef LONG_LONG_MIN
-# define LONG_LONG_MIN ((((unsigned T)(~(T)0))>>1)+1)
-#endif
-T foo(T i, T j);
-int main() { return foo(LONG_LONG_MIN, -1ll) == 0; }
-T foo(T i, T j) { return i % j; }
-]])],[ac_cv_long_long_modulo_broken=no],[ac_cv_long_long_modulo_broken=yes],[ac_cv_long_long_modulo_broken=cross])])
-if test x"$ac_cv_long_long_modulo_broken" = x"yes"; then
-  AC_DEFINE(LONG_LONG_MODULO_BROKEN, 1, [Define if LONG_LONG_MIN % -1ll produces an arithmetic exception])
-fi
-
 dnl Test whether strtod("-0.0") is broken
 AC_CACHE_CHECK([whether strtod(\"-0.0\") is broken],
   ac_cv_strtod_m0_broken, [dnl
Only in kaffe: configure.in.~1.210.~
diff -ur /home/topic/CVS/kaffe/include/jtypes.h.in kaffe/include/jtypes.h.in
--- /home/topic/CVS/kaffe/include/jtypes.h.in	1998-07-14 10:02:08.000000000 -0400
+++ kaffe/include/jtypes.h.in	2003-06-29 14:32:34.000000000 -0400
@@ -28,21 +28,26 @@
 #if SIZEOF_INT == 4
 typedef int		jint;
 typedef unsigned int	jsize;
+#define JINT_MIN        0x80000000
 #elif SIZEOF_LONG == 4
 typedef long		jint;
 typedef unsigned long	jsize;
+#define JINT_MIN        0x80000000L
 #else
 #error "sizeof(int) or sizeof(long) must be 4"
 #endif
 
 #if SIZEOF_LONG == 8
 typedef long		jlong;
+#define JLONG_MIN       0x8000000000000000L
 #elif SIZEOF_LONG_LONG == 8
 typedef long long	jlong;
-#elif SIZEOF___INT64 == 8
+#define JLONG_MIN       0x8000000000000000LL
+#elif SIZEOF___INT64 == 8 /* Microsoft's Visual C++ 6.0 */
 typedef __int64		jlong;
+#define JLONG_MIN       0x8000000000000000i64
 #else
-#error "sizeof(long long) or sizeof(__int64) must be 8"
+#error "sizeof(long) or sizeof(long long) or sizeof(__int64) must be 8"
 #endif
 
 typedef	jchar		unicode;
Only in kaffe/include: jtypes.h.in.~1.3.~
diff -ur /home/topic/CVS/kaffe/kaffe/kaffevm/intrp/icode.h kaffe/kaffe/kaffevm/intrp/icode.h
--- /home/topic/CVS/kaffe/kaffe/kaffevm/intrp/icode.h	2001-05-07 06:04:35.000000000 -0400
+++ kaffe/kaffe/kaffevm/intrp/icode.h	2003-06-29 12:43:12.000000000 -0400
@@ -16,14 +16,8 @@
 #define	add_long(t, f1, f2)			(t)[0].v.tlong = (f1)[0].v.tlong + (f2)[0].v.tlong
 #define	sub_long(t, f1, f2)			(t)[0].v.tlong = (f1)[0].v.tlong - (f2)[0].v.tlong
 #define	mul_long(t, f1, f2)			(t)[0].v.tlong = (f1)[0].v.tlong * (f2)[0].v.tlong
-#define	div_long(t, f1, f2)			(t)[0].v.tlong = (f1)[0].v.tlong / (f2)[0].v.tlong
-#if LONG_LONG_MODULO_BROKEN
-/* egcs 1.1.* on IRIX 6.3/mips produces an arithmetic exception for
-   LONG_LONG_MIN % -1ll.  Since anything % -1ll is 0, special-case it.  */
-# define rem_long(t, f1, f2)			(t)[0].v.tlong = (((f2)[0].v.tlong != -1) ? ((f1)[0].v.tlong % (f2)[0].v.tlong) : 0)
-#else
-# define rem_long(t, f1, f2)			(t)[0].v.tlong = (f1)[0].v.tlong % (f2)[0].v.tlong
-#endif
+#define div_long(t, f1, f2)			(t)[0].v.tlong = (((((f1)[0].v.tlong) == JLONG_MIN) && (((f2)[0].v.tlong) == -1)) ? JLONG_MIN : (((f1)[0].v.tlong) / ((f2)[0].v.tlong)))
+#define rem_long(t, f1, f2)                     (t)[0].v.tlong = ((((f2)[0].v.tlong) != -1) ? (((f1)[0].v.tlong) % ((f2)[0].v.tlong)) : 0)
 #define	neg_long(t, f)				(t)[0].v.tlong = -(f)[0].v.tlong
 
 #define	and_long(t, f1, f2)			(t)[0].v.tlong = (f1)[0].v.tlong & (f2)[0].v.tlong
@@ -83,21 +77,8 @@
 #define	add_ref(t, f1, f2)			(t)[0].v.taddr = (void*)((uint8*)((f1)[0].v.taddr) + ((f2)[0].v.tint))
 #define	sub_int(t, f1, f2)			(t)[0].v.tint = ((f1)[0].v.tint) - ((f2)[0].v.tint)
 #define	mul_int(t, f1, f2)			(t)[0].v.tint = ((f1)[0].v.tint) * ((f2)[0].v.tint)
-
-#if LONG_DIVISION_BROKEN
-/* LONG_MIN / -1l on i386 produces an arithmetic exception.  Since
-   anything / -1l is -anything, special-case it.  */
-# define div_int(t, f1, f2)			(t)[0].v.tint = ((((f2)[0].v.tint) != -1) ? (((f1)[0].v.tint) / ((f2)[0].v.tint)) : -((f1)[0].v.tint))
-#else
-# define div_int(t, f1, f2)			(t)[0].v.tint = ((f1)[0].v.tint) / ((f2)[0].v.tint)
-#endif
-#if LONG_MODULO_BROKEN
-/* LONG_MIN % -1l on i386 produces an arithmetic exception.  Since
-   anything % -1l is 0, special-case it.  */
-# define rem_int(t, f1, f2)			(t)[0].v.tint = ((((f2)[0].v.tint) != -1) ? (((f1)[0].v.tint) % ((f2)[0].v.tint)) : 0)
-#else
-# define rem_int(t, f1, f2)			(t)[0].v.tint = ((f1)[0].v.tint) % ((f2)[0].v.tint)
-#endif
+#define div_int(t, f1, f2)			(t)[0].v.tint = (((((f1)[0].v.tint) == JINT_MIN) && (((f2)[0].v.tint) == -1)) ? JINT_MIN : (((f1)[0].v.tint) / ((f2)[0].v.tint)))
+#define rem_int(t, f1, f2)                      (t)[0].v.tint = ((((f2)[0].v.tint) != -1) ? (((f1)[0].v.tint) % ((f2)[0].v.tint)) : 0)
 #define	neg_int(t, f)				(t)[0].v.tint = -((f)[0].v.tint)
 #define	lshl_int_const(t, f, c)			(t)[0].v.tint = ((f)[0].v.tint) << (c & 31)
 #define	lshl_int(t, f1, f2)			(t)[0].v.tint = ((f1)[0].v.tint) << ((f2)[0].v.tint & 31)
Only in kaffe/kaffe/kaffevm/intrp: icode.h.~1.15.~
Only in kaffe/libltdl: autom4te.cache
