15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_REDUCTION_DETAIL_AVX512_MINPACK_H__ 16 #define __IPSDKUTIL_INSTRUCTIONSET_REDUCTION_DETAIL_AVX512_MINPACK_H__ 34 typename boost::enable_if_c<sizeof(T) == 1>::type>
36 static IPSDK_FORCEINLINE
42 cast<eInstructionSet::eIS_Avx512>(in, inUpper);
51 typename boost::enable_if_c<sizeof(T) == 2>::type>
53 static IPSDK_FORCEINLINE
59 cast<eInstructionSet::eIS_Avx512>(in, inUpper);
68 typename boost::enable_if_c<sizeof(T) == 4>::type>
70 static IPSDK_FORCEINLINE
76 in._val[0], in._val[1]);
91 typename boost::enable_if_c<sizeof(T) == 8>::type>
93 static IPSDK_FORCEINLINE
99 res = MinR::act(res, in._val[2]);
100 res = MinR::act(res, in._val[3]);
101 res = MinR::act(res, in._val[4]);
102 res = MinR::act(res, in._val[5]);
103 res = MinR::act(res, in._val[6]);
104 res = MinR::act(res, in._val[7]);
119 #endif // __IPSDKUTIL_INSTRUCTIONSET_REDUCTION_DETAIL_AVX512_MINREGIMPL_H__ Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Definition: MinRegDecl.h:29
cast function; casts a Pack<instructionSet, TIn> to a Pack<instructionSet, TOut>
(including fundation and byte and word instructions)
Definition: InstructionSetTypes.h:51
eInstructionSet
Enumerate for processor instruction set description.
Definition: InstructionSetTypes.h:31
template structure UpperType<typename T>; its typedef Type gives the type just upper to T...
Definition: UpperType.h:42
structure MinPack<eInstructionSet::domain instructionSet, typename T, typename Enable=void> ...
Definition: MinPack.h:41
Definition of import/export macro for library.
Definition: BasePack.h:37
structure used to retrieve AVX512 type associated to a base type
Definition: Avx512Types.h:36
structure containing intrinsic registers used to store vectorized data
Definition: BasePackDecl.h:29