freebsd-dev/lib/msun
Steve Kargl dce5f3abed [LIBM] implementations of sinpi[fl], cospi[fl], and tanpi[fl]
Both IEEE-754 2008 and ISO/IEC TS 18661-4 define the half-cycle
trignometric functions cospi, sinpi, and tanpi.  The attached
patch implements cospi[fl], sinpi[fl], and tanpi[fl].  Limited
testing on the cospi and sinpi reveal a max ULP less than 0.89;
while tanpi is more problematic with a max ULP less than 2.01
in the interval [0,0.5].  The algorithms used in these functions
are documented in {ks}_cospi.c, {ks}_sinpi.c, and s_tanpi.c.

Note.  I no longer have access to a system with ld128 and
adequate support to compile and test the ld128 implementations
of these functions.  Given the almost complete lack of input from
others on improvements to libm, I doubt that anyone cares.  If
someone does care, the ld128 files contain a number of FIXME comments,
and in particular, while the polynomial coefficients are given
I did not update the polynomial algorithms to properly use the
coefficients.

PR:	218514
MFC after:	2 weeks
2021-10-26 02:50:20 +03:00
..
aarch64 Save all fpcr/fpsr bits in the AArch64 fenv_t 2021-03-12 17:01:41 +00:00
amd64 libm: Add missing END() directives for amd64 routines 2019-10-23 16:05:52 +00:00
arm lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
bsdsrc msun: drop clause 3 from the Berkeley license. 2019-12-27 01:11:26 +00:00
i387 Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
ld80 [LIBM] implementations of sinpi[fl], cospi[fl], and tanpi[fl] 2021-10-26 02:50:20 +03:00
ld128 [LIBM] implementations of sinpi[fl], cospi[fl], and tanpi[fl] 2021-10-26 02:50:20 +03:00
man [LIBM] implementations of sinpi[fl], cospi[fl], and tanpi[fl] 2021-10-26 02:50:20 +03:00
mips lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
powerpc Set default SPE FP environment 2021-05-29 21:53:35 -05:00
riscv RISC-V: Fix feenableexcept return value 2021-03-25 11:16:20 +00:00
src [LIBM] implementations of sinpi[fl], cospi[fl], and tanpi[fl] 2021-10-26 02:50:20 +03:00
tests Fix failures in libm's lround_test after clang 12 import 2021-06-22 18:38:45 +02:00
x86 Resolve conflicts between macros in fenv.h and ieeefp.h 2018-05-31 20:22:47 +00:00
Makefile [LIBM] implementations of sinpi[fl], cospi[fl], and tanpi[fl] 2021-10-26 02:50:20 +03:00
Makefile.depend Update Makefile.depend files 2019-12-11 17:37:53 +00:00
Symbol.map [LIBM] implementations of sinpi[fl], cospi[fl], and tanpi[fl] 2021-10-26 02:50:20 +03:00