HWMatrix Struct Reference
#include <SSE.h>
This class represents a four by four matrix stored in the SSE registers.
Definition at line 265 of file SSE.h.
Definition at line 268 of file SSE.h.
270 r0 = _mm_loadu_ps( &m.
_11 );
271 r1 = _mm_loadu_ps( &m.
_21 );
272 r2 = _mm_loadu_ps( &m.
_31 );
273 r3 = _mm_loadu_ps( &m.
_41 );
Definition at line 275 of file SSE.h.
277 r0 = _mm_shuffle_ps( r0, r0, _MM_SHUFFLE(0, 1, 2, 3) );
278 r1 = _mm_shuffle_ps( r1, r1, _MM_SHUFFLE(0, 1, 2, 3) );
279 r2 = _mm_shuffle_ps( r2, r2, _MM_SHUFFLE(0, 1, 2, 3) );
280 r3 = _mm_shuffle_ps( r3, r3, _MM_SHUFFLE(0, 1, 2, 3) );
Definition at line 282 of file SSE.h.
289 __m128
v0 = _mm_shuffle_ps( v.v, v.v, _MM_SHUFFLE(3,3,3,3) );
290 __m128
v1 = _mm_shuffle_ps( v.v, v.v, _MM_SHUFFLE(2,2,2,2) );
291 __m128
v2 = _mm_shuffle_ps( v.v, v.v, _MM_SHUFFLE(1,1,1,1) );
292 __m128
v3 = _mm_load_ps(
c );
294 __m128 a0 = _mm_mul_ps( v0, r0 );
295 __m128 a1 = _mm_mul_ps( v1, r1 );
296 __m128 a2 = _mm_mul_ps( v2, r2 );
297 __m128 a3 = _mm_mul_ps( v3, r3 );
299 __m128
r = _mm_add_ps( a0, _mm_add_ps( a1, _mm_add_ps( a2, a3 ) ) );
GLdouble GLdouble GLdouble r
This class represents a four dimensional vector stored in the SSE registers.
GLfloat GLfloat GLfloat v2
MB_SSE_ALIGN16_VAR(__m128 r0)
GLubyte GLubyte GLubyte GLubyte w
GLfloat GLfloat GLfloat GLfloat v3
Definition at line 305 of file SSE.h.
309 __m128
v0 = _mm_shuffle_ps( v.v, v.v, _MM_SHUFFLE(3,3,3,3) );
310 __m128
v1 = _mm_shuffle_ps( v.v, v.v, _MM_SHUFFLE(2,2,2,2) );
311 __m128
v2 = _mm_shuffle_ps( v.v, v.v, _MM_SHUFFLE(1,1,1,1) );
312 __m128
v3 = _mm_load_ps(
c );
314 __m128 a0 = _mm_mul_ps( v0, r0 );
315 __m128 a1 = _mm_mul_ps( v1, r1 );
316 __m128 a2 = _mm_mul_ps( v2, r2 );
317 __m128 a3 = _mm_mul_ps( v3, r3 );
319 __m128
r = _mm_add_ps( a0, _mm_add_ps( a1, _mm_add_ps( a2, a3 ) ) );
320 __m128 d = _mm_shuffle_ps( r, r, _MM_SHUFFLE(3,3,3,3) );
323 z.v = _mm_div_ps( r, d );
GLdouble GLdouble GLdouble r
This class represents a four dimensional vector stored in the SSE registers.
GLfloat GLfloat GLfloat v2
MB_SSE_ALIGN16_VAR(__m128 r0)
GLfloat GLfloat GLfloat GLfloat v3
MB_SSE_ALIGN16_VAR |
( |
__m128 |
r0 | ) |
|
MB_SSE_ALIGN16_VAR |
( |
__m128 |
r1 | ) |
|
MB_SSE_ALIGN16_VAR |
( |
__m128 |
r2 | ) |
|
MB_SSE_ALIGN16_VAR |
( |
__m128 |
r3 | ) |
|
The documentation for this struct was generated from the following file: