summaryrefslogtreecommitdiff
path: root/lib/make/cctk_Config.h.in
diff options
context:
space:
mode:
Diffstat (limited to 'lib/make/cctk_Config.h.in')
-rw-r--r--lib/make/cctk_Config.h.in13
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/make/cctk_Config.h.in b/lib/make/cctk_Config.h.in
index a2219e20..44af266c 100644
--- a/lib/make/cctk_Config.h.in
+++ b/lib/make/cctk_Config.h.in
@@ -350,9 +350,14 @@ typedef enum {false, true} bool;
#endif
/* OpenMP collapse clause */
-#if defined __INTEL_COMPILER && __INTEL_COMPILER_BUILD_DATE < 20100801
+#if (defined CCTK_DISABLE_OMP_COLLAPSE || \
+ (defined __IBMC__ && defined _ARCH_450D) || \
+ (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)
+# ifndef CCTK_DISABLE_OMP_COLLAPSE
+# error "OpenMP collapse directive disabled for C, but enabled for Fortran -- likely an error in the option list"
+# endif
#else
# undef collapse
#endif
@@ -545,7 +550,9 @@ typedef enum {false, true} bool;
#endif
/* OpenMP collapse clause */
-#if defined __INTEL_COMPILER && __INTEL_COMPILER_BUILD_DATE < 20100801
+#if (defined CCTK_DISABLE_OMP_COLLAPSE || \
+ (defined __IBMCPP__ && defined _ARCH_450D) || \
+ ( 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
@@ -572,7 +579,7 @@ typedef enum {false, true} bool;
#undef CCTK_COMPLEX32_KIND
/* OpenMP collapse clause */
-#if defined __INTEL_COMPILER && __INTEL_COMPILER_BUILD_DATE < 20100801
+#ifdef CCTK_DISABLE_OMP_COLLAPSE
/* see http://software.intel.com/en-us/articles/intel-professional-edition-compilers-111-fixes-list/ */
# define collapse(N)
# define COLLAPSE(N)