diff options
Diffstat (limited to 'libm/e_atan2.c')
-rw-r--r-- | libm/e_atan2.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libm/e_atan2.c b/libm/e_atan2.c index 71c916d52..65f29240e 100644 --- a/libm/e_atan2.c +++ b/libm/e_atan2.c @@ -114,3 +114,21 @@ double attribute_hidden __ieee754_atan2(double y, double x) return (z-pi_lo)-pi;/* atan(-,-) */ } } + +/* + * wrapper atan2(y,x) + */ +#ifndef _IEEE_LIBM +double atan2(double y, double x) +{ + double z = __ieee754_atan2(y,x); + if (_LIB_VERSION == _IEEE_ || isnan(x) || isnan(y)) + return z; + if (x == 0.0 && y == 0.0) + return __kernel_standard(y,x,3); /* atan2(+-0,+-0) */ + return z; +} +#else +strong_alias(__ieee754_atan2, atan2) +#endif +libm_hidden_def(atan2) |