35 #ifndef _BLAZE_MATH_FUNCTORS_SHIFTRI_H_ 36 #define _BLAZE_MATH_FUNCTORS_SHIFTRI_H_ 94 template<
typename T >
106 template<
typename T >
107 static constexpr
bool simdEnabled() {
return HasSIMDShiftRI_v<T>; }
124 template<
typename T >
150 template<
typename T >
168 template<
typename MT >
169 struct YieldsSymmetric<ShiftRI,MT>
186 template<
typename MT >
187 struct YieldsLower<ShiftRI,MT>
204 template<
typename MT >
205 struct YieldsStrictlyLower<ShiftRI,MT>
206 :
public IsStrictlyLower<MT>
222 template<
typename MT >
223 struct YieldsUpper<ShiftRI,MT>
240 template<
typename MT >
241 struct YieldsStrictlyUpper<ShiftRI,MT>
242 :
public IsStrictlyUpper<MT>
258 template<
typename T >
259 struct YieldsZero<ShiftRI,T>
decltype(auto) BLAZE_ALWAYS_INLINE load(const T &a) const
Returns the result of the uniform right-shift operation for the given SIMD vector.
Definition: ShiftRI.h:125
Header file for the YieldsStrictlyLower type trait.
Header file for the YieldsZero type trait.
int count_
The number of bits to shift.
Definition: ShiftRI.h:134
Header file for the SIMD right-shift functionality.
#define BLAZE_CONSTRAINT_MUST_BE_SIMD_PACK(T)
Constraint on the data type.In case the given data type T is not a SIMD pack, a compilation error is ...
Definition: SIMDPack.h:60
ShiftRI(int count)
Constructor of the ShiftRI functor.
Definition: ShiftRI.h:83
Header file for the IsStrictlyUpper type trait.
Header file for the IsSymmetric type trait.
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
#define BLAZE_ALWAYS_INLINE
Platform dependent setup of an enforced inline keyword.
Definition: Inline.h:85
Header file for the YieldsStrictlyUpper type trait.
Header file for the IsLower type trait.
Constraint on the data type.
static constexpr bool simdEnabled()
Returns whether SIMD is enabled for the specified data type T.
Definition: ShiftRI.h:107
Header file for the IsStrictlyLower type trait.
Header file for the HasSIMDShiftRI type trait.
Header file for the YieldsSymmetric type trait.
static constexpr bool paddingEnabled()
Returns whether the operation supports padding, i.e. whether it can deal with zeros.
Definition: ShiftRI.h:115
Header file for the YieldsUpper type trait.
Header file for the IsZero type trait.
Header file for the YieldsLower 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 IsUpper type trait.
System settings for the inline keywords.
Generic wrapper for the uniform right-shift operation.
Definition: ShiftRI.h:75