aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Pall <mike>2012-10-09 21:42:42 +0200
committerMike Pall <mike>2012-10-09 21:42:42 +0200
commit5ebe4990baa2a0fcbd8c22cf813a18082a7eb961 (patch)
tree55f074ec586f110d05e3aafd4bef4dfcadac306e /src
parent0452e97ba0c06dbcf956ec46817e4a71012d87cc (diff)
downloadluajit-5ebe4990baa2a0fcbd8c22cf813a18082a7eb961.tar.gz
luajit-5ebe4990baa2a0fcbd8c22cf813a18082a7eb961.tar.bz2
luajit-5ebe4990baa2a0fcbd8c22cf813a18082a7eb961.zip
Add LJ_TARGET_UNALIGNED.
Diffstat (limited to 'src')
-rw-r--r--src/lj_arch.h6
-rw-r--r--src/lj_opt_fold.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/src/lj_arch.h b/src/lj_arch.h
index 4df3e8d2..6811e1b3 100644
--- a/src/lj_arch.h
+++ b/src/lj_arch.h
@@ -131,6 +131,7 @@
131#define LJ_TARGET_EHRETREG 0 131#define LJ_TARGET_EHRETREG 0
132#define LJ_TARGET_MASKSHIFT 1 132#define LJ_TARGET_MASKSHIFT 1
133#define LJ_TARGET_MASKROT 1 133#define LJ_TARGET_MASKROT 1
134#define LJ_TARGET_UNALIGNED 1
134#define LJ_ARCH_NUMMODE LJ_NUMMODE_SINGLE_DUAL 135#define LJ_ARCH_NUMMODE LJ_NUMMODE_SINGLE_DUAL
135 136
136#elif LUAJIT_TARGET == LUAJIT_ARCH_X64 137#elif LUAJIT_TARGET == LUAJIT_ARCH_X64
@@ -145,6 +146,7 @@
145#define LJ_TARGET_JUMPRANGE 31 /* +-2^31 = +-2GB */ 146#define LJ_TARGET_JUMPRANGE 31 /* +-2^31 = +-2GB */
146#define LJ_TARGET_MASKSHIFT 1 147#define LJ_TARGET_MASKSHIFT 1
147#define LJ_TARGET_MASKROT 1 148#define LJ_TARGET_MASKROT 1
149#define LJ_TARGET_UNALIGNED 1
148#define LJ_ARCH_NUMMODE LJ_NUMMODE_SINGLE_DUAL 150#define LJ_ARCH_NUMMODE LJ_NUMMODE_SINGLE_DUAL
149 151
150#elif LUAJIT_TARGET == LUAJIT_ARCH_ARM 152#elif LUAJIT_TARGET == LUAJIT_ARCH_ARM
@@ -388,6 +390,10 @@
388#define LJ_64 1 390#define LJ_64 1
389#endif 391#endif
390 392
393#ifndef LJ_TARGET_UNALIGNED
394#define LJ_TARGET_UNALIGNED 0
395#endif
396
391/* Various workarounds for embedded operating systems. */ 397/* Various workarounds for embedded operating systems. */
392#if defined(__ANDROID__) || defined(__symbian__) 398#if defined(__ANDROID__) || defined(__symbian__)
393#define LUAJIT_NO_LOG2 399#define LUAJIT_NO_LOG2
diff --git a/src/lj_opt_fold.c b/src/lj_opt_fold.c
index 23199c43..b8c67d78 100644
--- a/src/lj_opt_fold.c
+++ b/src/lj_opt_fold.c
@@ -1800,7 +1800,7 @@ LJFOLDF(merge_eqne_snew_kgc)
1800 int32_t len = (int32_t)kstr->len; 1800 int32_t len = (int32_t)kstr->len;
1801 lua_assert(irt_isstr(fins->t)); 1801 lua_assert(irt_isstr(fins->t));
1802 1802
1803#if LJ_TARGET_X86ORX64 1803#if LJ_TARGET_UNALIGNED
1804#define FOLD_SNEW_MAX_LEN 4 /* Handle string lengths 0, 1, 2, 3, 4. */ 1804#define FOLD_SNEW_MAX_LEN 4 /* Handle string lengths 0, 1, 2, 3, 4. */
1805#define FOLD_SNEW_TYPE8 IRT_I8 /* Creates shorter immediates. */ 1805#define FOLD_SNEW_TYPE8 IRT_I8 /* Creates shorter immediates. */
1806#else 1806#else