diff options
author | Rich Felker <dalias@aerifal.cx> | 2020-02-06 12:06:30 -0500 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2020-02-06 13:21:26 -0500 |
commit | 141c8d4ccb183365df8d392ae64cd69c4f0df8bf (patch) | |
tree | 03bed7745598a3fc1d1a4cf0382affc007c5ad4f /src/math/i386/acos.s | |
parent | 1c9afd69051a64cf085c6fb3674a444ff9a43857 (diff) | |
download | musl-141c8d4ccb183365df8d392ae64cd69c4f0df8bf.tar.gz musl-141c8d4ccb183365df8d392ae64cd69c4f0df8bf.tar.bz2 musl-141c8d4ccb183365df8d392ae64cd69c4f0df8bf.tar.xz musl-141c8d4ccb183365df8d392ae64cd69c4f0df8bf.zip |
fix excess precision in return value of i386 acos[f] and asin[f]
analogous to commit 1c9afd69051a64cf085c6fb3674a444ff9a43857 for
atan[2][f].
Diffstat (limited to 'src/math/i386/acos.s')
-rw-r--r-- | src/math/i386/acos.s | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/src/math/i386/acos.s b/src/math/i386/acos.s index 47f365ef..af423a2f 100644 --- a/src/math/i386/acos.s +++ b/src/math/i386/acos.s @@ -1,22 +1,10 @@ # use acos(x) = atan2(fabs(sqrt((1-x)*(1+x))), x) -.global acosf -.type acosf,@function -acosf: - flds 4(%esp) - jmp 1f - -.global acosl -.type acosl,@function -acosl: - fldt 4(%esp) - jmp 1f - .global acos .type acos,@function acos: fldl 4(%esp) -1: fld %st(0) + fld %st(0) fld1 fsub %st(0),%st(1) fadd %st(2) @@ -25,4 +13,6 @@ acos: fabs # fix sign of zero (matters in downward rounding mode) fxch %st(1) fpatan + fstpl 4(%esp) + fldl 4(%esp) ret |