libm: Sync with FreeBSD (gains 6 long double functions)
authorJohn Marino <draco@marino.st>
Sat, 29 Nov 2014 21:28:11 +0000 (22:28 +0100)
committerJohn Marino <draco@marino.st>
Sat, 29 Nov 2014 23:00:28 +0000 (00:00 +0100)
commit2fedfd5c07f058b632472f2feea2e43949def7d3
tree69e25943a87a53eac42cc2d0a1a4729628ee5b4b
parent1b74c588a56893bcb3307a16a21d82d346f8ba59
libm: Sync with FreeBSD (gains 6 long double functions)

The following functions have been implemented:
  - coshl
  - erfcl
  - erfl
  - lgammal
  - sinhl
  - tanhl

Before these were approximated with the double versions using the
"imprecise" macros.  I've left the old ones in place (unlike FreeBSD)
but with symbol versioning so that libraries built with the earlier
versions can link to them.  In other words, there are two versions of
these 6 functions, Df306.1 and DF402.0.
55 files changed:
lib/libc/Versions.def
lib/libm/Makefile
lib/libm/Symbol.map
lib/libm/ld80/e_lgammal_r.c [new file with mode: 0644]
lib/libm/ld80/k_expl.h [copied from lib/libm/ld80/s_expl.c with 57% similarity]
lib/libm/ld80/s_erfl.c [new file with mode: 0644]
lib/libm/ld80/s_expl.c
lib/libm/man/cosh.3
lib/libm/man/erf.3
lib/libm/man/lgamma.3
lib/libm/man/sinh.3
lib/libm/man/tanh.3
lib/libm/src/catrig.c
lib/libm/src/catrigf.c
lib/libm/src/e_cosh.c
lib/libm/src/e_coshl.c [new file with mode: 0644]
lib/libm/src/e_gamma.c
lib/libm/src/e_lgamma.c
lib/libm/src/e_lgamma_r.c
lib/libm/src/e_lgammaf_r.c
lib/libm/src/e_lgammal.c [copied from lib/libm/src/e_lgamma.c with 56% similarity]
lib/libm/src/e_pow.c
lib/libm/src/e_remainder.c [new file with mode: 0644]
lib/libm/src/e_remainderf.c [new file with mode: 0644]
lib/libm/src/e_remainderl.c [copied from lib/libm/src/imprecise.c with 56% similarity]
lib/libm/src/e_sinh.c
lib/libm/src/e_sinhl.c [new file with mode: 0644]
lib/libm/src/e_sqrt.c [new file with mode: 0644]
lib/libm/src/e_sqrtf.c [new file with mode: 0644]
lib/libm/src/e_sqrtl.c [new file with mode: 0644]
lib/libm/src/fenv-softfloat.h [new file with mode: 0644]
lib/libm/src/imprecise.c
lib/libm/src/math.h
lib/libm/src/s_erf.c
lib/libm/src/s_erff.c
lib/libm/src/s_llrint.c [new file with mode: 0644]
lib/libm/src/s_llrintf.c [new file with mode: 0644]
lib/libm/src/s_llrintl.c [new file with mode: 0644]
lib/libm/src/s_logbl.c [new file with mode: 0644]
lib/libm/src/s_lrint.c [copied from lib/libm/src/imprecise.c with 56% similarity]
lib/libm/src/s_lrintf.c [new file with mode: 0644]
lib/libm/src/s_lrintl.c [new file with mode: 0644]
lib/libm/src/s_remquo.c [new file with mode: 0644]
lib/libm/src/s_remquof.c [new file with mode: 0644]
lib/libm/src/s_remquol.c [new file with mode: 0644]
lib/libm/src/s_rintl.c [new file with mode: 0644]
lib/libm/src/s_round.c
lib/libm/src/s_roundf.c
lib/libm/src/s_roundl.c
lib/libm/src/s_scalbn.c [new file with mode: 0644]
lib/libm/src/s_scalbnf.c [new file with mode: 0644]
lib/libm/src/s_scalbnl.c [new file with mode: 0644]
lib/libm/src/s_tanh.c
lib/libm/src/s_tanhf.c
lib/libm/src/s_tanhl.c [new file with mode: 0644]