configure.host: Use -fno-use-divide-subroutine for mips*-*-linux*.
authorDavid Daney <ddaney@avtrex.com>
Fri, 3 Sep 2004 17:58:52 +0000 (17:58 +0000)
committerDavid Daney <daney@gcc.gnu.org>
Fri, 3 Sep 2004 17:58:52 +0000 (17:58 +0000)
2004-09-03  David Daney  <ddaney@avtrex.com>

* configure.host: Use -fno-use-divide-subroutine for mips*-*-linux*.
* include/mips-signal.h: Added HANDLE_FPE support.

From-SVN: r87039

libjava/ChangeLog
libjava/configure.host
libjava/include/mips-signal.h

index f717644a8962454c7de96d69e45848e2975da78e..03c2fa90d489a56e388f04b637be1a742213f3f6 100644 (file)
@@ -1,3 +1,8 @@
+2004-09-03  David Daney  <ddaney@avtrex.com>
+
+       * configure.host: Use -fno-use-divide-subroutine for mips*-*-linux*.
+       * include/mips-signal.h: Added HANDLE_FPE support.
+       
 2004-08-31  Michael Koch  <konqueror@gmx.de>
 
        * javax/swing/plaf/basic/BasicTextAreaUI.java
index 4cef1b8a5d130c3581250d90f950ce0fd2ea8b33..cbecf04106e46764b2656f47d48772686ff7ce53 100644 (file)
@@ -227,6 +227,7 @@ EOF
        sysdeps_dir=mips
        can_unwind_signal=yes
        libgcj_flags="${libgcj_flags} -mxgot"
+       DIVIDESPEC=-fno-use-divide-subroutine
        case "${host}" in
            mipsel*-linux* | mipsisa32el*-linux*)
                enable_hash_synchronization_default=yes
index 6728197081a570c7d1398703121e103865a66536..f9d49e66ea0f5a32c5f1069a8885a1850e8df5b6 100644 (file)
@@ -22,7 +22,7 @@ details.  */
    sys/ucontext.h included by java-signal.h from prims.cc */
 
 #define HANDLE_SEGV 1
-#undef HANDLE_FPE
+#define HANDLE_FPE 1
 
 /* The third parameter to the signal handler points to something with
  * this structure defined in asm/ucontext.h, but the name clashes with
@@ -83,7 +83,19 @@ do                                                   \
     syscall (SYS_sigaction, SIGSEGV, &kact, NULL);   \
   }                                                  \
 while (0)
-                                                               
+
+#define INIT_FPE                                     \
+do                                                   \
+  {                                                  \
+    struct kernel_sigaction kact;                    \
+    kact.k_sa_handler = catch_fpe;                   \
+    kact.k_sa_flags = SA_SIGINFO | SA_NODEFER;       \
+    sigemptyset (&kact.k_sa_mask);                   \
+    syscall (SYS_sigaction, SIGFPE, &kact, NULL);    \
+  }                                                  \
+while (0)
+
+#undef HANDLE_DIVIDE_OVERFLOW
 
 #endif /* JAVA_SIGNAL_H */