diff --git a/src/lj_asm.c b/src/lj_asm.c index 7164cfd8..7c27a98f 100644 --- a/src/lj_asm.c +++ b/src/lj_asm.c @@ -1211,8 +1211,10 @@ static void asm_head_side(ASMState *as) rs = asm_head_parentrs(as, ir); if (ra_hasreg(ir->r)) { rset_clear(allow, ir->r); - if (ra_hasspill(ir->s)) + if (ra_hasspill(ir->s)) { ra_save(as, ir, ir->r); + checkmclim(as); + } } else if (ra_hasspill(ir->s)) { irt_setmark(ir->t); pass2 = 1;