35#ifndef _BLAZE_MATH_SIMD_ATAN_H_
36#define _BLAZE_MATH_SIMD_ATAN_H_
71# if ( BLAZE_AVX512F_MODE || BLAZE_MIC_MODE )
73 return _mm512_atan_ps( (*a).eval().value );
77 return _mm256_atan_ps( (*a).eval().value );
81 return _mm_atan_ps( (*a).eval().value );
85# if ( BLAZE_AVX512F_MODE || BLAZE_MIC_MODE )
87 return Sleef_atanf16_u10( (*a).eval().value );
91 return Sleef_atanf8_u10( (*a).eval().value );
95 return Sleef_atanf4_u10( (*a).eval().value );
125template<
typename T >
128# if ( BLAZE_AVX512F_MODE || BLAZE_MIC_MODE )
130 return _mm512_atan_pd( (*a).eval().value );
134 return _mm256_atan_pd( (*a).eval().value );
138 return _mm_atan_pd( (*a).eval().value );
141#elif BLAZE_SLEEF_MODE
142# if ( BLAZE_AVX512F_MODE || BLAZE_MIC_MODE )
144 return Sleef_atand8_u10( (*a).eval().value );
148 return Sleef_atand4_u10( (*a).eval().value );
152 return Sleef_atand2_u10( (*a).eval().value );
155#elif BLAZE_XSIMD_MODE
Header file for the basic SIMD types.
SIMD type for 64-bit double precision floating point data values.
SIMD type for 32-bit single precision floating point data values.
MT::ElementType * data(DenseMatrix< MT, SO > &dm) noexcept
Low-level data access to the dense matrix elements.
Definition: DenseMatrix.h:182
BLAZE_ALWAYS_INLINE const SIMDdouble atan(const SIMDf64< T > &a) noexcept=delete
Inverse tangent of a vector of double precision floating point values.
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
System settings for the inline keywords.
System settings for the SSE mode.