98 __m128d sum1 = _mm_setzero_pd();
99 __m128d sum2 = _mm_setzero_pd();
100 __m128d sum3 = _mm_setzero_pd();
101 __m128d sum4 = _mm_setzero_pd();
117 for(
int i=0; i < n_4spin; i++) {
119 tmp1 = _mm_load_pd(x_p);
120 tmp2 = _mm_load_pd(y_p);
124 tmp3 = _mm_load_pd(x_p+2);
125 tmp4 = _mm_load_pd(y_p+2);
129 tmp5 = _mm_load_pd(x_p+4);
130 tmp6 = _mm_load_pd(y_p+4);
134 tmp7 = _mm_load_pd(x_p+6);
135 tmp8 = _mm_load_pd(y_p+6);
139 tmp1 = _mm_load_pd(x_p+8);
140 tmp2 = _mm_load_pd(y_p+8);
144 tmp3 = _mm_load_pd(x_p+10);
145 tmp4 = _mm_load_pd(y_p+10);
149 tmp5 = _mm_load_pd(x_p+12);
150 tmp6 = _mm_load_pd(y_p+12);
154 tmp7 = _mm_load_pd(x_p+14);
155 tmp8 = _mm_load_pd(y_p+14);
159 tmp1 = _mm_load_pd(x_p+16);
160 tmp2 = _mm_load_pd(y_p+16);
164 tmp3 = _mm_load_pd(x_p+18);
165 tmp4 = _mm_load_pd(y_p+18);
169 tmp5 = _mm_load_pd(x_p+20);
170 tmp6 = _mm_load_pd(y_p+20);
174 tmp7 = _mm_load_pd(x_p+22);
175 tmp8 = _mm_load_pd(y_p+22);
184 sum1 = _mm_add_pd(sum1,sum2);
185 sum3 = _mm_add_pd(sum3,sum4);
186 sum1 = _mm_add_pd(sum1,sum3);
190 _mm_storeu_pd(
sum,sum1);