aboutsummaryrefslogtreecommitdiff
path: root/src/lj_record.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lj_record.c')
-rw-r--r--src/lj_record.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lj_record.c b/src/lj_record.c
index 8718f8bb..7620ae4c 100644
--- a/src/lj_record.c
+++ b/src/lj_record.c
@@ -550,7 +550,7 @@ static void rec_loop_interp(jit_State *J, const BCIns *pc, LoopEvent ev)
550 ** an inner loop even in a root trace. But it's better to be a bit 550 ** an inner loop even in a root trace. But it's better to be a bit
551 ** more conservative here and only do it for very short loops. 551 ** more conservative here and only do it for very short loops.
552 */ 552 */
553 if (!innerloopleft(J, pc)) 553 if (bc_j(*pc) != -1 && !innerloopleft(J, pc))
554 lj_trace_err(J, LJ_TRERR_LINNER); /* Root trace hit an inner loop. */ 554 lj_trace_err(J, LJ_TRERR_LINNER); /* Root trace hit an inner loop. */
555 if ((ev != LOOPEV_ENTERLO && 555 if ((ev != LOOPEV_ENTERLO &&
556 J->loopref && J->cur.nins - J->loopref > 24) || --J->loopunroll < 0) 556 J->loopref && J->cur.nins - J->loopref > 24) || --J->loopunroll < 0)