aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--boehm-gc/ChangeLog6
-rw-r--r--boehm-gc/include/private/gcconfig.h8
2 files changed, 14 insertions, 0 deletions
diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog
index 571e792..4d2af97 100644
--- a/boehm-gc/ChangeLog
+++ b/boehm-gc/ChangeLog
@@ -1,3 +1,9 @@
+2002-04-04 Loren J. Rittle <ljrittle@acm.org>
+
+ * include/private/gcconfig.h: Add support for an unmapped
+ memory hole between the end of the initialized data segment
+ and the start of the BSS on FreeBSD/i386.
+
2002-03-30 Krister Walfridsson <cato@df.lth.se>
* include/private/gcconfig.h: define DYNAMIC_LOADING for ELF
diff --git a/boehm-gc/include/private/gcconfig.h b/boehm-gc/include/private/gcconfig.h
index efbfc39..a3f468f 100644
--- a/boehm-gc/include/private/gcconfig.h
+++ b/boehm-gc/include/private/gcconfig.h
@@ -1058,8 +1058,16 @@
# ifdef __ELF__
# define DYNAMIC_LOADING
# endif
+/* Handle unmapped hole i386*-*-freebsd[45]* may put between etext and edata. */
extern char etext[];
+ extern char edata[];
+ extern char end[];
+# define NEED_FIND_LIMIT
# define DATASTART ((ptr_t)(etext))
+# define MIN(x,y) ((x) < (y) ? (x) : (y))
+# define DATAEND (MIN (GC_find_limit (DATASTART, TRUE), DATASTART2))
+# define DATASTART2 ((ptr_t)(edata))
+# define DATAEND2 ((ptr_t)(end))
# endif
# ifdef NETBSD
# define OS_TYPE "NETBSD"