15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_SSE2_SCANREG_H__ 16 #define __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_SSE2_SCANREG_H__ 19 #include <IPSDKUtil/InstructionSet/Arithmetic/detail/ScanReg.h> 30 static IPSDK_FORCEINLINE
39 static IPSDK_FORCEINLINE
44 out = _mm_add_ps(in, _mm_castsi128_ps(_mm_slli_si128(_mm_castps_si128(in), 4)));
45 out = _mm_add_ps(out, _mm_shuffle_ps(_mm_setzero_ps(), out, 0x40));
52 static IPSDK_FORCEINLINE
61 static IPSDK_FORCEINLINE
66 out = _mm_add_pd(in, _mm_castsi128_pd(_mm_slli_si128(_mm_castpd_si128(in), 8)));
76 #endif // __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_SSE2_SCANREG_H__ Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
template structure which is specialized to implement the cumulative sum on 2 registers, depending on the used instructionSet and on the types of the buffers loaded in the registers
Definition: ScanReg.h:36
double ipReal64
Base types definition.
Definition: BaseTypes.h:57
eInstructionSet
Enumerate for processor instruction set description.
Definition: InstructionSetTypes.h:31
Predefined types for Sse2 instruction set management.
Definition of import/export macro for library.
Streaming SIMD Extensions 2.
Definition: InstructionSetTypes.h:36
structure used to retrieve SSE2 type associated to a base type
Definition: Sse2Types.h:32
float ipReal32
Base types definition.
Definition: BaseTypes.h:56