[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dotgnu-pnet-commits] libjit ChangeLog jit/jit-alloc.c
From: |
Aleksey Demakov |
Subject: |
[dotgnu-pnet-commits] libjit ChangeLog jit/jit-alloc.c |
Date: |
Fri, 23 May 2008 14:53:31 +0000 |
CVSROOT: /sources/dotgnu-pnet
Module name: libjit
Changes by: Aleksey Demakov <avd> 08/05/23 14:53:31
Modified files:
. : ChangeLog
jit : jit-alloc.c
Log message:
on win32 use VirtualAlloc and VirtualFree to allocate/free executable
memory
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libjit/ChangeLog?cvsroot=dotgnu-pnet&r1=1.373&r2=1.374
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-alloc.c?cvsroot=dotgnu-pnet&r1=1.7&r2=1.8
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/ChangeLog,v
retrieving revision 1.373
retrieving revision 1.374
diff -u -b -r1.373 -r1.374
--- ChangeLog 23 May 2008 11:00:42 -0000 1.373
+++ ChangeLog 23 May 2008 14:53:30 -0000 1.374
@@ -1,3 +1,8 @@
+2008-05-23 Juan Jesus Garcia de Soria <address@hidden>
+
+ * jit/jit-alloc.c (jit_malloc_exec, jit_free_exec): on win32 use
+ VirtualAlloc and VirtualFree to allocate/free executable memory.
+
2008-05-23 Klaus Treichel <address@hidden>
* dpas/dpas-scanner.l, tools/gen-rules-scanner.l,
Index: jit/jit-alloc.c
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/jit/jit-alloc.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- jit/jit-alloc.c 24 Jan 2008 20:12:50 -0000 1.7
+++ jit/jit-alloc.c 23 May 2008 14:53:31 -0000 1.8
@@ -143,10 +143,14 @@
@*/
void *jit_malloc_exec(unsigned int size)
{
-#ifdef JIT_USE_MMAP
- void *ptr = mmap(0, size, PROT_READ | PROT_WRITE | PROT_EXEC,
+#if defined(JIT_WIN32_PLATFORM)
+ return VirtualAlloc(NULL, size,
+ MEM_COMMIT | MEM_RESERVE,
+ PAGE_EXECUTE_READWRITE);
+#elif defined(JIT_USE_MMAP)
+ void *ptr = mmap(0, size,
+ PROT_READ | PROT_WRITE | PROT_EXEC,
MAP_PRIVATE |
MAP_ANONYMOUS, -1, 0);
-
if(ptr == (void *)-1)
{
return (void *)0;
@@ -169,11 +173,13 @@
{
if(ptr)
{
- #ifdef JIT_USE_MMAP
+#if defined(JIT_WIN32_PLATFORM)
+ VirtualFree(ptr, size, MEM_DECOMMIT | MEM_RELEASE);
+#elif defined(JIT_USE_MMAP)
munmap(ptr, size);
- #else
+#else
free(ptr);
- #endif
+#endif
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [dotgnu-pnet-commits] libjit ChangeLog jit/jit-alloc.c,
Aleksey Demakov <=