fabs with SSE
-
How to encode fabs with SSE assuming 4 floating points are already in __m128 register? It is better to use SSE2 or 3 but alternatives for latest SSE will be also acknowledged
9ine
-
How to encode fabs with SSE assuming 4 floating points are already in __m128 register? It is better to use SSE2 or 3 but alternatives for latest SSE will be also acknowledged
9ine
Resetting sign bit;
__declspec(align(16)) float arrFlt[4] = { -10.0, -20.0, -0.0, -3.0 };
__declspec(align(16)) int mask[4] = { 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff };_asm lea eax, arrFlt
_asm movaps xmm0, xmmword ptr [eax]
_asm andps xmm0, xmmword ptr mask
_asm movaps xmmword ptr [eax], xmm0Or with intrinsics;
_mm_store_ps(arrFlt, _mm_and_ps(_mm_load_ps(arrFlt), _mm_load_ps((float*)mask)));