Optimization for tiny x in cos and sin
authorgnezdo <gnezdo@openbsd.org>
Fri, 21 Jan 2022 03:13:10 +0000 (03:13 +0000)
committergnezdo <gnezdo@openbsd.org>
Fri, 21 Jan 2022 03:13:10 +0000 (03:13 +0000)
commit735ddf26403efe5d8df41bd53f9c1edec0b627b3
tree7939bcba2e625674799e562b2218a608a00376fd
parent437d32d54743ac3cde581a4696af825c0c68503a
Optimization for tiny x in cos and sin

Subset of FreeBSD commit 4339c67c485f0b1f7699863fc29f6c06862d1dde:
Moved the optimization for tiny x from __kernel_{cos,sin}[f](x) to
{cos_sin}[f](x) so that x doesn't need to be reclassified in the
"kernel" functions to determine if it is tiny (it still needs to be
reclassified in the cosine case for other reasons that will go away).
...

Parts of the original change were applied separately before.

Suggested by kettenis@

OK mbuhl@, tested by mbuhl@ and phessler@
lib/libm/src/k_cosf.c
lib/libm/src/k_sin.c
lib/libm/src/k_sinf.c
lib/libm/src/s_cosf.c
lib/libm/src/s_sin.c
lib/libm/src/s_sinf.c