This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] boehm-gc: Fix mips64-linux n64 configuration.


I have been working on getting libgcj runninng on mips64-linux. The boehm-gc configuration for the n64 ABI was incorrect causing SIGBUS in GC initialization. This patch duplicates some of the logic used in the Irix5 case.

With the patch applied I can successfully run a large majority of the libgcj testsuite cases on mips64-linux with -mabi=64.

Hans, this patch should probably also be committed to the upstream sources.

Before committing I will test x86_64-pc-linux-gnu.

OK to commit if testing shows no regressions?

2007-08-10 David Daney <ddaney@avtrex.com>

* include/private/gcconfig.h: Handle mips64-linux n64 ABI.

Index: include/private/gcconfig.h
===================================================================
--- include/private/gcconfig.h	(revision 127010)
+++ include/private/gcconfig.h	(working copy)
@@ -1369,7 +1369,12 @@
 #     define DATAEND (_end)
       extern int __data_start[];
 #     define DATASTART ((ptr_t)(__data_start))
-#     define ALIGNMENT 4
+#     ifdef _MIPS_SZPTR
+#	define CPP_WORDSZ _MIPS_SZPTR
+#	define ALIGNMENT (_MIPS_SZPTR/8)
+#     else
+#	define ALIGNMENT 4
+#     endif
 #     define USE_GENERIC_PUSH_REGS
 #     if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 2 || __GLIBC__ > 2
 #        define LINUX_STACKBOTTOM

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]