35 #ifndef _BLAZE_MATH_SIMD_SIN_H_
36 #define _BLAZE_MATH_SIMD_SIN_H_
65 template<
typename T >
67 #if BLAZE_SVML_MODE && BLAZE_MIC_MODE
69 return _mm512_sin_ps( (~a).
eval().value );
71 #elif BLAZE_SVML_MODE && BLAZE_AVX_MODE
73 return _mm256_sin_ps( (~a).
eval().value );
75 #elif BLAZE_SVML_MODE && BLAZE_SSE_MODE
77 return _mm_sin_ps( (~a).
eval().value );
102 template<
typename T >
104 #if BLAZE_SVML_MODE && BLAZE_MIC_MODE
106 return _mm512_sin_pd( (~a).
eval().value );
108 #elif BLAZE_SVML_MODE && BLAZE_AVX_MODE
110 return _mm256_sin_pd( (~a).
eval().value );
112 #elif BLAZE_SVML_MODE && BLAZE_SSE_MODE
114 return _mm_sin_pd( (~a).
eval().value );
const DMatForEachExpr< MT, Sin, SO > sin(const DenseMatrix< MT, SO > &dm)
Computes the sine for each single element of the dense matrix dm.
Definition: DMatForEachExpr.h:1557
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
Header file for the basic SIMD types.
const DMatEvalExpr< MT, SO > eval(const DenseMatrix< MT, SO > &dm)
Forces the evaluation of the given dense matrix expression dm.
Definition: DMatEvalExpr.h:705
System settings for the SSE mode.
System settings for the inline keywords.