[Bug 235413] [LIBM] optizimation for cexp and cexpf
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sat Oct 26 16:33:09 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235413
--- Comment #4 from Steve Kargl <kargl at FreeBSD.org> ---
New commit log for cexpl_new.diff.
* include/complex.h:
. Prototype for cexpl().
* lib/msun/Makefile:
. Add s_cexpl.c to the build.
. Add MLINK for cexpl.3 to cexp.3
* lib/msun/Symbol.map:
. Add a new section for FreeBSD 13 symbols.
. Add cexpl to the symbol table.
* lib/msun/src/math_private.h:
. Change ENTERI() to toggle FPU precision for ld80 long double.
. Introduce LEAVEI() to toggles FPU precision back to double.
. Update RETURNI(x) to use __typeof(x) to set return type, use
LEAVEI(), and use RETURNF(x) for the actual return.
. Add prototype for __ldexp_expl();
* lib/msun/man/cexp.3:
. Document cexpl().
* lib/msun/src/k_exp.c:
* lib/msun/src/k_expf.c:
. Add declarations for c and s, and sort.
. Use sincos[f]() instead of a call to sin[f]() and a call cos[f]().
* lib/msun/src/s_cexp.c:
. Include float.h to get access to LDBL_MANT_DIG.
. Add declarations for c and s, and sort.
. Use sincos() instead of a call to sin() and a call cos().
. Use __weak_reference(cexp, cexpl) on LDBL_MANT_DIG == 53.
* lib/msun/src/s_cexpf.c:
. Add declarations for c and s, and sort.
. Use sincosf() instead of a call to sinf() and a call cosf().
* lib/msun/ld80/k_cexpl.c:
. Implementations of __frexp_expl(), __ldexp_expl(), and __ldexp_cexpl(),
which are computation kernels used by cexpl().
* lib/msun/ld80/k_expl.h:
. Add 'L' suffix to a long double literal constant.
. Fix typo in computation of scale2.
. Use sincosl() instead of a call to sinl() and a call cosl().
* lib/msun/ld80/s_cexpl.c:
. Implementation of cexpl() for ld80 hardware.
* lib/msun/ld128/k_cexpl.c:
. Stub for __frexp_expl(), __ldexp_expl(), and __ldexp_cexpl().
* lib/msun/ld128/k_expl.h:
. Add 'L' suffix to a long double literal constant.
. Fix typo in computation of scale2.
. Use sincosl() instead of a call to sinl() and a call cosl().
* lib/msun/ld128/s_cexpl.c:
. Naive, but better than some might know, implementation of cexpl()
for 113-bit long double hardware.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list