IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
IsEqualRegImpl.h
Go to the documentation of this file.
1 // IsEqualRegDecl.h:
3 // -------------------
4 //
14 
15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_COMPARISON_DETAIL_STD_ISEQUALREGIMPL_H__
16 #define __IPSDKUTIL_INSTRUCTIONSET_COMPARISON_DETAIL_STD_ISEQUALREGIMPL_H__
17 
22 
23 namespace ipsdk {
24 namespace simd {
25 namespace detail {
26 
29 
30 template <typename T>
31 typename RegMaskType<eInstructionSet::eIS_Standard, T>::Type
32 IsEqualReg<eInstructionSet::eIS_Standard, T>::act(
33  const T& in1,
34  const T& in2)
35 {
36  return in1 == in2 ? detail::AllBitsToOneReg<eInstructionSet::eIS_Standard, T>::act() : 0;
37 }
38 
39 template <typename T>
40 void
41 IsEqualReg<eInstructionSet::eIS_Standard, T>::act(
42  const T& in1,
43  const T& in2,
44  typename RegMaskType<eInstructionSet::eIS_Standard, T>::Type& out)
45 {
46  out = (in1 == in2 ? detail::AllBitsToOneReg<eInstructionSet::eIS_Standard, T>::act() : 0);
47 }
48 
51 
52 } // end of namespace detail
53 } // end of namespace simd
54 } // end of namespace ipsdk
55 
56 #endif // __IPSDKUTIL_INSTRUCTIONSET_COMPARISON_DETAIL_STD_ISEQUALREGIMPL_H__
Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
IsEqualReg<eInstructionSet::domain instructionSet, typename T, typename Enable=void> structure...
Definition of import/export macro for library.