aboutsummaryrefslogtreecommitdiff
path: root/src/lj_mcode.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lj_mcode.c')
-rw-r--r--src/lj_mcode.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/lj_mcode.c b/src/lj_mcode.c
index c8ed95e1..8a4851dd 100644
--- a/src/lj_mcode.c
+++ b/src/lj_mcode.c
@@ -29,6 +29,11 @@
29#include <valgrind/valgrind.h> 29#include <valgrind/valgrind.h>
30#endif 30#endif
31 31
32#if LJ_TARGET_WINDOWS
33#define WIN32_LEAN_AND_MEAN
34#include <windows.h>
35#endif
36
32#if LJ_TARGET_IOS 37#if LJ_TARGET_IOS
33void sys_icache_invalidate(void *start, size_t len); 38void sys_icache_invalidate(void *start, size_t len);
34#endif 39#endif
@@ -41,6 +46,8 @@ void lj_mcode_sync(void *start, void *end)
41#endif 46#endif
42#if LJ_TARGET_X86ORX64 47#if LJ_TARGET_X86ORX64
43 UNUSED(start); UNUSED(end); 48 UNUSED(start); UNUSED(end);
49#elif LJ_TARGET_WINDOWS
50 FlushInstructionCache(GetCurrentProcess(), start, (char *)end-(char *)start);
44#elif LJ_TARGET_IOS 51#elif LJ_TARGET_IOS
45 sys_icache_invalidate(start, (char *)end-(char *)start); 52 sys_icache_invalidate(start, (char *)end-(char *)start);
46#elif LJ_TARGET_PPC 53#elif LJ_TARGET_PPC
@@ -58,9 +65,6 @@ void lj_mcode_sync(void *start, void *end)
58 65
59#if LJ_TARGET_WINDOWS 66#if LJ_TARGET_WINDOWS
60 67
61#define WIN32_LEAN_AND_MEAN
62#include <windows.h>
63
64#define MCPROT_RW PAGE_READWRITE 68#define MCPROT_RW PAGE_READWRITE
65#define MCPROT_RX PAGE_EXECUTE_READ 69#define MCPROT_RX PAGE_EXECUTE_READ
66#define MCPROT_RWX PAGE_EXECUTE_READWRITE 70#define MCPROT_RWX PAGE_EXECUTE_READWRITE