Lines Matching refs:__m128

18 void print(__m128 v)
23 printf("__m128: %f %f %f %f\n", result[0], result[1], result[2], result[3]);
42 GLM_FUNC_QUALIFIER fquatSIMD::fquatSIMD(__m128 const & Data) :
123 __m128 mul0 = _mm_mul_ps(q1.Data, _mm_shuffle_ps(q2.Data, q2.Data, _MM_SHUFFLE(0, 1, 2, 3)));
124 __m128 mul1 = _mm_mul_ps(q1.Data, _mm_shuffle_ps(q2.Data, q2.Data, _MM_SHUFFLE(1, 0, 3, 2)));
125 __m128 mul2 = _mm_mul_ps(q1.Data, _mm_shuffle_ps(q2.Data, q2.Data, _MM_SHUFFLE(2, 3, 0, 1)));
126 __m128 mul3 = _mm_mul_ps(q1.Data, q2.Data);
129 __m128 add0 = _mm_dp_ps(mul0, _mm_set_ps(1.0f, -1.0f, 1.0f, 1.0f), 0xff);
130 __m128 add1 = _mm_dp_ps(mul1, _mm_set_ps(1.0f, 1.0f, 1.0f, -1.0f), 0xff);
131 __m128 add2 = _mm_dp_ps(mul2, _mm_set_ps(1.0f, 1.0f, -1.0f, 1.0f), 0xff);
132 __m128 add3 = _mm_dp_ps(mul3, _mm_set_ps(1.0f, -1.0f, -1.0f, -1.0f), 0xff);
135 __m128 add0 = _mm_add_ps(mul0, _mm_movehl_ps(mul0, mul0));
139 __m128 add1 = _mm_add_ps(mul1, _mm_movehl_ps(mul1, mul1));
143 __m128 add2 = _mm_add_ps(mul2, _mm_movehl_ps(mul2, mul2));
147 __m128 add3 = _mm_add_ps(mul3, _mm_movehl_ps(mul3, mul3));
155 //__m128 xxyy = _mm_shuffle_ps(add0, add1, _MM_SHUFFLE(0, 0, 0, 0));
156 //__m128 zzww = _mm_shuffle_ps(add2, add3, _MM_SHUFFLE(0, 0, 0, 0));
175 static const __m128 two = _mm_set1_ps(2.0f);
177 __m128 q_wwww = _mm_shuffle_ps(q.Data, q.Data, _MM_SHUFFLE(3, 3, 3, 3));
178 __m128 q_swp0 = _mm_shuffle_ps(q.Data, q.Data, _MM_SHUFFLE(3, 0, 2, 1));
179 __m128 q_swp1 = _mm_shuffle_ps(q.Data, q.Data, _MM_SHUFFLE(3, 1, 0, 2));
180 __m128 v_swp0 = _mm_shuffle_ps(v.Data, v.Data, _MM_SHUFFLE(3, 0, 2, 1));
181 __m128 v_swp1 = _mm_shuffle_ps(v.Data, v.Data, _MM_SHUFFLE(3, 1, 0, 2));
183 __m128 uv = _mm_sub_ps(_mm_mul_ps(q_swp0, v_swp1), _mm_mul_ps(q_swp1, v_swp0));
184 __m128 uv_swp0 = _mm_shuffle_ps(uv, uv, _MM_SHUFFLE(3, 0, 2, 1));
185 __m128 uv_swp1 = _mm_shuffle_ps(uv, uv, _MM_SHUFFLE(3, 1, 0, 2));
186 __m128 uuv = _mm_sub_ps(_mm_mul_ps(q_swp0, uv_swp1), _mm_mul_ps(q_swp1, uv_swp0));
331 __m128 _wwww = _mm_shuffle_ps(q.Data, q.Data, _MM_SHUFFLE(3, 3, 3, 3));
332 __m128 _xyzw = q.Data;
333 __m128 _zxyw = _mm_shuffle_ps(q.Data, q.Data, _MM_SHUFFLE(3, 1, 0, 2));
334 __m128 _yzxw = _mm_shuffle_ps(q.Data, q.Data, _MM_SHUFFLE(3, 0, 2, 1));
336 __m128 _xyzw2 = _mm_add_ps(_xyzw, _xyzw);
337 __m128 _zxyw2 = _mm_shuffle_ps(_xyzw2, _xyzw2, _MM_SHUFFLE(3, 1, 0, 2));
338 __m128 _yzxw2 = _mm_shuffle_ps(_xyzw2, _xyzw2, _MM_SHUFFLE(3, 0, 2, 1));
340 __m128 _tmp0 = _mm_sub_ps(_mm_set1_ps(1.0f), _mm_mul_ps(_yzxw2, _yzxw));
343 __m128 _tmp1 = _mm_mul_ps(_yzxw2, _xyzw);
346 __m128 _tmp2 = _mm_mul_ps(_zxyw2, _xyzw);
513 __m128 s = glm::fastSin(_mm_set_ps((1.0f - a) * angle, a * angle, angle, 0.0f));
515 __m128 s0 = _mm_shuffle_ps(s, s, _MM_SHUFFLE(3, 3, 3, 3));
516 __m128 s1 = _mm_shuffle_ps(s, s, _MM_SHUFFLE(2, 2, 2, 2));
517 __m128 d = _mm_div_ps(_mm_set1_ps(1.0f), _mm_shuffle_ps(s, s, _MM_SHUFFLE(1, 1, 1, 1)));
549 __m128 s = glm::fastSin(_mm_set_ps((1.0f - a) * angle, a * angle, angle, 0.0f));
551 __m128 s0 = _mm_shuffle_ps(s, s, _MM_SHUFFLE(3, 3, 3, 3));
552 __m128 s1 = _mm_shuffle_ps(s, s, _MM_SHUFFLE(2, 2, 2, 2));
553 __m128 d = _mm_div_ps(_mm_set1_ps(1.0f), _mm_shuffle_ps(s, s, _MM_SHUFFLE(1, 1, 1, 1)));
611 GLM_FUNC_QUALIFIER __m128 fastSin(__m128 x)
613 static const __m128 c0 = _mm_set1_ps(0.16666666666666666666666666666667f);
614 static const __m128 c1 = _mm_set1_ps(0.00833333333333333333333333333333f);
615 static const __m128 c2 = _mm_set1_ps(0.00019841269841269841269841269841f);
617 __m128 x3 = _mm_mul_ps(x, _mm_mul_ps(x, x));
618 __m128 x5 = _mm_mul_ps(x3, _mm_mul_ps(x, x));
619 __m128 x7 = _mm_mul_ps(x5, _mm_mul_ps(x, x));
621 __m128 y0 = _mm_mul_ps(x3, c0);
622 __m128 y1 = _mm_mul_ps(x5, c1);
623 __m128 y2 = _mm_mul_ps(x7, c2);