diff options
author | Mike Pall <mike> | 2022-03-08 19:44:10 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2022-03-08 19:44:10 +0100 |
commit | 96d6d5032098ea9f0002165394a8774dcaa0c0ce (patch) | |
tree | 84712e02c1452d8f0c48a6f506a9aa1ebe0f4a32 /src/vm_arm.dasc | |
parent | aa0550e3f0999cc6ef62f7ef80493ebef8c9a2f7 (diff) | |
download | luajit-96d6d5032098ea9f0002165394a8774dcaa0c0ce.tar.gz luajit-96d6d5032098ea9f0002165394a8774dcaa0c0ce.tar.bz2 luajit-96d6d5032098ea9f0002165394a8774dcaa0c0ce.zip |
Revert to trival pow() optimizations to prevent inaccuracies.
Diffstat (limited to 'src/vm_arm.dasc')
-rw-r--r-- | src/vm_arm.dasc | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/vm_arm.dasc b/src/vm_arm.dasc index 636619fd..770c1602 100644 --- a/src/vm_arm.dasc +++ b/src/vm_arm.dasc | |||
@@ -1477,11 +1477,11 @@ static void build_subroutines(BuildCtx *ctx) | |||
1477 | |.endif | 1477 | |.endif |
1478 | |.endmacro | 1478 | |.endmacro |
1479 | | | 1479 | | |
1480 | |.macro math_extern2, name, func | 1480 | |.macro math_extern2, func |
1481 | |.if HFABI | 1481 | |.if HFABI |
1482 | | .ffunc_dd math_ .. name | 1482 | | .ffunc_dd math_ .. func |
1483 | |.else | 1483 | |.else |
1484 | | .ffunc_nn math_ .. name | 1484 | | .ffunc_nn math_ .. func |
1485 | |.endif | 1485 | |.endif |
1486 | | .IOS mov RA, BASE | 1486 | | .IOS mov RA, BASE |
1487 | | bl extern func | 1487 | | bl extern func |
@@ -1492,9 +1492,6 @@ static void build_subroutines(BuildCtx *ctx) | |||
1492 | | b ->fff_restv | 1492 | | b ->fff_restv |
1493 | |.endif | 1493 | |.endif |
1494 | |.endmacro | 1494 | |.endmacro |
1495 | |.macro math_extern2, func | ||
1496 | | math_extern2 func, func | ||
1497 | |.endmacro | ||
1498 | | | 1495 | | |
1499 | |.if FPU | 1496 | |.if FPU |
1500 | | .ffunc_d math_sqrt | 1497 | | .ffunc_d math_sqrt |
@@ -1540,7 +1537,7 @@ static void build_subroutines(BuildCtx *ctx) | |||
1540 | | math_extern sinh | 1537 | | math_extern sinh |
1541 | | math_extern cosh | 1538 | | math_extern cosh |
1542 | | math_extern tanh | 1539 | | math_extern tanh |
1543 | | math_extern2 pow, lj_vm_pow | 1540 | | math_extern2 pow |
1544 | | math_extern2 atan2 | 1541 | | math_extern2 atan2 |
1545 | | math_extern2 fmod | 1542 | | math_extern2 fmod |
1546 | | | 1543 | | |
@@ -3206,7 +3203,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) | |||
3206 | break; | 3203 | break; |
3207 | case BC_POW: | 3204 | case BC_POW: |
3208 | | // NYI: (partial) integer arithmetic. | 3205 | | // NYI: (partial) integer arithmetic. |
3209 | | ins_arithfp extern, extern lj_vm_pow | 3206 | | ins_arithfp extern, extern pow |
3210 | break; | 3207 | break; |
3211 | 3208 | ||
3212 | case BC_CAT: | 3209 | case BC_CAT: |