diff options
Diffstat (limited to '')
-rw-r--r-- | src/lj_ir.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/lj_ir.c b/src/lj_ir.c index b5e94eb8..3ce29954 100644 --- a/src/lj_ir.c +++ b/src/lj_ir.c | |||
@@ -389,8 +389,10 @@ void lj_ir_kvalue(lua_State *L, TValue *tv, const IRIns *ir) | |||
389 | case IR_KPRI: setpriV(tv, irt_toitype(ir->t)); break; | 389 | case IR_KPRI: setpriV(tv, irt_toitype(ir->t)); break; |
390 | case IR_KINT: setintV(tv, ir->i); break; | 390 | case IR_KINT: setintV(tv, ir->i); break; |
391 | case IR_KGC: setgcV(L, tv, ir_kgc(ir), irt_toitype(ir->t)); break; | 391 | case IR_KGC: setgcV(L, tv, ir_kgc(ir), irt_toitype(ir->t)); break; |
392 | case IR_KPTR: case IR_KKPTR: setlightudV(tv, ir_kptr(ir)); break; | 392 | case IR_KPTR: case IR_KKPTR: |
393 | case IR_KNULL: setlightudV(tv, NULL); break; | 393 | setnumV(tv, (lua_Number)(uintptr_t)ir_kptr(ir)); |
394 | break; | ||
395 | case IR_KNULL: setintV(tv, 0); break; | ||
394 | case IR_KNUM: setnumV(tv, ir_knum(ir)->n); break; | 396 | case IR_KNUM: setnumV(tv, ir_knum(ir)->n); break; |
395 | #if LJ_HASFFI | 397 | #if LJ_HASFFI |
396 | case IR_KINT64: { | 398 | case IR_KINT64: { |