Avoid using function calls in OpenMP directives
[alexxy/gromacs.git] / src / gromacs / mdlib / nbnxn_kernels / nbnxn_kernel_file_generator / nbnxn_kernel_simd_template.c.pre
index 1ac1bf54197b72c8f86bb80d24bd711d9cd5d26e..2aa4fa9fb59bf5db2dab19d027552d4707556867 100644 (file)
 
 #include "typedefs.h"
 
+#include "gromacs/mdlib/nbnxn_simd.h"
+
 #ifdef {0}
 
-{1}
-#include "gromacs/simd/macros.h"
-#include "gromacs/simd/vector_operations.h"
+{1}#include "gromacs/simd/vector_operations.h"
+
 {2}
 #define GMX_SIMD_J_UNROLL_SIZE {3}
 #include "{4}"
@@ -137,6 +138,7 @@ void
     nbnxn_pairlist_t **nbl;
     int                coulkt, vdwkt = 0;
     int                nb;
+    int                nthreads gmx_unused;
 
     nnbl = nbl_list->nnbl;
     nbl  = nbl_list->nbl;
@@ -208,7 +210,8 @@ void
         gmx_incons("Unsupported VdW interaction type");
     }}
 
-#pragma omp parallel for schedule(static) num_threads(gmx_omp_nthreads_get(emntNonbonded))
+    nthreads = gmx_omp_nthreads_get(emntNonbonded);
+#pragma omp parallel for schedule(static) num_threads(nthreads)
     for (nb = 0; nb < nnbl; nb++)
     {{
         nbnxn_atomdata_output_t *out;