Jemand
public text v1 · immutableinline void muladd_fmatrix_fvector(float to[3], float matrix[3][4], float from[3]) {
__m128 v1, v2, v3, v4;
v1 = _mm_load_ps(&matrix[0]);
v2 = _mm_load_ps(&matrix[1]);
v3 = _mm_load_ps(&matrix[2]);
v4 = _mm_load_ps(from);
// stuff
v1 = _mm_mul_ps(v1, v4);
v2 = _mm_mul_ps(v2, v4);
v3 = _mm_mul_ps(v3, v4);
v1 = _mm_hadd_ps(v1, v2);
v3 = _mm_hadd_ps(v3, _mm_setzero_ps());
v1 = _mm_hadd_ps(v1, v3);
v4 = _mm_load_ps(to);
v4 = _mm_add_ps(v4,v1);
_mm_store_ps(to, v4);
}