summaryrefslogtreecommitdiff
path: root/src/lj_arch.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lj_arch.h')
-rw-r--r--src/lj_arch.h18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/lj_arch.h b/src/lj_arch.h
index 1f8e1026..ce169b33 100644
--- a/src/lj_arch.h
+++ b/src/lj_arch.h
@@ -96,6 +96,7 @@
96#define LJ_TARGET_WINDOWS (LUAJIT_OS == LUAJIT_OS_WINDOWS) 96#define LJ_TARGET_WINDOWS (LUAJIT_OS == LUAJIT_OS_WINDOWS)
97#define LJ_TARGET_LINUX (LUAJIT_OS == LUAJIT_OS_LINUX) 97#define LJ_TARGET_LINUX (LUAJIT_OS == LUAJIT_OS_LINUX)
98#define LJ_TARGET_OSX (LUAJIT_OS == LUAJIT_OS_OSX) 98#define LJ_TARGET_OSX (LUAJIT_OS == LUAJIT_OS_OSX)
99#define LJ_TARGET_IOS (LJ_TARGET_OSX && LUAJIT_TARGET == LUAJIT_ARCH_ARM)
99#define LJ_TARGET_POSIX (LUAJIT_OS > LUAJIT_OS_WINDOWS) 100#define LJ_TARGET_POSIX (LUAJIT_OS > LUAJIT_OS_WINDOWS)
100#define LJ_TARGET_DLOPEN LJ_TARGET_POSIX 101#define LJ_TARGET_DLOPEN LJ_TARGET_POSIX
101 102
@@ -149,10 +150,6 @@
149#define LJ_TARGET_MASKROT 1 150#define LJ_TARGET_MASKROT 1
150#define LJ_TARGET_UNIFYROT 2 /* Want only IR_BROR. */ 151#define LJ_TARGET_UNIFYROT 2 /* Want only IR_BROR. */
151#define LJ_ARCH_NUMMODE LJ_NUMMODE_DUAL 152#define LJ_ARCH_NUMMODE LJ_NUMMODE_DUAL
152#if LJ_TARGET_OSX
153/* Runtime code generation is restricted on iOS. Complain to Apple, not me. */
154#define LJ_ARCH_NOJIT 1
155#endif
156 153
157#elif LUAJIT_TARGET == LUAJIT_ARCH_PPC 154#elif LUAJIT_TARGET == LUAJIT_ARCH_PPC
158 155
@@ -243,7 +240,7 @@
243#if defined(__ARM_PCS_VFP) 240#if defined(__ARM_PCS_VFP)
244#error "No support for ARM hard-float ABI (yet)" 241#error "No support for ARM hard-float ABI (yet)"
245#endif 242#endif
246#if !(__ARM_EABI__ || LJ_TARGET_OSX) 243#if !(__ARM_EABI__ || LJ_TARGET_IOS)
247#error "Only ARM EABI or iOS 3.0+ ABI is supported" 244#error "Only ARM EABI or iOS 3.0+ ABI is supported"
248#endif 245#endif
249#elif LJ_TARGET_PPC || LJ_TARGET_PPCSPE 246#elif LJ_TARGET_PPC || LJ_TARGET_PPCSPE
@@ -272,8 +269,15 @@
272#define LJ_DUALNUM 0 269#define LJ_DUALNUM 0
273#endif 270#endif
274 271
272#if LJ_TARGET_IOS
273/* Runtime code generation is restricted on iOS. Complain to Apple, not me. */
274#ifndef LUAJIT_ENABLE_JIT
275#define LJ_OS_NOJIT 1
276#endif
277#endif
278
275/* Disable or enable the JIT compiler. */ 279/* Disable or enable the JIT compiler. */
276#if defined(LUAJIT_DISABLE_JIT) || defined(LJ_ARCH_NOJIT) 280#if defined(LUAJIT_DISABLE_JIT) || defined(LJ_ARCH_NOJIT) || defined(LJ_OS_NOJIT)
277#define LJ_HASJIT 0 281#define LJ_HASJIT 0
278#else 282#else
279#define LJ_HASJIT 1 283#define LJ_HASJIT 1
@@ -316,7 +320,7 @@
316#define LUAJIT_NO_EXP2 320#define LUAJIT_NO_EXP2
317#endif 321#endif
318 322
319#if defined(__symbian__) || (LJ_TARGET_ARM && LJ_TARGET_OSX) 323#if defined(__symbian__) || LJ_TARGET_IOS
320#define LUAJIT_NO_UNWIND 324#define LUAJIT_NO_UNWIND
321#endif 325#endif
322 326