2011-10-26 01:34:55 +00:00
|
|
|
#if defined HAVE_FMA4_SUPPORT || defined HAVE_AVX_SUPPORT
|
2011-10-25 00:19:17 +00:00
|
|
|
# include <init-arch.h>
|
|
|
|
# include <math.h>
|
|
|
|
|
|
|
|
extern double __atan_sse2 (double);
|
2011-10-26 01:34:55 +00:00
|
|
|
extern double __atan_avx (double);
|
|
|
|
# ifdef HAVE_FMA4_SUPPORT
|
2011-10-25 00:19:17 +00:00
|
|
|
extern double __atan_fma4 (double);
|
2011-10-26 01:34:55 +00:00
|
|
|
# else
|
2015-08-13 10:38:47 +00:00
|
|
|
# undef HAS_ARCH_FEATURE
|
|
|
|
# define HAS_ARCH_FEATURE(feature) 0
|
2011-10-26 01:34:55 +00:00
|
|
|
# define __atan_fma4 ((void *) 0)
|
|
|
|
# endif
|
2011-10-25 00:19:17 +00:00
|
|
|
|
2015-08-13 10:38:47 +00:00
|
|
|
libm_ifunc (atan, (HAS_ARCH_FEATURE (FMA4_Usable) ? __atan_fma4 :
|
|
|
|
HAS_ARCH_FEATURE (AVX_Usable)
|
|
|
|
? __atan_avx : __atan_sse2));
|
2011-10-25 00:19:17 +00:00
|
|
|
|
|
|
|
# define atan __atan_sse2
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#include <sysdeps/ieee754/dbl-64/s_atan.c>
|