Made reference SIMD work again
[alexxy/gromacs.git] / src / gromacs / simd / macros.h
index ca1e499a6142f2737c7e8f612d1d0929a9cc849a..d95b30923cf17a1c8791cb5089b4c9e8ee7404ba 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This file is part of the GROMACS molecular simulation package.
  *
- * Copyright (c) 2012,2013, by the GROMACS development team, led by
+ * Copyright (c) 2012,2013,2014, by the GROMACS development team, led by
  * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
  * and including many others, as listed in the AUTHORS file in the
  * top-level source directory and at http://www.gromacs.org.
@@ -54,7 +54,8 @@
 #define GMX_HAVE_SIMD_MACROS
 
 /* In general the reference SIMD supports any SIMD width, including 1.
- * See types/nb_verlet.h for details
+ * But the nbnxn SIMD 4xN kernels only support 2, 4, 8 and 2xNN only 8, 16,
+ * see types/nb_verlet.h for details
  */
 #define GMX_SIMD_REF_WIDTH  4
 
 
 /* exp and trigonometric functions are included above */
 #define GMX_SIMD_HAVE_EXP
+#define GMX_SIMD_HAVE_ERFC
 #define GMX_SIMD_HAVE_TRIGONOMETRIC
 
 #if !defined GMX_X86_AVX_256 || defined GMX_USE_HALF_WIDTH_SIMD_HERE
@@ -755,6 +757,7 @@ static gmx_inline gmx_mm_pr gmx_always_inline gmx_atan2_pr(gmx_mm_pr a, gmx_mm_p
 #endif
 }
 
+#define GMX_SIMD_HAVE_ERFC
 static gmx_inline gmx_mm_pr gmx_always_inline gmx_erfc_pr(gmx_mm_pr a)
 {
     /* The BG/Q qpxmath.h vector math library intended for use with