From 0a9ff94c4a1fcec2c310dcb092da694f23186e23 Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Sun, 14 Oct 2018 15:21:37 +0200 Subject: Actually implement maxirconst trace limit. Suggested by spacewander. --- src/lj_record.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/lj_record.c b/src/lj_record.c index 1a2b1c5d..7f37d6c6 100644 --- a/src/lj_record.c +++ b/src/lj_record.c @@ -2470,8 +2470,9 @@ void lj_record_ins(jit_State *J) #undef rbv #undef rcv - /* Limit the number of recorded IR instructions. */ - if (J->cur.nins > REF_FIRST+(IRRef)J->param[JIT_P_maxrecord]) + /* Limit the number of recorded IR instructions and constants. */ + if (J->cur.nins > REF_FIRST+(IRRef)J->param[JIT_P_maxrecord] || + J->cur.nk < REF_BIAS-(IRRef)J->param[JIT_P_maxirconst]) lj_trace_err(J, LJ_TRERR_TRACEOV); } -- cgit v1.2.3-55-g6feb