summaryrefslogtreecommitdiff
path: root/src/lj_record.c
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_record.c
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_record.c')
-rw-r--r--src/lj_record.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lj_record.c b/src/lj_record.c
index b5fb6649..3b754897 100644
--- a/src/lj_record.c
+++ b/src/lj_record.c
@@ -61,7 +61,10 @@ static void rec_check_ir(jit_State *J)
61 case IRMref: lua_assert(op1 >= nk); 61 case IRMref: lua_assert(op1 >= nk);
62 lua_assert(i >= REF_BIAS ? op1 < i : op1 > i); break; 62 lua_assert(i >= REF_BIAS ? op1 < i : op1 > i); break;
63 case IRMlit: break; 63 case IRMlit: break;
64 case IRMcst: lua_assert(i < REF_BIAS); continue; 64 case IRMcst: lua_assert(i < REF_BIAS);
65 if (irt_is64(ir->t) && ir->o != IR_KNULL)
66 i++;
67 continue;
65 } 68 }
66 switch (irm_op2(mode)) { 69 switch (irm_op2(mode)) {
67 case IRMnone: lua_assert(op2 == 0); break; 70 case IRMnone: lua_assert(op2 == 0); break;