diff options
author | Mike Pall <mike> | 2016-05-23 00:25:29 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2016-05-23 00:25:29 +0200 |
commit | 7fb75ccc4cf17825c1c8fe9f44ebfb0668a1b033 (patch) | |
tree | 7317a542402fa2a135b6789c7c4868089d31fd2f /src/lj_record.c | |
parent | a4067978b6d1c2a25d91d82b1b0d384d98abdbe5 (diff) | |
download | luajit-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.c | 5 |
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; |