diff options
author | bryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-16 04:10:42 +0000 |
---|---|---|
committer | bryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-16 04:10:42 +0000 |
commit | 735cc3dd9476a9058e71fc04e4d87f60b5a89b59 (patch) | |
tree | 314f8a11ca03d334447c50d10982b23142d3c8de /boehm-gc | |
parent | 2e53aef54d8a8913c011eb1567d3b82921628ba3 (diff) | |
download | gcc-735cc3dd9476a9058e71fc04e4d87f60b5a89b59.tar.gz |
2005-02-15 Bryce McKinlay <mckinlay@redhat.com>
PR libgcj/19823
* configure.host: Set gc_use_mmap on *-linux*.
* configure.ac: Define USE_MMAP if gc_use_mmap is set.
* include/private/gc_priv.h: Include gc_config.h.
* configure, include/gc_config.h.in: Rebuilt.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95094 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'boehm-gc')
-rw-r--r-- | boehm-gc/ChangeLog | 8 | ||||
-rwxr-xr-x | boehm-gc/configure | 8 | ||||
-rw-r--r-- | boehm-gc/configure.ac | 4 | ||||
-rw-r--r-- | boehm-gc/configure.host | 9 | ||||
-rw-r--r-- | boehm-gc/include/gc_config.h.in | 3 | ||||
-rw-r--r-- | boehm-gc/include/private/gc_priv.h | 4 |
6 files changed, 36 insertions, 0 deletions
diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog index b9c7c46ae05..2194ad5863f 100644 --- a/boehm-gc/ChangeLog +++ b/boehm-gc/ChangeLog @@ -1,3 +1,11 @@ +2005-02-15 Bryce McKinlay <mckinlay@redhat.com> + + PR libgcj/19823 + * configure.host: Set gc_use_mmap on *-linux*. + * configure.ac: Define USE_MMAP if gc_use_mmap is set. + * include/private/gc_priv.h: Include gc_config.h. + * configure, include/gc_config.h.in: Rebuilt. + 2005-02-07 Hans Boehm <Hans.Boehm@hp.com> * allchblk.c (GC_allochblk_nth): Dont overlook available space if diff --git a/boehm-gc/configure b/boehm-gc/configure index 36243d4c58b..b205d328c03 100755 --- a/boehm-gc/configure +++ b/boehm-gc/configure @@ -6558,6 +6558,14 @@ _ACEOF fi fi; +if test "${gc_use_mmap}" = "yes"; then + +cat >>confdefs.h <<\_ACEOF +#define USE_MMAP 1 +_ACEOF + +fi + if test -n "$with_cross_host" && test x"$with_cross_host" != x"no"; then toolexecdir='$(exec_prefix)/$(target_noncanonical)' diff --git a/boehm-gc/configure.ac b/boehm-gc/configure.ac index 208a9160872..dfb0e17e261 100644 --- a/boehm-gc/configure.ac +++ b/boehm-gc/configure.ac @@ -446,6 +446,10 @@ AC_ARG_ENABLE(gc-debug, esac fi]) +if test "${gc_use_mmap}" = "yes"; then + AC_DEFINE(USE_MMAP, 1, [use MMAP instead of sbrk to get new memory]) +fi + if test -n "$with_cross_host" && test x"$with_cross_host" != x"no"; then toolexecdir='$(exec_prefix)/$(target_noncanonical)' diff --git a/boehm-gc/configure.host b/boehm-gc/configure.host index a98a0a7cb30..97f4dacb6de 100644 --- a/boehm-gc/configure.host +++ b/boehm-gc/configure.host @@ -18,8 +18,11 @@ # It sets the following shell variables: # gc_cflags Special CFLAGS to use when building +# gc_use_mmap Set to "yes" on platforms where mmap should be used instead +# of sbrk. This will define USE_MMAP. gc_cflags="" +gc_use_mmap= # We should set -fexceptions if we are using gcc and might be used # inside something like gcj. This is the zeroth approximation: @@ -37,6 +40,12 @@ else esac fi +case "${host}" in + *-linux*) + gc_use_mmap=yes + ;; +esac + case "${target_optspace}:${host}" in yes:*) gc_cflags="${gc_cflags} -Os" diff --git a/boehm-gc/include/gc_config.h.in b/boehm-gc/include/gc_config.h.in index 60ffb9741b6..92f1b2cf460 100644 --- a/boehm-gc/include/gc_config.h.in +++ b/boehm-gc/include/gc_config.h.in @@ -145,6 +145,9 @@ /* define GC_local_malloc() & GC_local_malloc_atomic() */ #undef THREAD_LOCAL_ALLOC +/* use MMAP instead of sbrk to get new memory */ +#undef USE_MMAP + /* POSIX version of C Source */ #undef _POSIX_C_SOURCE diff --git a/boehm-gc/include/private/gc_priv.h b/boehm-gc/include/private/gc_priv.h index e5bd52b62b7..c336ce5c433 100644 --- a/boehm-gc/include/private/gc_priv.h +++ b/boehm-gc/include/private/gc_priv.h @@ -19,6 +19,10 @@ # ifndef GC_PRIVATE_H # define GC_PRIVATE_H +/* Autoconf definitions. */ +/* FIXME: This should really be included directly from each .c file. */ +#include <gc_config.h> + #if defined(mips) && defined(SYSTYPE_BSD) && defined(sony_news) /* sony RISC NEWS, NEWSOS 4 */ # define BSD_TIME |