1 //LSB (Linux Standard Base) compiler
3 #if defined (__LSB_VERSION__)
4 #if !defined (__cplusplus)
7 #error "OpenBLAS only supports lsbcc."
11 #if defined(__clang__)
15 #if defined(__PGI) || defined(__PGIC__)
19 #if defined(__PATHSCALE__) || defined(__PATHCC__)
23 #if defined(__INTEL_COMPILER) || defined(__ICC) || defined(__ECC)
27 #if defined(__OPENCC__)
31 #if defined(__SUNPRO_C)
35 #if defined(__IBMC__) || defined(__xlc__)
39 #if defined(__DECCC__)
47 #if defined(__ANDROID__)
51 #if defined(__linux__)
55 #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
59 #if defined(__NetBSD__)
63 #if defined(__OpenBSD__)
67 #if defined(__DragonFly__)
75 #if defined(__APPLE__)
87 #if defined(__WIN32) || defined(__WIN64) || defined(__WINNT)
91 #if defined(__CYGWIN__)
95 #if defined(__INTERIX)
99 #if defined(__gnu_hurd__)
100 /* Hurd is very similar to GNU/Linux, it should work out of the box */
104 #if defined(__HAIKU__)
108 #if defined(__i386) || defined(_X86)
112 #if defined(__x86_64__) || defined(__amd64__)
116 #if defined(__powerpc___) || defined(__PPC__) || defined(_POWER) || defined(__POWERPC__)
120 #if defined(__s390x__) || defined(__zarch__)
128 #if defined(__mips32) || defined(__mips)
136 #if defined(__sparc) || defined(__sparc__)
140 #if defined(__ia64__) || defined(__ia64)
144 #if defined(__LP64) || defined(__LP64__) || defined(__ptr64) || defined(__x86_64__) || defined(__amd64__) || defined(__64BIT__)
148 #if defined(__ARM_ARCH) || defined(__ARM_ARCH_7A__) || defined(__arm__)
152 #if defined(__aarch64__)