From 6598586ee3bc6a1e71ca1ae48c84ded485ca57da Mon Sep 17 00:00:00 2001 From: Ivan Maidanski Date: Wed, 19 Dec 2018 02:28:21 +0300 Subject: [PATCH] Update NO_EXECUTE_PERMISSION documentation * doc/README.macros (NO_EXECUTE_PERMISSION): Update and refine the documentation (e.g. mention memory unmapping). --- doc/README.macros | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/doc/README.macros b/doc/README.macros index b16198b..a6b96ee 100644 --- a/doc/README.macros +++ b/doc/README.macros @@ -204,10 +204,11 @@ DONT_ADD_BYTE_AT_END Meaningful only with ALL_INTERIOR_POINTERS or 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. Alternatively, - GC_set_pages_executable can be called at the process initialization time. + code from the heap. Affects the incremental collector and memory unmapping. + It may greatly improve the performance, since this may avoid some expensive + cache synchronization. Portable clients should call + GC_set_pages_executable(1) at the process initialization time if the + execute permission is required. GC_NO_OPERATOR_NEW_ARRAY Declares that the C++ compiler does not support the new syntax "operator new[]" for allocating and deleting arrays. -- 2.7.4