RTS tidyup sweep, first phase
[ghc-hetmet.git] / rts / posix / OSMem.c
index 7216f0e..0a37256 100644 (file)
@@ -6,12 +6,12 @@
  *
  * ---------------------------------------------------------------------------*/
 
-/* This is non-posix compliant. */
-/* #include "PosixSource.h" */
+// This is non-posix compliant.
+// #include "PosixSource.h"
 
 #include "Rts.h"
-#include "OSMem.h"
-#include "RtsFlags.h"
+
+#include "sm/OSMem.h"
 
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
@@ -112,8 +112,8 @@ my_mmap (void *addr, lnat size)
        vm_protect(mach_task_self(),(vm_address_t)ret,size,FALSE,VM_PROT_READ|VM_PROT_WRITE);
     }
 #else
-    ret = mmap(addr, size, PROT_READ | PROT_WRITE | PROT_EXEC, 
-              MAP_ANON | MAP_PRIVATE, -1, 0);
+    ret = mmap(addr, size, PROT_READ | PROT_WRITE, 
+               MAP_ANON | MAP_PRIVATE, -1, 0);
 #endif
 
     if (ret == (void *)-1) {
@@ -138,7 +138,7 @@ static void *
 gen_map_mblocks (lnat size)
 {
     int slop;
-    void *ret;
+    StgWord8 *ret;
 
     // Try to map a larger block, and take the aligned portion from
     // it (unmap the rest).
@@ -237,6 +237,6 @@ void setExecutable (void *p, lnat len, rtsBool exec)
     StgWord size             = startOfLastPage - startOfFirstPage + pageSize;
     if (mprotect((void*)startOfFirstPage, (size_t)size, 
                 (exec ? PROT_EXEC : 0) | PROT_READ | PROT_WRITE) != 0) {
-       barf("makeExecutable: failed to protect 0x%p\n", p);
+       barf("setExecutable: failed to protect 0x%p\n", p);
     }
 }