summaryrefslogtreecommitdiff
path: root/src/lj_iropt.h
diff options
context:
space:
mode:
authorMike Pall <mike>2016-05-21 01:04:17 +0200
committerMike Pall <mike>2016-05-21 01:04:17 +0200
commitccae333844c7aad0934f13f7698894c883a6b561 (patch)
treefedb1af5ac7a447436d24df5a1897cd30933ddbf /src/lj_iropt.h
parent786dbb2ebdde16eadd7464cd5cbeb5d95a5e46f0 (diff)
downloadluajit-ccae333844c7aad0934f13f7698894c883a6b561.tar.gz
luajit-ccae333844c7aad0934f13f7698894c883a6b561.tar.bz2
luajit-ccae333844c7aad0934f13f7698894c883a6b561.zip
Load SIMD constants with IR_FLOAD from GG_State.
Contributed by Peter Cawley.
Diffstat (limited to 'src/lj_iropt.h')
-rw-r--r--src/lj_iropt.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lj_iropt.h b/src/lj_iropt.h
index 3e758b2e..46933671 100644
--- a/src/lj_iropt.h
+++ b/src/lj_iropt.h
@@ -77,8 +77,8 @@ static LJ_AINLINE TRef lj_ir_knum(jit_State *J, lua_Number n)
77#define lj_ir_knum_tobit(J) lj_ir_knum_u64(J, U64x(43380000,00000000)) 77#define lj_ir_knum_tobit(J) lj_ir_knum_u64(J, U64x(43380000,00000000))
78 78
79/* Special 128 bit SIMD constants. */ 79/* Special 128 bit SIMD constants. */
80#define lj_ir_knum_abs(J) lj_ir_k64(J, IR_KNUM, LJ_KSIMD(J, LJ_KSIMD_ABS)) 80#define lj_ir_ksimd(J, idx) \
81#define lj_ir_knum_neg(J) lj_ir_k64(J, IR_KNUM, LJ_KSIMD(J, LJ_KSIMD_NEG)) 81 lj_ir_ggfload(J, IRT_NUM, (uintptr_t)LJ_KSIMD(J, idx) - (uintptr_t)J2GG(J))
82 82
83/* Access to constants. */ 83/* Access to constants. */
84LJ_FUNC void lj_ir_kvalue(lua_State *L, TValue *tv, const IRIns *ir); 84LJ_FUNC void lj_ir_kvalue(lua_State *L, TValue *tv, const IRIns *ir);