Reenable lincs/bonded SIMD for ICC on Windows
authorRoland Schulz <roland@utk.edu>
Sat, 30 May 2015 07:46:07 +0000 (03:46 -0400)
committerGerrit Code Review <gerrit@gerrit.gromacs.org>
Fri, 5 Jun 2015 18:03:27 +0000 (20:03 +0200)
It was accidentally disabled when disabling MSVC because ICC
also has _MSC_VER defined.

Change-Id: I7733b4af74a12dd0997ed22e86f2cdf459f08aba

src/gromacs/listed-forces/listed-forces.cpp
src/gromacs/mdlib/clincs.cpp
src/gromacs/pbcutil/pbc-simd.h

index f95db0b9c515605199007ac2d7aeb076e32d0853..3f68624adddcea65c36c0ae5bb72e319f9182611 100644 (file)
@@ -262,7 +262,7 @@ calc_one_bond(int thread,
 #ifdef GMX_SIMD_HAVE_REAL
     gmx_bool bUseSIMD;
     /* MSVC 2010 produces buggy SIMD PBC code, disable SIMD for MSVC <= 2010 */
-#if defined _MSC_VER && _MSC_VER < 1700
+#if defined _MSC_VER && _MSC_VER < 1700 && !defined(__ICL)
     bUseSIMD = FALSE;
 #else
     bUseSIMD = fr->use_simd_kernels;
index 7be3cef649211d2536bdfd3e541ced058f170be9..11bdfd81b59414327b904be007c87a125cbfa80c 100644 (file)
@@ -68,7 +68,7 @@
 #include "gromacs/utility/smalloc.h"
 
 /* MSVC 2010 produces buggy SIMD PBC code, disable SIMD for MSVC <= 2010 */
-#if defined GMX_SIMD_HAVE_REAL && !(defined _MSC_VER && _MSC_VER < 1700)
+#if defined GMX_SIMD_HAVE_REAL && !(defined _MSC_VER && _MSC_VER < 1700) && !defined(__ICL)
 #define LINCS_SIMD
 #endif
 
index 6e1348a554b2ca898623b6bc297155adf0f96e28..fc7b29a968e9f8b9844f66854f703541356b00b2 100644 (file)
@@ -108,7 +108,7 @@ pbc_correct_dx_simd(gmx_simd_real_t  *dx,
 {
     gmx_simd_real_t shz, shy, shx;
 
-#if defined _MSC_VER && _MSC_VER < 1700
+#if defined _MSC_VER && _MSC_VER < 1700 && !defined(__ICL)
     /* The caller side should make sure we never end up here.
      * TODO Black-list _MSC_VER < 1700 when it's old enough, so we can rid
      * of this code complication.