Merge release-4-6 into master
[alexxy/gromacs.git] / src / gromacs / gmxlib / nonbonded / nb_kernel_avx_256_double / nb_kernel_ElecGB_VdwLJ_GeomP1P1_avx_256_double.c
index abb078218264047f347d7ae3230a47d36d410667..9edb654bddf411c67fef4e81b81692ab21941775 100644 (file)
@@ -381,6 +381,7 @@ nb_kernel_ElecGB_VdwLJ_GeomP1P1_VF_avx_256_double
             FF               = _mm256_add_pd(Fp,_mm256_mul_pd(gbeps,_mm256_add_pd(G,_mm256_add_pd(Heps,Heps))));
             fgb              = _mm256_mul_pd(gbqqfactor,_mm256_mul_pd(FF,gbscale));
             dvdatmp          = _mm256_mul_pd(minushalf,_mm256_add_pd(vgb,_mm256_mul_pd(fgb,r00)));
+            dvdatmp          = _mm256_andnot_ps(dummy_mask,dvdatmp);
             dvdasum          = _mm256_add_pd(dvdasum,dvdatmp);
             /* The pointers to scratch make sure that this code with compilers that take gmx_restrict seriously (e.g. icc 13) really can't screw things up. */
             fjptrA             = (jnrlistA>=0) ? dvda+jnrA : scratch;
@@ -793,6 +794,7 @@ nb_kernel_ElecGB_VdwLJ_GeomP1P1_F_avx_256_double
             FF               = _mm256_add_pd(Fp,_mm256_mul_pd(gbeps,_mm256_add_pd(G,_mm256_add_pd(Heps,Heps))));
             fgb              = _mm256_mul_pd(gbqqfactor,_mm256_mul_pd(FF,gbscale));
             dvdatmp          = _mm256_mul_pd(minushalf,_mm256_add_pd(vgb,_mm256_mul_pd(fgb,r00)));
+            dvdatmp          = _mm256_andnot_ps(dummy_mask,dvdatmp);
             dvdasum          = _mm256_add_pd(dvdasum,dvdatmp);
             /* The pointers to scratch make sure that this code with compilers that take gmx_restrict seriously (e.g. icc 13) really can't screw things up. */
             fjptrA             = (jnrlistA>=0) ? dvda+jnrA : scratch;