diff options
author | Andreas Schwab <schwab@suse.de> | 2022-05-31 13:09:38 +0200 |
---|---|---|
committer | Andreas Schwab <schwab@suse.de> | 2022-06-01 10:29:52 +0200 |
commit | dc1e5eeb25c4bcb1cc0c883a2d67cf93eb252478 (patch) | |
tree | 4064d9da2fa13bcacbf498fe6de9709bfbd754a7 /sysdeps/ieee754 | |
parent | d976d44a89ab0e4e8bd077f7063030e2e04975aa (diff) | |
download | glibc-dc1e5eeb25c4bcb1cc0c883a2d67cf93eb252478.tar glibc-dc1e5eeb25c4bcb1cc0c883a2d67cf93eb252478.tar.gz glibc-dc1e5eeb25c4bcb1cc0c883a2d67cf93eb252478.tar.bz2 glibc-dc1e5eeb25c4bcb1cc0c883a2d67cf93eb252478.zip |
x86_64: Optimize sincos where sin/cos is optimized (bug 29193)
The compiler may substitute calls to sin or cos with calls to sincos, thus
we should have the same optimized implementations for sincos. The
optimized implementations may produce results that differ, that also makes
sure that the sincos call aggrees with the sin and cos calls.
Diffstat (limited to 'sysdeps/ieee754')
-rw-r--r-- | sysdeps/ieee754/dbl-64/s_sincos.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sysdeps/ieee754/dbl-64/s_sincos.c b/sysdeps/ieee754/dbl-64/s_sincos.c index 12c3021e66..890c137ebb 100644 --- a/sysdeps/ieee754/dbl-64/s_sincos.c +++ b/sysdeps/ieee754/dbl-64/s_sincos.c @@ -24,10 +24,15 @@ #include <math-underflow.h> #include <libm-alias-double.h> +#ifndef SECTION +# define SECTION +#endif + #define IN_SINCOS #include "s_sin.c" void +SECTION __sincos (double x, double *sinx, double *cosx) { mynumber u; @@ -100,4 +105,6 @@ __sincos (double x, double *sinx, double *cosx) *sinx = *cosx = x / x; } +#ifndef __sincos libm_alias_double (__sincos, sincos) +#endif |