This is the mail archive of the
java-patches@sourceware.cygnus.com
mailing list for the Java project.
gc changes
- To: java-patches at sourceware dot cygnus dot com
- Subject: gc changes
- From: Anthony Green <green at cygnus dot com>
- Date: Sun, 19 Dec 1999 18:33:42 -0800
I should have sent this with my previous change. It corresponds to
the libjava configure changes. I've committed it.
1999-12-19 Anthony Green <green@cygnus.com>
* gcconfig.h: Use libgcj hack for Alpha Linux.
Undefine MPROTEXT_VDB (from Jeff Sturm).
* os_dep.c: Remove Alpha Linux hacks.
* misc.c: Ditto.
Index: gcconfig.h
===================================================================
RCS file: /cvs/java/libgcj/boehm-gc/gcconfig.h,v
retrieving revision 1.6
diff -u -r1.6 gcconfig.h
--- gcconfig.h 1999/12/12 18:06:08 1.6
+++ gcconfig.h 1999/12/20 02:29:35
@@ -988,19 +988,17 @@
# define CPP_WORDSZ 64
# define STACKBOTTOM ((ptr_t) 0x120000000)
# ifdef __ELF__
-# if 0
- /* __data_start apparently disappeared in some recent releases. */
- extern int __data_start;
-# define DATASTART &__data_start
-# endif
-# define DATASTART GC_data_start
-# define DYNAMIC_LOADING
+ /* glibc for Linux/Alpha no longer provides a symbol marking
+ the start of the data segment. So libgcj defines
+ data_start on its own (in libgcjdata.a). */
+ extern int data_start;
+# define DYNAMIC_LOADING
# else
# define DATASTART ((ptr_t) 0x140000000)
# endif
extern int _end;
# define DATAEND (&_end)
-# define MPROTECT_VDB
+# undef MPROTECT_VDB
/* Has only been superficially tested. May not */
/* work on all versions. */
# endif
Index: misc.c
===================================================================
RCS file: /cvs/java/libgcj/boehm-gc/misc.c,v
retrieving revision 1.9
diff -u -r1.9 misc.c
--- misc.c 1999/12/12 18:06:08 1.9
+++ misc.c 1999/12/20 02:29:37
@@ -443,8 +443,7 @@
# ifdef MSWIN32
GC_init_win32();
# endif
-# if defined(LINUX) && \
- (defined(ALPHA) || defined(SPARC) || defined(IA64))
+# if defined(LINUX) && (defined(SPARC) || defined(IA64))
GC_init_linux_data_start();
# endif
# ifdef SOLARIS_THREADS
Index: os_dep.c
===================================================================
RCS file: /cvs/java/libgcj/boehm-gc/os_dep.c,v
retrieving revision 1.8
diff -u -r1.8 os_dep.c
--- os_dep.c 1999/12/12 18:06:08 1.8
+++ os_dep.c 1999/12/20 02:29:42
@@ -75,7 +75,7 @@
# endif
# if defined(LINUX) && \
- (defined(SPARC) || defined(ALPHA) || defined(IA64))
+ (defined(SPARC) || defined(IA64))
# define NEED_FIND_LIMIT
# endif
@@ -142,7 +142,7 @@
# define OPT_PROT_EXEC 0
#endif
-#if defined(LINUX) && (defined(SPARC) || defined(ALPHA) || defined(IA64))
+#if defined(LINUX) && (defined(SPARC) || defined(IA64))
/* The I386 case can be handled without a search. The Alpha case */
/* used to be handled differently as well, but the rules changed */
/* for recent Linux versions. This seems to be the easiest way to */
--
Anthony Green Cygnus Solutions
Sunnyvale, California