aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2016-04-03 19:13:37 +0200
committerMike Pall <mike>2016-04-03 19:13:37 +0200
commitd150fbf4411a7e6b098b7af026f77d6b93a26c99 (patch)
tree860b39225a5c6fd45d887c24837e901fa277319f
parent25b377942ab2707422167d5f04732bb7d6806f58 (diff)
parent1c6fd13dbd2af1034db935805fd93fbdcdf4f417 (diff)
Merge branch 'master' into v2.1
-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 90f53af..d6dd73b 100644
--- a/src/lj_record.c
+++ b/src/lj_record.c
@@ -1693,8 +1693,11 @@ static int select_detect(jit_State *J)
BCIns ins = J->pc[1];
if (bc_op(ins) == BC_CALLM && bc_b(ins) == 2 && bc_c(ins) == 1) {
cTValue *func = &J->L->base[bc_a(ins)];
- if (tvisfunc(func) && funcV(func)->c.ffid == FF_select)
+ if (tvisfunc(func) && funcV(func)->c.ffid == FF_select) {
+ TRef kfunc = lj_ir_kfunc(J, funcV(func));
+ emitir(IRTG(IR_EQ, IRT_FUNC), getslot(J, bc_a(ins)), kfunc);
return 1;
+ }
}
return 0;
}