diff --git a/src/lj_asm.c b/src/lj_asm.c index 3d9a213b..c795b99e 100644 --- a/src/lj_asm.c +++ b/src/lj_asm.c @@ -1556,6 +1556,9 @@ static void asm_setup_regsp(ASMState *as) if (inloop) as->modset = RSET_SCRATCH; break; +#if !LJ_TARGET_X86ORX64 && !LJ_SOFTFP + case IR_ATAN2: case IR_LDEXP: +#endif case IR_POW: if (!LJ_SOFTFP && irt_isnum(ir->t)) { #if LJ_TARGET_X86ORX64 @@ -1571,14 +1574,12 @@ static void asm_setup_regsp(ASMState *as) } /* fallthrough for integer POW */ case IR_DIV: case IR_MOD: -#if LJ_64 && LJ_HASFFI if (!irt_isnum(ir->t)) { ir->prev = REGSP_HINT(RID_RET); if (inloop) as->modset |= (RSET_SCRATCH & RSET_GPR); continue; } -#endif break; case IR_FPMATH: #if LJ_TARGET_X86ORX64