diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog index 571e792feb5aaf5a43279a95d8766c52c128e961..4d2af97d3d4083296ae4e098f24a169454e94a2d 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 efbfc39c79abd43d7efd0eb8129048bcbd515678..a3f468f689116cf14506dd43dbf068e4f7300181 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"