#include #include double x[5] = {1.0, 2.0, 3.0, 4.0, 4.0}; double y[5] = {1.0, 2.0, 3.0, 4.0, 4.0}; void foo(void) { __m128d x01 = _mm_load_pd(x+1); __m128d x23 = _mm_load_pd(x+3); __m128d y01 = _mm_load_pd(y+1); __m128d y23 = _mm_load_pd(y+3); y01 = _mm_add_pd(x01, y01); y23 = _mm_add_pd(x23, y23); _mm_store_pd(y+1, y01); _mm_store_pd(y+3, y23); } int main() { foo(); printf("y = (%lf, %lf, %lf, %lf)\n", y[0], y[1], y[2], y[3], y[4]); }