This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC 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]

Re: Patch: Boehm GC 6.6 merge


Ranjit Mathew writes:
 > -----BEGIN PGP SIGNED MESSAGE-----
 > Hash: SHA1
 > 
 > Bryce McKinlay wrote:
 > > This patch merges the GC 6.6 sources into the libgcj trunk. Two patches 
 > [...]
 > 
 > This little bit in "boehm-gc/include/private/gcconfig.h" (line 306):
 > - ------------------------- 8< -------------------------
 > > +# else
 > > +#    if defined(__i386__)
 > > +#      define I386
 > >       --> Not really supported, but at least we recognize it.
 > > +#    endif
 > - ------------------------- 8< -------------------------
 > causes a bootstrap failure for me on i686-pc-linux-gnu.
 > Note that the "Not really" bit is not inside a comment.

The differences between our gcconfig.h and the stock Boehm 6.6 version
are hard for me to understand.  Bryce, what are the reasons for them?
I understand why we want to define USE_MMAP for Linux, but the rest
look spurious.

Andrew.


--- /home/aph/gcconfig.h	2006-01-25 10:28:06.000000000 +0000
+++ include/private/gcconfig.h	2006-01-25 10:07:56.000000000 +0000
@@ -131,9 +131,6 @@
 #	 endif
 #      endif
 #    endif /* !LINUX */
-#    if defined(__NetBSD__) && defined(__MIPSEL__)
-#      undef ULTRIX
-#    endif
 #    define mach_type_known
 # endif
 # if defined(DGUX) && (defined(i386) || defined(__i386__))
@@ -297,15 +294,17 @@
 #   define MACOS
 #   define mach_type_known
 # endif
-# if defined(macosx) || (defined(__APPLE__) && defined(__MACH__))
-#   define DARWIN
-#   if defined(__ppc__)  || defined(__ppc64__)
+# if defined(macosx) \
+     || defined(__APPLE__) && defined(__MACH__) && defined(__ppc__) \
+     || defined(__APPLE__) && defined(__MACH__) && defined(__ppc64__)
+#    define DARWIN
 #    define POWERPC
 #    define mach_type_known
-#   elif defined(__i386__)
-#    define I386
+# else
+#    if defined(__i386__)
+#      define I386
      --> Not really supported, but at least we recognize it.
-#   endif
+#    endif
 # endif
 # if defined(NeXT) && defined(mc68000)
 #   define M68K
@@ -667,7 +666,8 @@
 #       define OS_TYPE "LINUX"
 #       define STACKBOTTOM ((ptr_t)0xf0000000)
 #       define USE_GENERIC_PUSH_REGS
-		/* We never got around to the assembly version. */
+#	     define USE_MMAP
+	      /* We never got around to the assembly version. */
 /* #       define MPROTECT_VDB - Reported to not work  9/17/01 */
 #       ifdef __ELF__
 #            define DYNAMIC_LOADING
@@ -1406,8 +1406,8 @@
 #       define DATAEND /* not needed */
 #   endif
 #   if defined(NETBSD)
-#     define ALIGNMENT 4
 #     define OS_TYPE "NETBSD"
+#     define ALIGNMENT 4
 #     define HEURISTIC2
 #     define USE_GENERIC_PUSH_REGS
 #     ifdef __ELF__
@@ -1587,7 +1587,7 @@
 	/* the text segment immediately follows the stack.		*/
 	/* Hence we give an upper pound.				*/
 	/* This is currently unused, since we disabled HEURISTIC2	*/
-    	extern int __start[];
+   	extern int __start[];
 #   	define HEURISTIC2_LIMIT ((ptr_t)((word)(__start) & ~(getpagesize()-1)))
 #	ifndef GC_OSF1_THREADS
 	  /* Unresolved signal issues with threads.	*/


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