summaryrefslogtreecommitdiff
path: root/src/lj_emit_arm.h
diff options
context:
space:
mode:
authorMike Pall <mike>2016-05-23 00:25:29 +0200
committerMike Pall <mike>2016-05-23 00:25:29 +0200
commit7fb75ccc4cf17825c1c8fe9f44ebfb0668a1b033 (patch)
tree7317a542402fa2a135b6789c7c4868089d31fd2f /src/lj_emit_arm.h
parenta4067978b6d1c2a25d91d82b1b0d384d98abdbe5 (diff)
downloadluajit-7fb75ccc4cf17825c1c8fe9f44ebfb0668a1b033.tar.gz
luajit-7fb75ccc4cf17825c1c8fe9f44ebfb0668a1b033.tar.bz2
luajit-7fb75ccc4cf17825c1c8fe9f44ebfb0668a1b033.zip
Embed 64 bit constants directly in the IR, using two slots.
Contributed by Peter Cawley.
Diffstat (limited to 'src/lj_emit_arm.h')
-rw-r--r--src/lj_emit_arm.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lj_emit_arm.h b/src/lj_emit_arm.h
index 47fee5fc..dff9fac4 100644
--- a/src/lj_emit_arm.h
+++ b/src/lj_emit_arm.h
@@ -219,8 +219,9 @@ static void emit_lsptr(ASMState *as, ARMIns ai, Reg r, void *p)
219 219
220#if !LJ_SOFTFP 220#if !LJ_SOFTFP
221/* Load a number constant into an FPR. */ 221/* Load a number constant into an FPR. */
222static void emit_loadn(ASMState *as, Reg r, cTValue *tv) 222static void emit_loadk64(ASMState *as, Reg r, IRIns *ir)
223{ 223{
224 cTValue *tv = ir_knum(ir);
224 int32_t i; 225 int32_t i;
225 if ((as->flags & JIT_F_VFPV3) && !tv->u32.lo) { 226 if ((as->flags & JIT_F_VFPV3) && !tv->u32.lo) {
226 uint32_t hi = tv->u32.hi; 227 uint32_t hi = tv->u32.hi;