summaryrefslogtreecommitdiff
path: root/boehm-gc
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2007-04-03 09:12:40 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2007-04-03 09:12:40 +0000
commit58606959931c9f33aa13bdbb5908d63c9cedf742 (patch)
treeb481e68cd487f935394d6e638aa80b70cf61b6da /boehm-gc
parent76008ac42aa83a8051d9cf9d9e2106099aec90df (diff)
downloadgcc-58606959931c9f33aa13bdbb5908d63c9cedf742.tar.gz
* src/closures.c: Include sys/statfs.h.
(_GNU_SOURCE): Define on Linux. (FFI_MMAP_EXEC_SELINUX): Define. (selinux_enabled): New variable. (selinux_enabled_check): New function. (is_selinux_enabled): Define. (dlmmap): Use it. * configure.ac (NO_EXECUTE_PERMISSION): Set by default. * configure: Rebuilt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123457 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'boehm-gc')
-rw-r--r--boehm-gc/ChangeLog5
-rwxr-xr-xboehm-gc/configure14
-rw-r--r--boehm-gc/configure.ac10
3 files changed, 15 insertions, 14 deletions
diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog
index 89cabf0e88a..aad88393f8a 100644
--- a/boehm-gc/ChangeLog
+++ b/boehm-gc/ChangeLog
@@ -1,3 +1,8 @@
+2007-04-03 Jakub Jelinek <jakub@redhat.com>
+
+ * configure.ac (NO_EXECUTE_PERMISSION): Set by default.
+ * configure: Rebuilt.
+
2007-03-07 Alexandre Oliva <aoliva@redhat.com>
* include/gc.h (GC_REGISTER_FINALIZER_UNREACHABLE): New.
diff --git a/boehm-gc/configure b/boehm-gc/configure
index 8d34fbdf1e6..c13c8ec89c4 100755
--- a/boehm-gc/configure
+++ b/boehm-gc/configure
@@ -6826,11 +6826,9 @@ LIBS="$oldLIBS"
# Configuration of machine-dependent code
#
-# We don't set NO_EXECUTE_PERMISSION by default because gcj (and
-# anything else that creates trampolines in gc-allocated memory)
-# always needs exec permission. The exceptions to this are IA-64 and
-# some variations of Power PC, where trampolines don't contain
-# executable code.
+# Set NO_EXECUTE_PERMISSION by default because gcj already uses
+# ffi_closure_{alloc,free} which takes care of allocating trampolines
+# in executable memory.
#
echo "$as_me:$LINENO: checking which machine-dependent code should be used" >&5
echo $ECHO_N "checking which machine-dependent code should be used... $ECHO_C" >&6
@@ -6891,14 +6889,14 @@ _ACEOF
machdep="sparc_mach_dep.lo"
;;
ia64-*-*)
+ machdep="mach_dep.lo ia64_save_regs_in_stack.lo"
+ ;;
+esac
cat >>confdefs.h <<\_ACEOF
#define NO_EXECUTE_PERMISSION 1
_ACEOF
- machdep="mach_dep.lo ia64_save_regs_in_stack.lo"
- ;;
-esac
if test x"$machdep" = x; then
echo "$as_me:$LINENO: result: $machdep" >&5
echo "${ECHO_T}$machdep" >&6
diff --git a/boehm-gc/configure.ac b/boehm-gc/configure.ac
index afc014d795d..d4dd16b9e06 100644
--- a/boehm-gc/configure.ac
+++ b/boehm-gc/configure.ac
@@ -364,11 +364,9 @@ LIBS="$oldLIBS"
# Configuration of machine-dependent code
#
-# We don't set NO_EXECUTE_PERMISSION by default because gcj (and
-# anything else that creates trampolines in gc-allocated memory)
-# always needs exec permission. The exceptions to this are IA-64 and
-# some variations of Power PC, where trampolines don't contain
-# executable code.
+# Set NO_EXECUTE_PERMISSION by default because gcj already uses
+# ffi_closure_{alloc,free} which takes care of allocating trampolines
+# in executable memory.
#
AC_MSG_CHECKING(which machine-dependent code should be used)
machdep=
@@ -411,10 +409,10 @@ case "$host" in
machdep="sparc_mach_dep.lo"
;;
ia64-*-*)
- AC_DEFINE(NO_EXECUTE_PERMISSION,1,[cause some or all of the heap to not have execute permission])
machdep="mach_dep.lo ia64_save_regs_in_stack.lo"
;;
esac
+AC_DEFINE(NO_EXECUTE_PERMISSION,1,[cause some or all of the heap to not have execute permission])
if test x"$machdep" = x; then
AC_MSG_RESULT($machdep)
machdep="mach_dep.lo"