summaryrefslogtreecommitdiff
path: root/src/lj_arch.h
diff options
context:
space:
mode:
authorMike Pall <mike>2016-01-29 07:03:36 +0100
committerMike Pall <mike>2016-01-29 07:03:36 +0100
commit60de2f3d510b87f403c8dee01ed4caee1971894d (patch)
tree914c34dfddb2347bc75c9359b242ba0f95925d83 /src/lj_arch.h
parent2f6b2967c7312d867890df158fe6e0988fda3854 (diff)
downloadluajit-60de2f3d510b87f403c8dee01ed4caee1971894d.tar.gz
luajit-60de2f3d510b87f403c8dee01ed4caee1971894d.tar.bz2
luajit-60de2f3d510b87f403c8dee01ed4caee1971894d.zip
MIPS: Switch to dual-number mode. Fix soft-float interpreter.
Diffstat (limited to 'src/lj_arch.h')
-rw-r--r--src/lj_arch.h34
1 files changed, 26 insertions, 8 deletions
diff --git a/src/lj_arch.h b/src/lj_arch.h
index a114bdda..7096ad5e 100644
--- a/src/lj_arch.h
+++ b/src/lj_arch.h
@@ -295,6 +295,31 @@
295#define LJ_ARCH_NAME "mips" 295#define LJ_ARCH_NAME "mips"
296#define LJ_ARCH_ENDIAN LUAJIT_BE 296#define LJ_ARCH_ENDIAN LUAJIT_BE
297#endif 297#endif
298
299#if !defined(LJ_ARCH_HASFPU)
300#ifdef __mips_soft_float
301#define LJ_ARCH_HASFPU 0
302#else
303#define LJ_ARCH_HASFPU 1
304#endif
305#endif
306
307/* Temporarily disable features until the code has been merged. */
308#if !LJ_ARCH_HASFPU
309#define LJ_ARCH_NOJIT 1
310#endif
311#if !defined(LUAJIT_NO_UNWIND) && __GNU_COMPACT_EH__
312#define LUAJIT_NO_UNWIND 1
313#endif
314
315#if !defined(LJ_ABI_SOFTFP)
316#ifdef __mips_soft_float
317#define LJ_ABI_SOFTFP 1
318#else
319#define LJ_ABI_SOFTFP 0
320#endif
321#endif
322
298#define LJ_ARCH_BITS 32 323#define LJ_ARCH_BITS 32
299#define LJ_TARGET_MIPS 1 324#define LJ_TARGET_MIPS 1
300#define LJ_TARGET_EHRETREG 4 325#define LJ_TARGET_EHRETREG 4
@@ -302,14 +327,7 @@
302#define LJ_TARGET_MASKSHIFT 1 327#define LJ_TARGET_MASKSHIFT 1
303#define LJ_TARGET_MASKROT 1 328#define LJ_TARGET_MASKROT 1
304#define LJ_TARGET_UNIFYROT 2 /* Want only IR_BROR. */ 329#define LJ_TARGET_UNIFYROT 2 /* Want only IR_BROR. */
305#define LJ_ARCH_NUMMODE LJ_NUMMODE_SINGLE 330#define LJ_ARCH_NUMMODE LJ_NUMMODE_DUAL
306
307#if !defined(LJ_ARCH_HASFPU) && defined(__mips_soft_float)
308#define LJ_ARCH_HASFPU 0
309#endif
310#if !defined(LJ_ABI_SOFTFP) && defined(__mips_soft_float)
311#define LJ_ABI_SOFTFP 1
312#endif
313 331
314#if _MIPS_ARCH_MIPS32R2 332#if _MIPS_ARCH_MIPS32R2
315#define LJ_ARCH_VERSION 20 333#define LJ_ARCH_VERSION 20