path: root/doc
diff options
authorivmai <ivmai>2010-07-27 23:30:18 +0200
committerIvan Maidanski <>2011-07-26 19:06:54 +0200
commit7af378266a80aa2c83f7319158020088bb13c7fe (patch)
tree07c22cb92818b2c01dac6d9482b040704d116e6c /doc
parentaeb6fa7919ec93d93a10b95ee53a35af1c1c56ae (diff)
2010-07-28 Ivan Maidanski <> (mostly really Noah Lavine)
* (NO_EXECUTE_PERMISSION): Add comment. * doc/README.macros (NO_EXECUTE_PERMISSION): Update the documentation. * include/gc.h (GC_set_pages_executable, GC_get_pages_executable): New API function declaration. * include/gc.h (GC_ignore_warn_proc): Reformat the comment. * os_dep.c (OPT_PROT_EXEC): Remove (superseded by pages_executable). * os_dep.c (pages_executable): New static variable. * os_dep.c (IGNORE_PAGES_EXECUTABLE): New macro (used by GC_get_pages_executable only). * os_dep.c (GC_unix_mmap_get_mem, GC_remap, PROTECT, UNPROTECT): Replace OPT_PROT_EXEC with pages_executable. * os_dep.c (GC_unix_mmap_get_mem, GC_remap, GC_win32_get_mem, GC_wince_get_mem, UNPROTECT): Undefine IGNORE_PAGES_EXECUTABLE. * os_dep.c (GC_win32_get_mem, GC_wince_get_mem, GC_remap, PROTECT, UNPROTECT): Use PAGE_EXECUTE_... only if pages_executable is on. * os_dep.c (GC_set_pages_executable, GC_get_pages_executable): New API function definition.
Diffstat (limited to 'doc')
1 files changed, 2 insertions, 1 deletions
diff --git a/doc/README.macros b/doc/README.macros
index 166c105..3e582e0 100644
--- a/doc/README.macros
+++ b/doc/README.macros
@@ -172,7 +172,8 @@ NO_EXECUTE_PERMISSION May cause some or all of the heap to not
have execute permission, i.e. it may be impossible to execute
code from the heap. Currently this only affects the incremental
collector on UNIX machines. It may greatly improve its performance,
- since this may avoid some expensive cache synchronization.
+ since this may avoid some expensive cache synchronization. Alternatively,
+ GC_set_pages_executable can be called at the process initialization time.
GC_NO_OPERATOR_NEW_ARRAY Declares that the C++ compiler does not
support the new syntax "operator new[]" for allocating and deleting arrays.