about summary refs log tree commit diff
path: root/sysdeps/x86_64/fpu/multiarch/s_atan.c
blob: 57b5c65f67f058dd0f448c4f54ab2432e14bda77 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#if defined HAVE_FMA4_SUPPORT || defined HAVE_AVX_SUPPORT
# include <init-arch.h>
# include <math.h>

extern double __atan_sse2 (double);
extern double __atan_avx (double);
# ifdef HAVE_FMA4_SUPPORT
extern double __atan_fma4 (double);
# else
#  undef HAS_ARCH_FEATURE
#  define HAS_ARCH_FEATURE(feature) 0
#  define __atan_fma4 ((void *) 0)
# endif

libm_ifunc (atan, (HAS_ARCH_FEATURE (FMA4_Usable) ? __atan_fma4 :
		   HAS_ARCH_FEATURE (AVX_Usable)
		   ? __atan_avx : __atan_sse2));

# define atan __atan_sse2
#endif


#include <sysdeps/ieee754/dbl-64/s_atan.c>