aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lj_record.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/lj_record.c b/src/lj_record.c
index 7f7a0b63..4fe1a056 100644
--- a/src/lj_record.c
+++ b/src/lj_record.c
@@ -2767,9 +2767,12 @@ void lj_record_setup(jit_State *J)
2767 sidecheck: 2767 sidecheck:
2768 if ((traceref(J, J->cur.root)->nchild >= J->param[JIT_P_maxside] || 2768 if ((traceref(J, J->cur.root)->nchild >= J->param[JIT_P_maxside] ||
2769 T->snap[J->exitno].count >= J->param[JIT_P_hotexit] + 2769 T->snap[J->exitno].count >= J->param[JIT_P_hotexit] +
2770 J->param[JIT_P_tryside]) && 2770 J->param[JIT_P_tryside])) {
2771 !(bc_op(*J->pc) == BC_JLOOP && 2771 if (bc_op(*J->pc) == BC_JLOOP) {
2772 bc_op(traceref(J, bc_d(*J->pc))->startins) == BC_ITERN)) { 2772 BCIns startins = traceref(J, bc_d(*J->pc))->startins;
2773 if (bc_op(startins) == BC_ITERN)
2774 rec_itern(J, bc_a(startins), bc_b(startins));
2775 }
2773 lj_record_stop(J, LJ_TRLINK_INTERP, 0); 2776 lj_record_stop(J, LJ_TRLINK_INTERP, 0);
2774 } 2777 }
2775 } else { /* Root trace. */ 2778 } else { /* Root trace. */