diff options
author | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2018-01-30 14:48:22 +0000 |
---|---|---|
committer | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2018-02-12 11:33:33 +0000 |
commit | de800d83059dbedb7d151580f0a3bdc9eaf37340 (patch) | |
tree | 9c35197ab9d9788c73bd6aa5d7d19eb90979f629 /sysdeps/generic | |
parent | c3d466cba1692708a19c6ff829d0386c83a0c6e5 (diff) | |
download | glibc-de800d83059dbedb7d151580f0a3bdc9eaf37340.tar glibc-de800d83059dbedb7d151580f0a3bdc9eaf37340.tar.gz glibc-de800d83059dbedb7d151580f0a3bdc9eaf37340.tar.bz2 glibc-de800d83059dbedb7d151580f0a3bdc9eaf37340.zip |
Remove slow paths from exp
Remove the __slowexp code, so exp is no longer correctly rounded. The
result is computed to about 70 bits precision so the worst case ulp
error is about 0.500007 in nearest rounding mode.
* manual/probes.texi: Remove slowexp probes.
* math/Makefile: Remove slowexp.
* sysdeps/generic/math_private.h (__slowexp): Remove.
* sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Remove __slowexp and
document error bounds.
* sysdeps/i386/fpu/slowexp.c: Remove.
* sysdeps/ia64/fpu/slowexp.c: Remove.
* sysdeps/ieee754/dbl-64/slowexp.c: Remove.
* sysdeps/ieee754/dbl-64/uexp.h (err_0): Remove.
* sysdeps/m68k/m680x0/fpu/slowexp.c: Remove.
* sysdeps/powerpc/power4/fpu/Makefile (CPPFLAGS-slowexp.c): Remove.
* sysdeps/x86_64/fpu/multiarch/Makefile: Remove slowexp-fma.
* sysdeps/x86_64/fpu/multiarch/e_exp-avx.c (__slowexp): Remove.
* sysdeps/x86_64/fpu/multiarch/e_exp-fma.c (__slowexp): Remove.
* sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c (__slowexp): Remove.
* sysdeps/x86_64/fpu/multiarch/slowexp-avx.c: Remove.
* sysdeps/x86_64/fpu/multiarch/slowexp-fma.c: Remove.
* sysdeps/x86_64/fpu/multiarch/slowexp-fma4.c: Remove.
Diffstat (limited to 'sysdeps/generic')
-rw-r--r-- | sysdeps/generic/math_private.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sysdeps/generic/math_private.h b/sysdeps/generic/math_private.h index 07c97fa5e3..ecb37394fb 100644 --- a/sysdeps/generic/math_private.h +++ b/sysdeps/generic/math_private.h @@ -261,7 +261,6 @@ extern double __sin32 (double __x, double __res, double __res1); extern double __cos32 (double __x, double __res, double __res1); extern double __mpsin (double __x, double __dx, bool __range_reduce); extern double __mpcos (double __x, double __dx, bool __range_reduce); -extern double __slowexp (double __x); extern void __docos (double __x, double __dx, double __v[]); #ifndef math_opt_barrier |