Commit 5909b034 by Bryce McKinlay Committed by Bryce McKinlay

re PR libgcj/19823 (java fails with non-executable memory)

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.

From-SVN: r95094
parent 1dd8ce20
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> 2005-02-07 Hans Boehm <Hans.Boehm@hp.com>
* allchblk.c (GC_allochblk_nth): Dont overlook available space if * allchblk.c (GC_allochblk_nth): Dont overlook available space if
......
...@@ -6558,6 +6558,14 @@ _ACEOF ...@@ -6558,6 +6558,14 @@ _ACEOF
fi fi
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" && if test -n "$with_cross_host" &&
test x"$with_cross_host" != x"no"; then test x"$with_cross_host" != x"no"; then
toolexecdir='$(exec_prefix)/$(target_noncanonical)' toolexecdir='$(exec_prefix)/$(target_noncanonical)'
......
...@@ -446,6 +446,10 @@ AC_ARG_ENABLE(gc-debug, ...@@ -446,6 +446,10 @@ AC_ARG_ENABLE(gc-debug,
esac esac
fi]) 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" && if test -n "$with_cross_host" &&
test x"$with_cross_host" != x"no"; then test x"$with_cross_host" != x"no"; then
toolexecdir='$(exec_prefix)/$(target_noncanonical)' toolexecdir='$(exec_prefix)/$(target_noncanonical)'
......
...@@ -18,8 +18,11 @@ ...@@ -18,8 +18,11 @@
# It sets the following shell variables: # It sets the following shell variables:
# gc_cflags Special CFLAGS to use when building # 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_cflags=""
gc_use_mmap=
# We should set -fexceptions if we are using gcc and might be used # We should set -fexceptions if we are using gcc and might be used
# inside something like gcj. This is the zeroth approximation: # inside something like gcj. This is the zeroth approximation:
...@@ -37,6 +40,12 @@ else ...@@ -37,6 +40,12 @@ else
esac esac
fi fi
case "${host}" in
*-linux*)
gc_use_mmap=yes
;;
esac
case "${target_optspace}:${host}" in case "${target_optspace}:${host}" in
yes:*) yes:*)
gc_cflags="${gc_cflags} -Os" gc_cflags="${gc_cflags} -Os"
......
...@@ -145,6 +145,9 @@ ...@@ -145,6 +145,9 @@
/* define GC_local_malloc() & GC_local_malloc_atomic() */ /* define GC_local_malloc() & GC_local_malloc_atomic() */
#undef THREAD_LOCAL_ALLOC #undef THREAD_LOCAL_ALLOC
/* use MMAP instead of sbrk to get new memory */
#undef USE_MMAP
/* POSIX version of C Source */ /* POSIX version of C Source */
#undef _POSIX_C_SOURCE #undef _POSIX_C_SOURCE
......
...@@ -19,6 +19,10 @@ ...@@ -19,6 +19,10 @@
# ifndef GC_PRIVATE_H # ifndef GC_PRIVATE_H
# define 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) #if defined(mips) && defined(SYSTYPE_BSD) && defined(sony_news)
/* sony RISC NEWS, NEWSOS 4 */ /* sony RISC NEWS, NEWSOS 4 */
# define BSD_TIME # define BSD_TIME
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment