From be44e76beb4d5c1dcdc57cee65220d479117cb21 Mon Sep 17 00:00:00 2001 From: "wolfgang.thaller@gmx.net" Date: Thu, 23 Mar 2006 06:17:45 +0000 Subject: [PATCH] Deal with non-executable memory on Darwin (only an issue on Darwin/x86 so far) --- ghc/rts/RtsUtils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ghc/rts/RtsUtils.c b/ghc/rts/RtsUtils.c index ef7cbb7..3e7e225 100644 --- a/ghc/rts/RtsUtils.c +++ b/ghc/rts/RtsUtils.c @@ -40,7 +40,7 @@ #include #endif -#if defined(openbsd_HOST_OS) || defined(linux_HOST_OS) +#if defined(openbsd_HOST_OS) || defined(linux_HOST_OS) || defined(darwin_HOST_OS) #include #include #include @@ -352,7 +352,7 @@ stgMallocBytesRWX(int len) barf("mallocBytesRWX: failed to protect 0x%p; error=%lu; old protection: %lu\n", addr, (unsigned long)GetLastError(), (unsigned long)dwOldProtect); } -#elif defined(openbsd_HOST_OS) || defined(linux_HOST_OS) +#elif defined(openbsd_HOST_OS) || defined(linux_HOST_OS) || defined(darwin_HOST_OS) /* malloced memory isn't executable by default on OpenBSD */ my_uintptr_t pageSize = sysconf(_SC_PAGESIZE); my_uintptr_t mask = ~(pageSize - 1); -- 1.7.10.4