Store Operations for Streaming SIMD Extensions

See summary table in Summary of Memory and Initialization topic.

The prototypes for Streaming SIMD Extensions (SSE) intrinsics are in the xmmintrin.h header file.

void _mm_store_ss(float * p, __m128 a)

Stores the lower SP FP value.
*p := a0

void _mm_store_ps1(float * p, __m128 a )

Stores the lower SP FP value across four words.
p[0] := a0
p[1] := a0
p[2] := a0
p[3] := a0

void _mm_store_ps(float *p, __m128 a)

Stores four SP FP values. The address must be 16-byte-aligned.
p[0] := a0
p[1] := a1
p[2] := a2
p[3] := a3

void _mm_storeu_ps(float *p, __m128 a)

Stores four SP FP values. The address need not be 16-byte-aligned.
p[0] := a0
p[1] := a1
p[2] := a2
p[3] := a3

void _mm_storer_ps(float * p, __m128 a )

Stores four SP FP values in reverse order. The address must be 16-byte-aligned.
p[0] := a3
p[1] := a2
p[2] := a1
p[3] := a0

__m128 _mm_move_ss( __m128 a, __m128 b)

Sets the low word to the SP FP value of b. The upper 3 SP FP values are passed through from a.
r0 := b0
r1 := a1
r2 := a2
r3 := a3