14 #ifndef __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_DETAIL_ALLBITSTOZEROREG_H__ 15 #define __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_DETAIL_ALLBITSTOZEROREG_H__ 30 template <eInstructionSet::domain IS,
typename T,
typename Enable=
void>
35 #define IMPLEMENT_ALLBITSTOZEROREG_INT(type) \ 36 template <eInstructionSet::domain IS> \ 37 struct AllBitsToZeroReg<IS, type> \ 39 static IPSDK_FORCEINLINE \ 40 typename RegType<IS, type>::Type \ 43 return AssignReg<IS, ipUInt8>::act(0x0); \ 47 IMPLEMENT_ALLBITSTOZEROREG_INT(
ipInt8)
48 IMPLEMENT_ALLBITSTOZEROREG_INT(
ipUInt8)
49 IMPLEMENT_ALLBITSTOZEROREG_INT(
ipInt16)
50 IMPLEMENT_ALLBITSTOZEROREG_INT(
ipUInt16)
51 IMPLEMENT_ALLBITSTOZEROREG_INT(
ipInt32)
52 IMPLEMENT_ALLBITSTOZEROREG_INT(
ipUInt32)
53 IMPLEMENT_ALLBITSTOZEROREG_INT(
ipInt64)
54 IMPLEMENT_ALLBITSTOZEROREG_INT(
ipUInt64)
72 template <eInstructionSet::domain IS>
76 static IPSDK_FORCEINLINE
86 template <eInstructionSet::domain IS>
89 static IPSDK_FORCEINLINE
105 #endif // __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_DETAIL_ALLBITSTOZEROREG_H__ int8_t ipInt8
Base types definition.
Definition: BaseTypes.h:48
Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
double ipReal64
Base types definition.
Definition: BaseTypes.h:57
int32_t ipInt32
Base types definition.
Definition: BaseTypes.h:52
int16_t ipInt16
Base types definition.
Definition: BaseTypes.h:50
uint8_t ipUInt8
Base types definition.
Definition: BaseTypes.h:49
Definition of import/export macro for library.
Definition: AllBitsToZeroReg.h:31
Definition: BitwiseCastReg.h:29
int64_t ipInt64
Base types definition.
Definition: BaseTypes.h:54
uint16_t ipUInt16
Base types definition.
Definition: BaseTypes.h:51
Definition: AssignRegDecl.h:31
float ipReal32
Base types definition.
Definition: BaseTypes.h:56
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53