diff options
author | Szabolcs Nagy <nsz@port70.net> | 2012-12-14 18:29:56 +0100 |
---|---|---|
committer | Szabolcs Nagy <nsz@port70.net> | 2012-12-14 18:29:56 +0100 |
commit | a8f73bb1a685dd7d67669c6f6ceb255cfa967790 (patch) | |
tree | 6b6a17fee9e78b45247971b839d9ea9566765005 /src/math/i386/exp.s | |
parent | 934609442339edb21a33532ccefac8b78e6305f2 (diff) | |
download | musl-a8f73bb1a685dd7d67669c6f6ceb255cfa967790.tar.gz musl-a8f73bb1a685dd7d67669c6f6ceb255cfa967790.tar.xz musl-a8f73bb1a685dd7d67669c6f6ceb255cfa967790.zip |
math: fix i386/expl.s with more precise x*log2e
with naive exp2l(x*log2e) the last 12bits of the result was incorrect for x with large absolute value with hi + lo = x*log2e is caluclated to 128 bits precision and then expl(x) = exp2l(hi) + exp2l(hi) * f2xm1(lo) this gives <1.5ulp measured error everywhere in nearest rounding mode
Diffstat (limited to 'src/math/i386/exp.s')
-rw-r--r-- | src/math/i386/exp.s | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/src/math/i386/exp.s b/src/math/i386/exp.s index c7f5ad0f..e3b42af5 100644 --- a/src/math/i386/exp.s +++ b/src/math/i386/exp.s @@ -50,12 +50,6 @@ expf: flds 4(%esp) jmp 2f -.global expl -.type expl,@function -expl: - fldt 4(%esp) - jmp 2f - .global exp .type exp,@function exp: |