Selaa lähdekoodia

Fix register hints for arithmetic helper functions.

Mike Pall 14 vuotta sitten
vanhempi
commit
c01aaad890
1 muutettua tiedostoa jossa 3 lisäystä ja 2 poistoa
  1. 3 2
      src/lj_asm.c

+ 3 - 2
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