35 #ifndef _BLAZE_MATH_TYPETRAITS_HASSIMDDIV_H_ 36 #define _BLAZE_MATH_TYPETRAITS_HASSIMDDIV_H_ 69 struct HasSIMDDivHelper
78 template<
typename T1,
typename T2 >
80 IsSigned_v<T1> && IsNumeric_v<T2> &&
81 IsIntegral_v<T2> && IsSigned_v<T2> &&
82 sizeof(T1) ==
sizeof(T2) > >
89 template<
typename T >
90 struct HasSIMDDivHelper< complex<T>, T,
EnableIf_t<
IsNumeric_v<T> && IsIntegral_v<T> && IsSigned_v<T> > >
103 struct HasSIMDDivHelper< float, float >
105 bool( BLAZE_AVX_MODE ) ||
106 bool( BLAZE_MIC_MODE ) ||
107 bool( BLAZE_AVX512F_MODE ) >
116 struct HasSIMDDivHelper< double, double >
118 bool( BLAZE_AVX_MODE ) ||
119 bool( BLAZE_MIC_MODE ) ||
120 bool( BLAZE_AVX512F_MODE ) >
147 template<
typename T1
151 :
public BoolConstant< HasSIMDDivHelper< RemoveCVRef_t<T1>, RemoveCVRef_t<T2> >::value >
169 template<
typename T1
BoolConstant< false > FalseType
Type/value traits base class.The FalseType class is used as base class for type traits and value trai...
Definition: IntegralConstant.h:121
#define BLAZE_AVX512F_MODE
Compilation switch for the AVX512F mode.This compilation switch enables/disables the AVX512F mode....
Definition: Vectorization.h:246
Generic wrapper for a compile time constant integral value.The IntegralConstant class template repres...
Definition: IntegralConstant.h:72
#define BLAZE_MIC_MODE
Compilation switch for the MIC mode.This compilation switch enables/disables the MIC mode....
Definition: Vectorization.h:299
#define BLAZE_AVX512BW_MODE
Compilation switch for the AVX512BW mode.This compilation switch enables/disables the AVX512BW mode....
Definition: Vectorization.h:264
Header file for the RemoveCVRef type trait.
Header file for the IsIntegral type trait.
typename EnableIf< Condition, T >::Type EnableIf_t
Auxiliary type for the EnableIf class template.The EnableIf_t alias declaration provides a convenient...
Definition: EnableIf.h:138
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
constexpr bool IsNumeric_v
Auxiliary variable template for the IsNumeric type trait.The IsNumeric_v variable template provides a...
Definition: IsNumeric.h:143
Availability of a SIMD division for the given data types.Depending on the available instruction set (...
Definition: HasSIMDDiv.h:150
constexpr bool HasSIMDDiv_v
Auxiliary variable template for the HasSIMDDiv type trait.The HasSIMDDiv_v variable template provides...
Definition: HasSIMDDiv.h:171
Header file for the EnableIf class template.
Header file for the IsNumeric type trait.
IntegralConstant< bool, B > BoolConstant
Generic wrapper for a compile time constant boolean value.The BoolConstant alias template represents ...
Definition: IntegralConstant.h:110
Header file for the IsSigned type trait.
#define BLAZE_SVML_MODE
Compilation switch for the SVML mode.This compilation switch enables/disables the SVML mode....
Definition: Vectorization.h:349
Header file for the IntegralConstant class template.
System settings for the SSE mode.
Header file for the complex data type.