15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_COMMON_ISODDREG_H__ 16 #define __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_COMMON_ISODDREG_H__ 21 #include <IPSDKUtil/InstructionSet/Arithmetic/detail/FloorReg.h> 29 #include <boost/type_traits/is_integral.hpp> 39 template <eInstructionSet::domain IS,
typename T>
40 struct IsOddReg<IS, T, typename
boost::enable_if<typename boost::is_integral<T>::type>::type>
42 static IPSDK_FORCEINLINE
51 static IPSDK_FORCEINLINE
58 Reg one, inAndOne, zero;
66 template <eInstructionSet::domain IS>
69 static IPSDK_FORCEINLINE
78 static IPSDK_FORCEINLINE
85 Reg one, inMinusOne, halfOne, halfInMinusOne, halfInMinusOneFloor;
102 #endif // __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_SSE2_ISODDREG_H__ Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Definition: IsEqualRegDecl.h:35
IsEqualReg<eInstructionSet::domain instructionSet, typename T, typename Enable=void> structure...
template structure which is specialized to implement the computation of value rounded to closest even...
Definition: FloorReg.h:36
Definition: DataItemNodeHdrMacrosDetails.h:48
Definition of import/export macro for library.
Definition: IsNotEqualRegDecl.h:30
Definition: RegMaskType.h:29
Definition: BitwiseAndReg.h:30
Definition: AssignRegDecl.h:31
float ipReal32
Base types definition.
Definition: BaseTypes.h:56
template structure which is specialized to implement the isOdd function
Definition: IsOddReg.h:35