diff options
Diffstat (limited to 'test/Preprocessor/init.c')
-rw-r--r-- | test/Preprocessor/init.c | 440 |
1 files changed, 417 insertions, 23 deletions
diff --git a/test/Preprocessor/init.c b/test/Preprocessor/init.c index e0f45f1..e7321e0 100644 --- a/test/Preprocessor/init.c +++ b/test/Preprocessor/init.c @@ -48,6 +48,9 @@ // COMMON:#define __GNUC_STDC_INLINE__ 1 // COMMON:#define __GNUC__ // COMMON:#define __GXX_ABI_VERSION +// COMMON:#define __ORDER_BIG_ENDIAN__ 4321 +// COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234 +// COMMON:#define __ORDER_PDP_ENDIAN__ 3412 // COMMON:#define __STDC_HOSTED__ 1 // COMMON:#define __STDC_VERSION__ // COMMON:#define __STDC__ 1 @@ -62,12 +65,21 @@ // // RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -check-prefix FREESTANDING %s // FREESTANDING:#define __STDC_HOSTED__ 0 -// +// +// +// RUN: %clang_cc1 -x c++ -std=gnu++11 -E -dM < /dev/null | FileCheck -check-prefix GXX11 %s +// +// GXX11:#define __GNUG__ +// GXX11:#define __GXX_WEAK__ 1 +// GXX11:#define __cplusplus 201103L +// GXX11:#define __private_extern__ extern +// +// // RUN: %clang_cc1 -x c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -check-prefix GXX98 %s // // GXX98:#define __GNUG__ // GXX98:#define __GXX_WEAK__ 1 -// GXX98:#define __cplusplus 1 +// GXX98:#define __cplusplus 199711L // GXX98:#define __private_extern__ extern // // @@ -76,7 +88,7 @@ // C94:#define __STDC_VERSION__ 199409L // // -// RUN: %clang_cc1 -fms-extensions -triple i686-pc-win32 -fobjc-fragile-abi -E -dM < /dev/null | FileCheck -check-prefix MSEXT %s +// RUN: %clang_cc1 -fms-extensions -triple i686-pc-win32 -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -check-prefix MSEXT %s // // MSEXT-NOT:#define __STDC__ // MSEXT:#define _INTEGRAL_MAX_BITS 64 @@ -99,12 +111,39 @@ // NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1 // NONFRAGILE:#define __OBJC2__ 1 // -// +// +// RUN: %clang_cc1 -O0 -E -dM < /dev/null | FileCheck -check-prefix O0 %s +// +// O0:#define __NO_INLINE__ 1 +// O0-NOT:#define __OPTIMIZE_SIZE__ +// O0-NOT:#define __OPTIMIZE__ +// +// +// RUN: %clang_cc1 -fno-inline -O3 -E -dM < /dev/null | FileCheck -check-prefix NO_INLINE %s +// +// NO_INLINE:#define __NO_INLINE__ 1 +// NO_INLINE-NOT:#define __OPTIMIZE_SIZE__ +// NO_INLINE:#define __OPTIMIZE__ +// +// // RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -check-prefix O1 %s // +// O1-NOT:#define __OPTIMIZE_SIZE__ // O1:#define __OPTIMIZE__ 1 // -// +// +// RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -check-prefix Os %s +// +// Os:#define __OPTIMIZE_SIZE__ 1 +// Os:#define __OPTIMIZE__ 1 +// +// +// RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -check-prefix Oz %s +// +// Oz:#define __OPTIMIZE_SIZE__ 1 +// Oz:#define __OPTIMIZE__ 1 +// +// // RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -check-prefix PASCAL %s // // PASCAL:#define __PASCAL_STRINGS__ 1 @@ -125,9 +164,11 @@ // // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -check-prefix ARM %s // +// ARM-NOT:#define _LP64 // ARM:#define __APCS_32__ 1 // ARM:#define __ARMEL__ 1 // ARM:#define __ARM_ARCH_6J__ 1 +// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // ARM:#define __CHAR16_TYPE__ unsigned short // ARM:#define __CHAR32_TYPE__ unsigned int // ARM:#define __CHAR_BIT__ 8 @@ -187,7 +228,7 @@ // ARM:#define __LITTLE_ENDIAN__ 1 // ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL // ARM:#define __LONG_MAX__ 2147483647L -// ARM:#define __NO_INLINE__ 1 +// ARM-NOT:#define __LP64__ // ARM:#define __POINTER_WIDTH__ 32 // ARM:#define __PTRDIFF_TYPE__ int // ARM:#define __PTRDIFF_WIDTH__ 32 @@ -222,6 +263,8 @@ // // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -check-prefix I386 %s // +// I386-NOT:#define _LP64 +// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // I386:#define __CHAR16_TYPE__ unsigned short // I386:#define __CHAR32_TYPE__ unsigned int // I386:#define __CHAR_BIT__ 8 @@ -281,7 +324,7 @@ // I386:#define __LITTLE_ENDIAN__ 1 // I386:#define __LONG_LONG_MAX__ 9223372036854775807LL // I386:#define __LONG_MAX__ 2147483647L -// I386:#define __NO_INLINE__ 1 +// I386-NOT:#define __LP64__ // I386:#define __NO_MATH_INLINES 1 // I386:#define __POINTER_WIDTH__ 32 // I386:#define __PTRDIFF_TYPE__ int @@ -317,6 +360,8 @@ // // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -check-prefix I386-LINUX %s // +// I386-LINUX-NOT:#define _LP64 +// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // I386-LINUX:#define __CHAR16_TYPE__ unsigned short // I386-LINUX:#define __CHAR32_TYPE__ unsigned int // I386-LINUX:#define __CHAR_BIT__ 8 @@ -376,7 +421,7 @@ // I386-LINUX:#define __LITTLE_ENDIAN__ 1 // I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL // I386-LINUX:#define __LONG_MAX__ 2147483647L -// I386-LINUX:#define __NO_INLINE__ 1 +// I386-LINUX-NOT:#define __LP64__ // I386-LINUX:#define __NO_MATH_INLINES 1 // I386-LINUX:#define __POINTER_WIDTH__ 32 // I386-LINUX:#define __PTRDIFF_TYPE__ int @@ -414,11 +459,13 @@ // // MIPS32BE:#define MIPSEB 1 // MIPS32BE:#define _ABIO32 1 +// MIPS32BE-NOT:#define _LP64 // MIPS32BE:#define _MIPSEB 1 // MIPS32BE:#define _MIPS_SIM _ABIO32 // MIPS32BE:#define _MIPS_SZINT 32 // MIPS32BE:#define _MIPS_SZLONG 32 // MIPS32BE:#define _MIPS_SZPTR 32 +// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // MIPS32BE:#define __CHAR16_TYPE__ unsigned short // MIPS32BE:#define __CHAR32_TYPE__ unsigned int // MIPS32BE:#define __CHAR_BIT__ 8 @@ -478,9 +525,9 @@ // MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308 // MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL // MIPS32BE:#define __LONG_MAX__ 2147483647L +// MIPS32BE-NOT:#define __LP64__ // MIPS32BE:#define __MIPSEB 1 // MIPS32BE:#define __MIPSEB__ 1 -// MIPS32BE:#define __NO_INLINE__ 1 // MIPS32BE:#define __POINTER_WIDTH__ 32 // MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1 // MIPS32BE:#define __PTRDIFF_TYPE__ int @@ -526,11 +573,13 @@ // // MIPS32EL:#define MIPSEL 1 // MIPS32EL:#define _ABIO32 1 +// MIPS32EL-NOT:#define _LP64 // MIPS32EL:#define _MIPSEL 1 // MIPS32EL:#define _MIPS_SIM _ABIO32 // MIPS32EL:#define _MIPS_SZINT 32 // MIPS32EL:#define _MIPS_SZLONG 32 // MIPS32EL:#define _MIPS_SZPTR 32 +// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // MIPS32EL:#define __CHAR16_TYPE__ unsigned short // MIPS32EL:#define __CHAR32_TYPE__ unsigned int // MIPS32EL:#define __CHAR_BIT__ 8 @@ -590,9 +639,9 @@ // MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308 // MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL // MIPS32EL:#define __LONG_MAX__ 2147483647L +// MIPS32EL-NOT:#define __LP64__ // MIPS32EL:#define __MIPSEL 1 // MIPS32EL:#define __MIPSEL__ 1 -// MIPS32EL:#define __NO_INLINE__ 1 // MIPS32EL:#define __POINTER_WIDTH__ 32 // MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1 // MIPS32EL:#define __PTRDIFF_TYPE__ int @@ -635,11 +684,13 @@ // // MIPS64BE:#define MIPSEB 1 // MIPS64BE:#define _ABI64 3 +// MIPS64BE:#define _LP64 1 // MIPS64BE:#define _MIPSEB 1 // MIPS64BE:#define _MIPS_SIM _ABI64 // MIPS64BE:#define _MIPS_SZINT 32 // MIPS64BE:#define _MIPS_SZLONG 64 // MIPS64BE:#define _MIPS_SZPTR 64 +// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // MIPS64BE:#define __CHAR16_TYPE__ unsigned short // MIPS64BE:#define __CHAR32_TYPE__ unsigned int // MIPS64BE:#define __CHAR_BIT__ 8 @@ -699,9 +750,9 @@ // MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L // MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL // MIPS64BE:#define __LONG_MAX__ 9223372036854775807L +// MIPS64BE:#define __LP64__ 1 // MIPS64BE:#define __MIPSEB 1 // MIPS64BE:#define __MIPSEB__ 1 -// MIPS64BE:#define __NO_INLINE__ 1 // MIPS64BE:#define __POINTER_WIDTH__ 64 // MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1 // MIPS64BE:#define __PTRDIFF_TYPE__ long int @@ -744,11 +795,13 @@ // // MIPS64EL:#define MIPSEL 1 // MIPS64EL:#define _ABI64 3 +// MIPS64EL:#define _LP64 1 // MIPS64EL:#define _MIPSEL 1 // MIPS64EL:#define _MIPS_SIM _ABI64 // MIPS64EL:#define _MIPS_SZINT 32 // MIPS64EL:#define _MIPS_SZLONG 64 // MIPS64EL:#define _MIPS_SZPTR 64 +// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // MIPS64EL:#define __CHAR16_TYPE__ unsigned short // MIPS64EL:#define __CHAR32_TYPE__ unsigned int // MIPS64EL:#define __CHAR_BIT__ 8 @@ -808,9 +861,9 @@ // MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L // MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL // MIPS64EL:#define __LONG_MAX__ 9223372036854775807L +// MIPS64EL:#define __LP64__ 1 // MIPS64EL:#define __MIPSEL 1 // MIPS64EL:#define __MIPSEL__ 1 -// MIPS64EL:#define __NO_INLINE__ 1 // MIPS64EL:#define __POINTER_WIDTH__ 64 // MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1 // MIPS64EL:#define __PTRDIFF_TYPE__ long int @@ -864,11 +917,40 @@ // RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \ // RUN: -triple=mips-none-none < /dev/null \ // RUN: | FileCheck -check-prefix MIPS-FABI-SINGLE %s +// MIPS-FABI-SINGLE:#define __mips_hard_float 1 // MIPS-FABI-SINGLE:#define __mips_single_float 1 // +// Check MIPS features macros +// +// RUN: %clang_cc1 -target-feature +mips16 \ +// RUN: -E -dM -triple=mips-none-none < /dev/null \ +// RUN: | FileCheck -check-prefix MIPS16 %s +// MIPS16:#define __mips16 1 +// +// RUN: %clang_cc1 -target-feature -mips16 \ +// RUN: -E -dM -triple=mips-none-none < /dev/null \ +// RUN: | FileCheck -check-prefix NOMIPS16 %s +// NOMIPS16-NOT:#define __mips16 1 +// +// RUN: %clang_cc1 -target-feature +dsp \ +// RUN: -E -dM -triple=mips-none-none < /dev/null \ +// RUN: | FileCheck -check-prefix MIPS-DSP %s +// MIPS-DSP:#define __mips_dsp 1 +// MIPS-DSP:#define __mips_dsp_rev 1 +// MIPS-DSP-NOT:#define __mips_dspr2 1 +// +// RUN: %clang_cc1 -target-feature +dspr2 \ +// RUN: -E -dM -triple=mips-none-none < /dev/null \ +// RUN: | FileCheck -check-prefix MIPS-DSPR2 %s +// MIPS-DSPR2:#define __mips_dsp 1 +// MIPS-DSPR2:#define __mips_dsp_rev 2 +// MIPS-DSPR2:#define __mips_dspr2 1 +// // RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -check-prefix MSP430 %s // // MSP430:#define MSP430 1 +// MSP430-NOT:#define _LP64 +// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // MSP430:#define __CHAR16_TYPE__ unsigned short // MSP430:#define __CHAR32_TYPE__ unsigned int // MSP430:#define __CHAR_BIT__ 8 @@ -926,8 +1008,8 @@ // MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308 // MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL // MSP430:#define __LONG_MAX__ 2147483647L +// MSP430-NOT:#define __LP64__ // MSP430:#define __MSP430__ 1 -// MSP430:#define __NO_INLINE__ 1 // MSP430:#define __POINTER_WIDTH__ 16 // MSP430:#define __PTRDIFF_TYPE__ int // MSP430:#define __PTRDIFF_WIDTH__ 16 @@ -957,13 +1039,315 @@ // MSP430:#define __WINT_WIDTH__ 16 // MSP430:#define __clang__ 1 // -// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64 %s +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -check-prefix NVPTX32 %s +// +// NVPTX32-NOT:#define _LP64 +// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ +// NVPTX32:#define __CHAR16_TYPE__ unsigned short +// NVPTX32:#define __CHAR32_TYPE__ unsigned int +// NVPTX32:#define __CHAR_BIT__ 8 +// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1 +// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324 +// NVPTX32:#define __DBL_DIG__ 15 +// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16 +// NVPTX32:#define __DBL_HAS_DENORM__ 1 +// NVPTX32:#define __DBL_HAS_INFINITY__ 1 +// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1 +// NVPTX32:#define __DBL_MANT_DIG__ 53 +// NVPTX32:#define __DBL_MAX_10_EXP__ 308 +// NVPTX32:#define __DBL_MAX_EXP__ 1024 +// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308 +// NVPTX32:#define __DBL_MIN_10_EXP__ (-307) +// NVPTX32:#define __DBL_MIN_EXP__ (-1021) +// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308 +// NVPTX32:#define __DECIMAL_DIG__ 17 +// NVPTX32:#define __FINITE_MATH_ONLY__ 0 +// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F +// NVPTX32:#define __FLT_DIG__ 6 +// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F +// NVPTX32:#define __FLT_EVAL_METHOD__ 0 +// NVPTX32:#define __FLT_HAS_DENORM__ 1 +// NVPTX32:#define __FLT_HAS_INFINITY__ 1 +// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1 +// NVPTX32:#define __FLT_MANT_DIG__ 24 +// NVPTX32:#define __FLT_MAX_10_EXP__ 38 +// NVPTX32:#define __FLT_MAX_EXP__ 128 +// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F +// NVPTX32:#define __FLT_MIN_10_EXP__ (-37) +// NVPTX32:#define __FLT_MIN_EXP__ (-125) +// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F +// NVPTX32:#define __FLT_RADIX__ 2 +// NVPTX32:#define __INT16_TYPE__ short +// NVPTX32:#define __INT32_TYPE__ int +// NVPTX32:#define __INT64_C_SUFFIX__ LL +// NVPTX32:#define __INT64_TYPE__ long long int +// NVPTX32:#define __INT8_TYPE__ char +// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL +// NVPTX32:#define __INTMAX_TYPE__ long long int +// NVPTX32:#define __INTMAX_WIDTH__ 64 +// NVPTX32:#define __INTPTR_TYPE__ unsigned int +// NVPTX32:#define __INTPTR_WIDTH__ 32 +// NVPTX32:#define __INT_MAX__ 2147483647 +// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324 +// NVPTX32:#define __LDBL_DIG__ 15 +// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16 +// NVPTX32:#define __LDBL_HAS_DENORM__ 1 +// NVPTX32:#define __LDBL_HAS_INFINITY__ 1 +// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1 +// NVPTX32:#define __LDBL_MANT_DIG__ 53 +// NVPTX32:#define __LDBL_MAX_10_EXP__ 308 +// NVPTX32:#define __LDBL_MAX_EXP__ 1024 +// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308 +// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307) +// NVPTX32:#define __LDBL_MIN_EXP__ (-1021) +// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308 +// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL +// NVPTX32:#define __LONG_MAX__ 9223372036854775807L +// NVPTX32-NOT:#define __LP64__ +// NVPTX32:#define __NVPTX__ 1 +// NVPTX32:#define __POINTER_WIDTH__ 32 +// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1 +// NVPTX32:#define __PTRDIFF_TYPE__ unsigned int +// NVPTX32:#define __PTRDIFF_WIDTH__ 32 +// NVPTX32:#define __PTX__ 1 +// NVPTX32:#define __SCHAR_MAX__ 127 +// NVPTX32:#define __SHRT_MAX__ 32767 +// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32 +// NVPTX32:#define __SIZEOF_DOUBLE__ 8 +// NVPTX32:#define __SIZEOF_FLOAT__ 4 +// NVPTX32:#define __SIZEOF_INT__ 4 +// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8 +// NVPTX32:#define __SIZEOF_LONG_LONG__ 8 +// NVPTX32:#define __SIZEOF_LONG__ 8 +// NVPTX32:#define __SIZEOF_POINTER__ 4 +// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4 +// NVPTX32:#define __SIZEOF_SHORT__ 2 +// NVPTX32:#define __SIZEOF_SIZE_T__ 4 +// NVPTX32:#define __SIZEOF_WCHAR_T__ 4 +// NVPTX32:#define __SIZEOF_WINT_T__ 4 +// NVPTX32:#define __SIZE_TYPE__ unsigned int +// NVPTX32:#define __SIZE_WIDTH__ 32 +// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int +// NVPTX32:#define __USER_LABEL_PREFIX__ _ +// NVPTX32:#define __WCHAR_MAX__ 2147483647 +// NVPTX32:#define __WCHAR_TYPE__ int +// NVPTX32:#define __WCHAR_WIDTH__ 32 +// NVPTX32:#define __WINT_TYPE__ int +// NVPTX32:#define __WINT_WIDTH__ 32 +// +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -check-prefix NVPTX64 %s +// +// NVPTX64:#define _LP64 1 +// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ +// NVPTX64:#define __CHAR16_TYPE__ unsigned short +// NVPTX64:#define __CHAR32_TYPE__ unsigned int +// NVPTX64:#define __CHAR_BIT__ 8 +// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1 +// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324 +// NVPTX64:#define __DBL_DIG__ 15 +// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16 +// NVPTX64:#define __DBL_HAS_DENORM__ 1 +// NVPTX64:#define __DBL_HAS_INFINITY__ 1 +// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1 +// NVPTX64:#define __DBL_MANT_DIG__ 53 +// NVPTX64:#define __DBL_MAX_10_EXP__ 308 +// NVPTX64:#define __DBL_MAX_EXP__ 1024 +// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308 +// NVPTX64:#define __DBL_MIN_10_EXP__ (-307) +// NVPTX64:#define __DBL_MIN_EXP__ (-1021) +// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308 +// NVPTX64:#define __DECIMAL_DIG__ 17 +// NVPTX64:#define __FINITE_MATH_ONLY__ 0 +// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F +// NVPTX64:#define __FLT_DIG__ 6 +// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F +// NVPTX64:#define __FLT_EVAL_METHOD__ 0 +// NVPTX64:#define __FLT_HAS_DENORM__ 1 +// NVPTX64:#define __FLT_HAS_INFINITY__ 1 +// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1 +// NVPTX64:#define __FLT_MANT_DIG__ 24 +// NVPTX64:#define __FLT_MAX_10_EXP__ 38 +// NVPTX64:#define __FLT_MAX_EXP__ 128 +// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F +// NVPTX64:#define __FLT_MIN_10_EXP__ (-37) +// NVPTX64:#define __FLT_MIN_EXP__ (-125) +// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F +// NVPTX64:#define __FLT_RADIX__ 2 +// NVPTX64:#define __INT16_TYPE__ short +// NVPTX64:#define __INT32_TYPE__ int +// NVPTX64:#define __INT64_C_SUFFIX__ LL +// NVPTX64:#define __INT64_TYPE__ long long int +// NVPTX64:#define __INT8_TYPE__ char +// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL +// NVPTX64:#define __INTMAX_TYPE__ long long int +// NVPTX64:#define __INTMAX_WIDTH__ 64 +// NVPTX64:#define __INTPTR_TYPE__ long long unsigned int +// NVPTX64:#define __INTPTR_WIDTH__ 64 +// NVPTX64:#define __INT_MAX__ 2147483647 +// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324 +// NVPTX64:#define __LDBL_DIG__ 15 +// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16 +// NVPTX64:#define __LDBL_HAS_DENORM__ 1 +// NVPTX64:#define __LDBL_HAS_INFINITY__ 1 +// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1 +// NVPTX64:#define __LDBL_MANT_DIG__ 53 +// NVPTX64:#define __LDBL_MAX_10_EXP__ 308 +// NVPTX64:#define __LDBL_MAX_EXP__ 1024 +// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308 +// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307) +// NVPTX64:#define __LDBL_MIN_EXP__ (-1021) +// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308 +// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL +// NVPTX64:#define __LONG_MAX__ 9223372036854775807L +// NVPTX64:#define __LP64__ 1 +// NVPTX64:#define __NVPTX__ 1 +// NVPTX64:#define __POINTER_WIDTH__ 64 +// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1 +// NVPTX64:#define __PTRDIFF_TYPE__ long long unsigned int +// NVPTX64:#define __PTRDIFF_WIDTH__ 64 +// NVPTX64:#define __PTX__ 1 +// NVPTX64:#define __SCHAR_MAX__ 127 +// NVPTX64:#define __SHRT_MAX__ 32767 +// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32 +// NVPTX64:#define __SIZEOF_DOUBLE__ 8 +// NVPTX64:#define __SIZEOF_FLOAT__ 4 +// NVPTX64:#define __SIZEOF_INT__ 4 +// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8 +// NVPTX64:#define __SIZEOF_LONG_LONG__ 8 +// NVPTX64:#define __SIZEOF_LONG__ 8 +// NVPTX64:#define __SIZEOF_POINTER__ 8 +// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8 +// NVPTX64:#define __SIZEOF_SHORT__ 2 +// NVPTX64:#define __SIZEOF_SIZE_T__ 8 +// NVPTX64:#define __SIZEOF_WCHAR_T__ 4 +// NVPTX64:#define __SIZEOF_WINT_T__ 4 +// NVPTX64:#define __SIZE_TYPE__ long long unsigned int +// NVPTX64:#define __SIZE_WIDTH__ 64 +// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int +// NVPTX64:#define __USER_LABEL_PREFIX__ _ +// NVPTX64:#define __WCHAR_MAX__ 2147483647 +// NVPTX64:#define __WCHAR_TYPE__ int +// NVPTX64:#define __WCHAR_WIDTH__ 32 +// NVPTX64:#define __WINT_TYPE__ int +// NVPTX64:#define __WINT_WIDTH__ 32 +// +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -check-prefix PPC603E %s +// +// PPC603E:#define _ARCH_603 1 +// PPC603E:#define _ARCH_603E 1 +// PPC603E:#define _ARCH_PPC 1 +// PPC603E:#define _ARCH_PPCGR 1 +// PPC603E:#define _BIG_ENDIAN 1 +// PPC603E-NOT:#define _LP64 +// PPC603E:#define __BIG_ENDIAN__ 1 +// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ +// PPC603E:#define __CHAR16_TYPE__ unsigned short +// PPC603E:#define __CHAR32_TYPE__ unsigned int +// PPC603E:#define __CHAR_BIT__ 8 +// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324 +// PPC603E:#define __DBL_DIG__ 15 +// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16 +// PPC603E:#define __DBL_HAS_DENORM__ 1 +// PPC603E:#define __DBL_HAS_INFINITY__ 1 +// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1 +// PPC603E:#define __DBL_MANT_DIG__ 53 +// PPC603E:#define __DBL_MAX_10_EXP__ 308 +// PPC603E:#define __DBL_MAX_EXP__ 1024 +// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308 +// PPC603E:#define __DBL_MIN_10_EXP__ (-307) +// PPC603E:#define __DBL_MIN_EXP__ (-1021) +// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308 +// PPC603E:#define __DECIMAL_DIG__ 33 +// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F +// PPC603E:#define __FLT_DIG__ 6 +// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F +// PPC603E:#define __FLT_EVAL_METHOD__ 0 +// PPC603E:#define __FLT_HAS_DENORM__ 1 +// PPC603E:#define __FLT_HAS_INFINITY__ 1 +// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1 +// PPC603E:#define __FLT_MANT_DIG__ 24 +// PPC603E:#define __FLT_MAX_10_EXP__ 38 +// PPC603E:#define __FLT_MAX_EXP__ 128 +// PPC603E:#define __FLT_MAX__ 3.40282347e+38F +// PPC603E:#define __FLT_MIN_10_EXP__ (-37) +// PPC603E:#define __FLT_MIN_EXP__ (-125) +// PPC603E:#define __FLT_MIN__ 1.17549435e-38F +// PPC603E:#define __FLT_RADIX__ 2 +// PPC603E:#define __INT16_TYPE__ short +// PPC603E:#define __INT32_TYPE__ int +// PPC603E:#define __INT64_C_SUFFIX__ LL +// PPC603E:#define __INT64_TYPE__ long long int +// PPC603E:#define __INT8_TYPE__ char +// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL +// PPC603E:#define __INTMAX_TYPE__ long long int +// PPC603E:#define __INTMAX_WIDTH__ 64 +// PPC603E:#define __INTPTR_TYPE__ long int +// PPC603E:#define __INTPTR_WIDTH__ 32 +// PPC603E:#define __INT_MAX__ 2147483647 +// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L +// PPC603E:#define __LDBL_DIG__ 31 +// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L +// PPC603E:#define __LDBL_HAS_DENORM__ 1 +// PPC603E:#define __LDBL_HAS_INFINITY__ 1 +// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1 +// PPC603E:#define __LDBL_MANT_DIG__ 106 +// PPC603E:#define __LDBL_MAX_10_EXP__ 308 +// PPC603E:#define __LDBL_MAX_EXP__ 1024 +// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L +// PPC603E:#define __LDBL_MIN_10_EXP__ (-291) +// PPC603E:#define __LDBL_MIN_EXP__ (-968) +// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L +// PPC603E:#define __LONG_DOUBLE_128__ 1 +// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL +// PPC603E:#define __LONG_MAX__ 2147483647L +// PPC603E-NOT:#define __LP64__ +// PPC603E:#define __NATURAL_ALIGNMENT__ 1 +// PPC603E:#define __POINTER_WIDTH__ 32 +// PPC603E:#define __POWERPC__ 1 +// PPC603E:#define __PTRDIFF_TYPE__ long int +// PPC603E:#define __PTRDIFF_WIDTH__ 32 +// PPC603E:#define __REGISTER_PREFIX__ +// PPC603E:#define __SCHAR_MAX__ 127 +// PPC603E:#define __SHRT_MAX__ 32767 +// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32 +// PPC603E:#define __SIZEOF_DOUBLE__ 8 +// PPC603E:#define __SIZEOF_FLOAT__ 4 +// PPC603E:#define __SIZEOF_INT__ 4 +// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16 +// PPC603E:#define __SIZEOF_LONG_LONG__ 8 +// PPC603E:#define __SIZEOF_LONG__ 4 +// PPC603E:#define __SIZEOF_POINTER__ 4 +// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4 +// PPC603E:#define __SIZEOF_SHORT__ 2 +// PPC603E:#define __SIZEOF_SIZE_T__ 4 +// PPC603E:#define __SIZEOF_WCHAR_T__ 4 +// PPC603E:#define __SIZEOF_WINT_T__ 4 +// PPC603E:#define __SIZE_TYPE__ long unsigned int +// PPC603E:#define __SIZE_WIDTH__ 32 +// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int +// PPC603E:#define __USER_LABEL_PREFIX__ _ +// PPC603E:#define __WCHAR_MAX__ 2147483647 +// PPC603E:#define __WCHAR_TYPE__ int +// PPC603E:#define __WCHAR_WIDTH__ 32 +// PPC603E:#define __WINT_TYPE__ int +// PPC603E:#define __WINT_WIDTH__ 32 +// PPC603E:#define __powerpc__ 1 +// PPC603E:#define __ppc__ 1 +// +// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64 %s // // PPC64:#define _ARCH_PPC 1 // PPC64:#define _ARCH_PPC64 1 +// PPC64:#define _ARCH_PPCGR 1 +// PPC64:#define _ARCH_PPCSQ 1 +// PPC64:#define _ARCH_PWR4 1 +// PPC64:#define _ARCH_PWR5 1 +// PPC64:#define _ARCH_PWR6 1 +// PPC64:#define _ARCH_PWR7 1 // PPC64:#define _BIG_ENDIAN 1 // PPC64:#define _LP64 1 // PPC64:#define __BIG_ENDIAN__ 1 +// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC64:#define __CHAR16_TYPE__ unsigned short // PPC64:#define __CHAR32_TYPE__ unsigned int // PPC64:#define __CHAR_BIT__ 8 @@ -1026,7 +1410,6 @@ // PPC64:#define __LONG_MAX__ 9223372036854775807L // PPC64:#define __LP64__ 1 // PPC64:#define __NATURAL_ALIGNMENT__ 1 -// PPC64:#define __NO_INLINE__ 1 // PPC64:#define __POINTER_WIDTH__ 64 // PPC64:#define __POWERPC__ 1 // PPC64:#define __PTRDIFF_TYPE__ long int @@ -1066,6 +1449,7 @@ // PPC64-LINUX:#define _BIG_ENDIAN 1 // PPC64-LINUX:#define _LP64 1 // PPC64-LINUX:#define __BIG_ENDIAN__ 1 +// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short // PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int // PPC64-LINUX:#define __CHAR_BIT__ 8 @@ -1128,7 +1512,6 @@ // PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L // PPC64-LINUX:#define __LP64__ 1 // PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1 -// PPC64-LINUX:#define __NO_INLINE__ 1 // PPC64-LINUX:#define __POINTER_WIDTH__ 64 // PPC64-LINUX:#define __POWERPC__ 1 // PPC64-LINUX:#define __PTRDIFF_TYPE__ long int @@ -1168,7 +1551,9 @@ // // PPC:#define _ARCH_PPC 1 // PPC:#define _BIG_ENDIAN 1 +// PPC-NOT:#define _LP64 // PPC:#define __BIG_ENDIAN__ 1 +// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC:#define __CHAR16_TYPE__ unsigned short // PPC:#define __CHAR32_TYPE__ unsigned int // PPC:#define __CHAR_BIT__ 8 @@ -1229,8 +1614,8 @@ // PPC:#define __LONG_DOUBLE_128__ 1 // PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL // PPC:#define __LONG_MAX__ 2147483647L +// PPC-NOT:#define __LP64__ // PPC:#define __NATURAL_ALIGNMENT__ 1 -// PPC:#define __NO_INLINE__ 1 // PPC:#define __POINTER_WIDTH__ 32 // PPC:#define __POWERPC__ 1 // PPC:#define __PTRDIFF_TYPE__ long int @@ -1266,7 +1651,9 @@ // // PPC-LINUX:#define _ARCH_PPC 1 // PPC-LINUX:#define _BIG_ENDIAN 1 +// PPC-LINUX-NOT:#define _LP64 // PPC-LINUX:#define __BIG_ENDIAN__ 1 +// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC-LINUX:#define __CHAR16_TYPE__ unsigned short // PPC-LINUX:#define __CHAR32_TYPE__ unsigned int // PPC-LINUX:#define __CHAR_BIT__ 8 @@ -1327,8 +1714,8 @@ // PPC-LINUX:#define __LONG_DOUBLE_128__ 1 // PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL // PPC-LINUX:#define __LONG_MAX__ 2147483647L +// PPC-LINUX-NOT:#define __LP64__ // PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1 -// PPC-LINUX:#define __NO_INLINE__ 1 // PPC-LINUX:#define __POINTER_WIDTH__ 32 // PPC-LINUX:#define __POWERPC__ 1 // PPC-LINUX:#define __PTRDIFF_TYPE__ int @@ -1364,6 +1751,8 @@ // // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -check-prefix SPARC %s // +// SPARC-NOT:#define _LP64 +// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // SPARC:#define __CHAR16_TYPE__ unsigned short // SPARC:#define __CHAR32_TYPE__ unsigned int // SPARC:#define __CHAR_BIT__ 8 @@ -1422,7 +1811,7 @@ // SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308 // SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL // SPARC:#define __LONG_MAX__ 2147483647L -// SPARC:#define __NO_INLINE__ 1 +// SPARC-NOT:#define __LP64__ // SPARC:#define __POINTER_WIDTH__ 32 // SPARC:#define __PTRDIFF_TYPE__ long int // SPARC:#define __PTRDIFF_WIDTH__ 32 @@ -1459,6 +1848,8 @@ // // RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s // +// TCE-NOT:#define _LP64 +// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // TCE:#define __CHAR16_TYPE__ unsigned short // TCE:#define __CHAR32_TYPE__ unsigned int // TCE:#define __CHAR_BIT__ 8 @@ -1515,7 +1906,7 @@ // TCE:#define __LDBL_MIN__ 1.17549435e-38F // TCE:#define __LONG_LONG_MAX__ 2147483647LL // TCE:#define __LONG_MAX__ 2147483647L -// TCE:#define __NO_INLINE__ 1 +// TCE-NOT:#define __LP64__ // TCE:#define __POINTER_WIDTH__ 32 // TCE:#define __PTRDIFF_TYPE__ int // TCE:#define __PTRDIFF_WIDTH__ 32 @@ -1552,6 +1943,7 @@ // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -check-prefix X86_64 %s // // X86_64:#define _LP64 1 +// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // X86_64:#define __CHAR16_TYPE__ unsigned short // X86_64:#define __CHAR32_TYPE__ unsigned int // X86_64:#define __CHAR_BIT__ 8 @@ -1613,7 +2005,6 @@ // X86_64:#define __LONG_MAX__ 9223372036854775807L // X86_64:#define __LP64__ 1 // X86_64:#define __MMX__ 1 -// X86_64:#define __NO_INLINE__ 1 // X86_64:#define __NO_MATH_INLINES 1 // X86_64:#define __POINTER_WIDTH__ 64 // X86_64:#define __PTRDIFF_TYPE__ long int @@ -1655,6 +2046,7 @@ // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -check-prefix X86_64-LINUX %s // // X86_64-LINUX:#define _LP64 1 +// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short // X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int // X86_64-LINUX:#define __CHAR_BIT__ 8 @@ -1716,7 +2108,6 @@ // X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L // X86_64-LINUX:#define __LP64__ 1 // X86_64-LINUX:#define __MMX__ 1 -// X86_64-LINUX:#define __NO_INLINE__ 1 // X86_64-LINUX:#define __NO_MATH_INLINES 1 // X86_64-LINUX:#define __POINTER_WIDTH__ 64 // X86_64-LINUX:#define __PTRDIFF_TYPE__ long int @@ -1755,10 +2146,13 @@ // X86_64-LINUX:#define __x86_64 1 // X86_64-LINUX:#define __x86_64__ 1 // -// RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -fobjc-fragile-abi -E -dM < /dev/null | FileCheck -check-prefix GNUSOURCE %s +// RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -check-prefix GNUSOURCE %s // GNUSOURCE:#define _GNU_SOURCE 1 // // RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -check-prefix NORTTI %s // NORTTI: __GXX_ABI_VERSION // NORTTI-NOT:#define __GXX_RTTI // NORTTI: __STDC__ +// +// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -check-prefix ANDROID %s +// ANDROID: __ANDROID__ 1 |