summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authoreschnett <eschnett@17b73243-c579-4c4c-a9d2-2d5706c11dac>2012-11-18 00:43:42 +0000
committereschnett <eschnett@17b73243-c579-4c4c-a9d2-2d5706c11dac>2012-11-18 00:43:42 +0000
commitc04b6a776d25340da3d2a9d95acbebc7d2b2da1b (patch)
tree7515cfed3bbc4f03f394c8ce74f8b837bf427aaf /lib
parent00815552f22c1b60c32a6c42f82b6a2ad6ec6952 (diff)
Add configure macro for OpenMP collapse clause
Disable OpenMP collapse clause for certain versions of the Intel compiler that are known to mis-compile them. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4913 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'lib')
-rw-r--r--lib/make/cctk_Config.h.in26
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/make/cctk_Config.h.in b/lib/make/cctk_Config.h.in
index 5d7468cf..20e6109a 100644
--- a/lib/make/cctk_Config.h.in
+++ b/lib/make/cctk_Config.h.in
@@ -337,6 +337,14 @@ typedef enum {false, true} bool;
# define CCTK_BUILTIN_EXPECT(x,y) (x)
#endif
+/* OpenMP collapse clause */
+#if defined __INTEL_COMPILER && __INTEL_COMPILER_BUILD_DATE < 20100801
+/* see http://software.intel.com/en-us/articles/intel-professional-edition-compilers-111-fixes-list/ */
+# define collapse(N)
+#else
+# undef collapse
+#endif
+
#endif /* ! defined __cplusplus */
/****************************************************************************/
@@ -510,6 +518,14 @@ typedef enum {false, true} bool;
# define CCTK_RESTRICT restrict
#endif
+/* OpenMP collapse clause */
+#if defined __INTEL_COMPILER && __INTEL_COMPILER_BUILD_DATE < 20100801
+/* see http://software.intel.com/en-us/articles/intel-professional-edition-compilers-111-fixes-list/ */
+# define collapse(N)
+#else
+# undef collapse
+#endif
+
#endif /* __cplusplus */
/****************************************************************************/
@@ -526,6 +542,16 @@ typedef enum {false, true} bool;
#undef HAVE_CCTK_FORTRAN_COMPLEX16
#undef HAVE_CCTK_FORTRAN_COMPLEX32
+/* OpenMP collapse clause */
+#if defined __INTEL_COMPILER && __INTEL_COMPILER_BUILD_DATE < 20100801
+/* see http://software.intel.com/en-us/articles/intel-professional-edition-compilers-111-fixes-list/ */
+# define collapse(N)
+# define COLLAPSE(N)
+#else
+# undef collapse
+# undef COLLAPSE
+#endif
+
#endif /* FCODE */
/* Now include the code to pick an appropriate precison for reals and ints */