Go to the documentation of this file.
38 #ifndef MADNESS_MADNESS_CONFIG_H__INCLUDED
39 #define MADNESS_MADNESS_CONFIG_H__INCLUDED
41 #include <madness/config.h>
45 #undef PACKAGE_BUGREPORT
47 #undef PACKAGE_TARNAME
49 #undef PACKAGE_VERSION
55 # define HAVE_CRAYXT 1
56 # define MADNESS_HAVE_CRAYXT 1
58 #elif defined(__CRAYXE)
60 # define HAVE_CRAYXE 1
61 # define MADNESS_HAVE_CRAYXE 1
63 # define MADNESS_HAVE_X86_64 1
65 #elif defined(__bgp__)
67 # define HAVE_IBMBGP 1
68 # define MADNESS_HAVE_POWERPC_32 1
70 #elif defined(__bgq__)
72 # define HAVE_IBMBGQ 1
73 # define MADNESS_HAVE_POWERPC_64 1
79 #if defined(__x86_64__) || defined(_M_X64)
82 # define MADNESS_HAVE_X86_64 1
86 # if defined(__AVX512F__)
87 # define MADNESS_HAVE_AVX512 1
90 # if defined(__AVX2__)
91 # define MADNESS_HAVE_AVX2 1
95 # define MADNESS_HAVE_AVX 1
98 # if defined(__SSE4_2__)
99 # define MADNESS_HAVE_SSE42 1
102 # if defined(__SSE4_1__)
103 # define MADNESS_SSE41 1
106 # if defined(__SSSE3__)
107 # define MADNESS_HAVE_SSSE3 1
110 # if defined(__SSE3__)
111 # define MADNESS_HAVE_SSE3 1
115 # define MADNESS_HAVE_SSE2 1
116 # define MADNESS_HAVE_SSE 1
118 # if defined(_M_IX86_FP)
121 # define MADNESS_HAVE_SSE2 2
122 # elif _M_IX86_FP == 1
123 # define MADNESS_HAVE_SSE 1
129 #elif defined(__i386) || defined(_M_IX86)
132 # define MADNESS_HAVE_X86_32
134 # if defined(__SSE2__)
135 # define MADNESS_HAVE_SSE2 2
138 # if defined(__SSE__)
139 # define MADNESS_HAVE_SSE 1
145 #if defined(__powerpc__) || defined(__ppc__) || defined(__PPC__)
148 # if defined(__powerpc64__) || defined(__ppc64__) || defined(__PPC64__) || \
149 defined(__64BIT__) || defined(_LP64) || defined(__LP64__)
151 # define MADNESS_HAVE_POWERPC_64 1
155 # define MADNESS_HAVE_POWERPC_32 1
167 #define MADNESS_CXX_COMPILER_ID_GNU 0
168 #define MADNESS_CXX_COMPILER_ID_Clang 1
169 #define MADNESS_CXX_COMPILER_ID_AppleClang 2
170 #define MADNESS_CXX_COMPILER_ID_XLClang 3
171 #define MADNESS_CXX_COMPILER_ID_Intel 4
172 #if defined(__INTEL_COMPILER_BUILD_DATE)
173 # define MADNESS_CXX_COMPILER_ID MADNESS_CXX_COMPILER_ID_Intel
174 # define MADNESS_CXX_COMPILER_IS_ICC 1
176 #if defined(__clang__) && !defined(MADNESS_CXX_COMPILER_IS_ICC)
177 # define MADNESS_CXX_COMPILER_IS_CLANG 1
178 # if defined(__apple_build_version__)
179 # define MADNESS_CXX_COMPILER_ID MADNESS_CXX_COMPILER_ID_AppleClang
180 # elif defined(__ibmxl__)
181 # define MADNESS_CXX_COMPILER_ID MADNESS_CXX_COMPILER_ID_XLClang
183 # define MADNESS_CXX_COMPILER_ID MADNESS_CXX_COMPILER_ID_Clang
186 #if defined(__GNUG__) && !defined(MADNESS_CXX_COMPILER_IS_ICC) && !defined(MADNESS_CXX_COMPILER_IS_CLANG)
187 # define MADNESS_CXX_COMPILER_ID MADNESS_CXX_COMPILER_ID_GNU
188 # define MADNESS_CXX_COMPILER_IS_GCC 1
192 #define MADNESS_PRAGMA(x) _Pragma(#x)
194 #define MADNESS_XPRAGMA(x) MADNESS_PRAGMA(x)
196 #define MADNESS_CONCAT(a,b) a b
197 #ifdef MADNESS_CXX_COMPILER_IS_CLANG
198 #define MADNESS_PRAGMA_CLANG(x) MADNESS_XPRAGMA( MADNESS_CONCAT(clang,x) )
200 #define MADNESS_PRAGMA_CLANG(x)
202 #ifdef MADNESS_CXX_COMPILER_IS_GCC
203 #define MADNESS_PRAGMA_GCC(x) MADNESS_XPRAGMA( MADNESS_CONCAT(GCC,x) )
205 #define MADNESS_PRAGMA_GCC(x)