This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
x86_64 fixes
- From: Andrew Haley <aph at redhat dot com>
- To: java-patches at gcc dot gnu dot org
- Cc: Jakub Jelinek <jakub at redhat dot com>
- Date: Wed, 22 Jan 2003 16:53:31 +0000 (GMT)
- Subject: x86_64 fixes
32-bit mode libgcj doesn't work on x86_64 at the moment, and it
doesn't even build. This patch makes it work, with more improvements
to come later.
I'll check this in to trunk and 3.3 branch.
Andrew.
2003-01-22 Andrew Haley <aph@redhat.com>
* x86_64-signal.h: Add simple handler for x86_64 32-bit mode.
* configure.host (CHECKREFSPEC): Define for x86_64.
Index: configure.host
===================================================================
RCS file: /cvs/gcc/gcc/libjava/configure.host,v
retrieving revision 1.23.2.8.4.2
diff -c -2 -p -r1.23.2.8.4.2 configure.host
*** configure.host 17 Jan 2003 18:47:30 -0000 1.23.2.8.4.2
--- configure.host 22 Jan 2003 16:46:21 -0000
*************** case "${host}" in
*** 87,90 ****
--- 87,91 ----
;;
x86_64-*)
+ CHECKREFSPEC="%{m32:-fcheck-references}"
sysdeps_dir=x86-64
libgcj_flags="${libgcj_flags} -ffloat-store"
cvs server: Diffing include
Index: include/x86_64-signal.h
===================================================================
RCS file: /cvs/gcc/gcc/libjava/include/x86_64-signal.h,v
retrieving revision 1.1.4.1
diff -c -2 -p -r1.1.4.1 x86_64-signal.h
*** include/x86_64-signal.h 17 Jan 2003 18:47:31 -0000 1.1.4.1
--- include/x86_64-signal.h 22 Jan 2003 16:46:22 -0000
*************** details. */
*** 17,20 ****
--- 17,22 ----
#include <sys/syscall.h>
+ #ifdef __x86_64__
+
#define HANDLE_SEGV 1
*************** while (0)
*** 80,83 ****
* compiled with unwind info. */
#endif /* JAVA_SIGNAL_H */
-
--- 82,96 ----
* compiled with unwind info. */
+ #else /* __x86_64__ */
+
+ /* This is for the 32-bit subsystem on on x86-64. Catching signals
+ doesn't yet work on that target. */
+
+ #undef HANDLE_SEGV
+ #undef HANDLE_FPE
+
+ #define INIT_SEGV do {} while (0)
+ #define INIT_FPE do {} while (0)
+
+ #endif /* __x86_64__ */
#endif /* JAVA_SIGNAL_H */