Home | History | Annotate | Download | only in Preprocessor
      1 // RUN: %clang_cc1 -E -dM -x assembler-with-cpp < /dev/null | FileCheck -check-prefix ASM %s
      2 //
      3 // ASM:#define __ASSEMBLER__ 1
      4 //
      5 //
      6 // RUN: %clang_cc1 -fblocks -E -dM < /dev/null | FileCheck -check-prefix BLOCKS %s
      7 //
      8 // BLOCKS:#define __BLOCKS__ 1
      9 // BLOCKS:#define __block __attribute__((__blocks__(byref)))
     10 //
     11 //
     12 // RUN: %clang_cc1 -x c++ -std=c++1z -E -dM < /dev/null | FileCheck -check-prefix CXX1Z %s
     13 //
     14 // CXX1Z:#define __GNUG__
     15 // CXX1Z:#define __GXX_EXPERIMENTAL_CXX0X__ 1
     16 // CXX1Z:#define __GXX_RTTI 1
     17 // CXX1Z:#define __GXX_WEAK__ 1
     18 // CXX1Z:#define __cplusplus 201406L
     19 // CXX1Z:#define __private_extern__ extern
     20 //
     21 //
     22 // RUN: %clang_cc1 -x c++ -std=c++1y -E -dM < /dev/null | FileCheck -check-prefix CXX1Y %s
     23 //
     24 // CXX1Y:#define __GNUG__
     25 // CXX1Y:#define __GXX_EXPERIMENTAL_CXX0X__ 1
     26 // CXX1Y:#define __GXX_RTTI 1
     27 // CXX1Y:#define __GXX_WEAK__ 1
     28 // CXX1Y:#define __cplusplus 201402L
     29 // CXX1Y:#define __private_extern__ extern
     30 //
     31 //
     32 // RUN: %clang_cc1 -x c++ -std=c++11 -E -dM < /dev/null | FileCheck -check-prefix CXX11 %s
     33 //
     34 // CXX11:#define __GNUG__
     35 // CXX11:#define __GXX_EXPERIMENTAL_CXX0X__ 1
     36 // CXX11:#define __GXX_RTTI 1
     37 // CXX11:#define __GXX_WEAK__ 1
     38 // CXX11:#define __cplusplus 201103L
     39 // CXX11:#define __private_extern__ extern
     40 //
     41 //
     42 // RUN: %clang_cc1 -x c++ -std=c++98 -E -dM < /dev/null | FileCheck -check-prefix CXX98 %s
     43 //
     44 // CXX98:#define __GNUG__
     45 // CXX98:#define __GXX_RTTI 1
     46 // CXX98:#define __GXX_WEAK__ 1
     47 // CXX98:#define __cplusplus 199711L
     48 // CXX98:#define __private_extern__ extern
     49 //
     50 //
     51 // RUN: %clang_cc1 -fdeprecated-macro -E -dM < /dev/null | FileCheck -check-prefix DEPRECATED %s
     52 //
     53 // DEPRECATED:#define __DEPRECATED 1
     54 //
     55 //
     56 // RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -check-prefix C99 %s
     57 //
     58 // C99:#define __STDC_VERSION__ 199901L
     59 // C99:#define __STRICT_ANSI__ 1
     60 //
     61 //
     62 // RUN: %clang_cc1 -std=c11 -E -dM < /dev/null | FileCheck -check-prefix C11 %s
     63 //
     64 // C11:#define __STDC_UTF_16__ 1
     65 // C11:#define __STDC_UTF_32__ 1
     66 // C11:#define __STDC_VERSION__ 201112L
     67 // C11:#define __STRICT_ANSI__ 1
     68 //
     69 //
     70 // RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix COMMON %s
     71 //
     72 // COMMON:#define __CONSTANT_CFSTRINGS__ 1
     73 // COMMON:#define __FINITE_MATH_ONLY__ 0
     74 // COMMON:#define __GNUC_MINOR__
     75 // COMMON:#define __GNUC_PATCHLEVEL__
     76 // COMMON:#define __GNUC_STDC_INLINE__ 1
     77 // COMMON:#define __GNUC__
     78 // COMMON:#define __GXX_ABI_VERSION
     79 // COMMON:#define __ORDER_BIG_ENDIAN__ 4321
     80 // COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234
     81 // COMMON:#define __ORDER_PDP_ENDIAN__ 3412
     82 // COMMON:#define __STDC_HOSTED__ 1
     83 // COMMON:#define __STDC_VERSION__
     84 // COMMON:#define __STDC__ 1
     85 // COMMON:#define __VERSION__
     86 // COMMON:#define __clang__ 1
     87 // COMMON:#define __clang_major__ {{[0-9]+}}
     88 // COMMON:#define __clang_minor__ {{[0-9]+}}
     89 // COMMON:#define __clang_patchlevel__ {{[0-9]+}}
     90 // COMMON:#define __clang_version__
     91 // COMMON:#define __llvm__ 1
     92 //
     93 //
     94 // RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -check-prefix FREESTANDING %s
     95 // FREESTANDING:#define __STDC_HOSTED__ 0
     96 //
     97 //
     98 // RUN: %clang_cc1 -x c++ -std=gnu++1z -E -dM < /dev/null | FileCheck -check-prefix GXX1Z %s
     99 //
    100 // GXX1Z:#define __GNUG__
    101 // GXX1Z:#define __GXX_WEAK__ 1
    102 // GXX1Z:#define __cplusplus 201406L
    103 // GXX1Z:#define __private_extern__ extern
    104 //
    105 //
    106 // RUN: %clang_cc1 -x c++ -std=gnu++1y -E -dM < /dev/null | FileCheck -check-prefix GXX1Y %s
    107 //
    108 // GXX1Y:#define __GNUG__
    109 // GXX1Y:#define __GXX_WEAK__ 1
    110 // GXX1Y:#define __cplusplus 201402L
    111 // GXX1Y:#define __private_extern__ extern
    112 //
    113 //
    114 // RUN: %clang_cc1 -x c++ -std=gnu++11 -E -dM < /dev/null | FileCheck -check-prefix GXX11 %s
    115 //
    116 // GXX11:#define __GNUG__
    117 // GXX11:#define __GXX_WEAK__ 1
    118 // GXX11:#define __cplusplus 201103L
    119 // GXX11:#define __private_extern__ extern
    120 //
    121 //
    122 // RUN: %clang_cc1 -x c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -check-prefix GXX98 %s
    123 //
    124 // GXX98:#define __GNUG__
    125 // GXX98:#define __GXX_WEAK__ 1
    126 // GXX98:#define __cplusplus 199711L
    127 // GXX98:#define __private_extern__ extern
    128 //
    129 //
    130 // RUN: %clang_cc1 -std=iso9899:199409 -E -dM < /dev/null | FileCheck -check-prefix C94 %s
    131 //
    132 // C94:#define __STDC_VERSION__ 199409L
    133 //
    134 //
    135 // RUN: %clang_cc1 -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -check-prefix MSEXT %s
    136 //
    137 // MSEXT-NOT:#define __STDC__
    138 // MSEXT:#define _INTEGRAL_MAX_BITS 64
    139 // MSEXT-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
    140 // MSEXT-NOT:#define _WCHAR_T_DEFINED 1
    141 //
    142 //
    143 // RUN: %clang_cc1 -x c++ -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -check-prefix MSEXT-CXX %s
    144 //
    145 // MSEXT-CXX:#define _NATIVE_WCHAR_T_DEFINED 1
    146 // MSEXT-CXX:#define _WCHAR_T_DEFINED 1
    147 //
    148 //
    149 // RUN: %clang_cc1 -x c++ -fno-wchar -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -check-prefix MSEXT-CXX-NOWCHAR %s
    150 //
    151 // MSEXT-CXX-NOWCHAR-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
    152 // MSEXT-CXX-NOWCHAR-NOT:#define _WCHAR_T_DEFINED 1
    153 //
    154 //
    155 // RUN: %clang_cc1 -x objective-c -E -dM < /dev/null | FileCheck -check-prefix OBJC %s
    156 //
    157 // OBJC:#define OBJC_NEW_PROPERTIES 1
    158 // OBJC:#define __NEXT_RUNTIME__ 1
    159 // OBJC:#define __OBJC__ 1
    160 //
    161 //
    162 // RUN: %clang_cc1 -x objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -check-prefix OBJCGC %s
    163 //
    164 // OBJCGC:#define __OBJC_GC__ 1
    165 //
    166 //
    167 // RUN: %clang_cc1 -x objective-c -fobjc-exceptions -E -dM < /dev/null | FileCheck -check-prefix NONFRAGILE %s
    168 //
    169 // NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
    170 // NONFRAGILE:#define __OBJC2__ 1
    171 //
    172 //
    173 // RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix O0 %s
    174 //
    175 // O0:#define __NO_INLINE__ 1
    176 // O0-NOT:#define __OPTIMIZE_SIZE__
    177 // O0-NOT:#define __OPTIMIZE__
    178 //
    179 //
    180 // RUN: %clang_cc1 -fno-inline -O3 -E -dM < /dev/null | FileCheck -check-prefix NO_INLINE %s
    181 //
    182 // NO_INLINE:#define __NO_INLINE__ 1
    183 // NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
    184 // NO_INLINE:#define __OPTIMIZE__
    185 //
    186 //
    187 // RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -check-prefix O1 %s
    188 //
    189 // O1-NOT:#define __OPTIMIZE_SIZE__
    190 // O1:#define __OPTIMIZE__ 1
    191 //
    192 //
    193 // RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -check-prefix Os %s
    194 //
    195 // Os:#define __OPTIMIZE_SIZE__ 1
    196 // Os:#define __OPTIMIZE__ 1
    197 //
    198 //
    199 // RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -check-prefix Oz %s
    200 //
    201 // Oz:#define __OPTIMIZE_SIZE__ 1
    202 // Oz:#define __OPTIMIZE__ 1
    203 //
    204 //
    205 // RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -check-prefix PASCAL %s
    206 //
    207 // PASCAL:#define __PASCAL_STRINGS__ 1
    208 //
    209 //
    210 // RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix SCHAR %s
    211 //
    212 // SCHAR:#define __STDC__ 1
    213 // SCHAR-NOT:#define __UNSIGNED_CHAR__
    214 // SCHAR:#define __clang__ 1
    215 //
    216 // RUN: %clang_cc1 -E -dM -fshort-wchar < /dev/null | FileCheck -check-prefix SHORTWCHAR %s
    217 // wchar_t is u16 for targeting Win32.
    218 // FIXME: Implement and check x86_64-cygwin.
    219 // RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=x86_64-w64-mingw32 < /dev/null | FileCheck -check-prefix SHORTWCHAR %s
    220 //
    221 // SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
    222 // SHORTWCHAR: #define __WCHAR_MAX__ 65535U
    223 // SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
    224 // SHORTWCHAR: #define __WCHAR_WIDTH__ 16
    225 //
    226 // RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=i686-unknown-unknown < /dev/null | FileCheck -check-prefix SHORTWCHAR2 %s
    227 // RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=x86_64-unknown-unknown < /dev/null | FileCheck -check-prefix SHORTWCHAR2 %s
    228 //
    229 // SHORTWCHAR2: #define __SIZEOF_WCHAR_T__ 4
    230 // SHORTWCHAR2: #define __WCHAR_WIDTH__ 32
    231 // Other definitions vary from platform to platform
    232 
    233 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-none < /dev/null | FileCheck -check-prefix AARCH64 %s
    234 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64-none-none < /dev/null | FileCheck -check-prefix AARCH64 %s
    235 //
    236 // AARCH64:#define _LP64 1
    237 // AARCH64-NOT:#define __AARCH64EB__ 1
    238 // AARCH64:#define __AARCH64EL__ 1
    239 // AARCH64-NOT:#define __AARCH_BIG_ENDIAN 1
    240 // AARCH64:#define __ARM_64BIT_STATE 1
    241 // AARCH64:#define __ARM_ARCH 8
    242 // AARCH64:#define __ARM_ARCH_ISA_A64 1
    243 // AARCH64-NOT:#define __ARM_BIG_ENDIAN 1
    244 // AARCH64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
    245 // AARCH64:#define __CHAR16_TYPE__ unsigned short
    246 // AARCH64:#define __CHAR32_TYPE__ unsigned int
    247 // AARCH64:#define __CHAR_BIT__ 8
    248 // AARCH64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
    249 // AARCH64:#define __DBL_DIG__ 15
    250 // AARCH64:#define __DBL_EPSILON__ 2.2204460492503131e-16
    251 // AARCH64:#define __DBL_HAS_DENORM__ 1
    252 // AARCH64:#define __DBL_HAS_INFINITY__ 1
    253 // AARCH64:#define __DBL_HAS_QUIET_NAN__ 1
    254 // AARCH64:#define __DBL_MANT_DIG__ 53
    255 // AARCH64:#define __DBL_MAX_10_EXP__ 308
    256 // AARCH64:#define __DBL_MAX_EXP__ 1024
    257 // AARCH64:#define __DBL_MAX__ 1.7976931348623157e+308
    258 // AARCH64:#define __DBL_MIN_10_EXP__ (-307)
    259 // AARCH64:#define __DBL_MIN_EXP__ (-1021)
    260 // AARCH64:#define __DBL_MIN__ 2.2250738585072014e-308
    261 // AARCH64:#define __DECIMAL_DIG__ 36
    262 // AARCH64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
    263 // AARCH64:#define __FLT_DIG__ 6
    264 // AARCH64:#define __FLT_EPSILON__ 1.19209290e-7F
    265 // AARCH64:#define __FLT_EVAL_METHOD__ 0
    266 // AARCH64:#define __FLT_HAS_DENORM__ 1
    267 // AARCH64:#define __FLT_HAS_INFINITY__ 1
    268 // AARCH64:#define __FLT_HAS_QUIET_NAN__ 1
    269 // AARCH64:#define __FLT_MANT_DIG__ 24
    270 // AARCH64:#define __FLT_MAX_10_EXP__ 38
    271 // AARCH64:#define __FLT_MAX_EXP__ 128
    272 // AARCH64:#define __FLT_MAX__ 3.40282347e+38F
    273 // AARCH64:#define __FLT_MIN_10_EXP__ (-37)
    274 // AARCH64:#define __FLT_MIN_EXP__ (-125)
    275 // AARCH64:#define __FLT_MIN__ 1.17549435e-38F
    276 // AARCH64:#define __FLT_RADIX__ 2
    277 // AARCH64:#define __INT16_MAX__ 32767
    278 // AARCH64:#define __INT16_TYPE__ short
    279 // AARCH64:#define __INT32_MAX__ 2147483647
    280 // AARCH64:#define __INT32_TYPE__ int
    281 // AARCH64:#define __INT64_C_SUFFIX__ L
    282 // AARCH64:#define __INT64_MAX__ 9223372036854775807L
    283 // AARCH64:#define __INT64_TYPE__ long int
    284 // AARCH64:#define __INT8_MAX__ 127
    285 // AARCH64:#define __INT8_TYPE__ char
    286 // AARCH64:#define __INTMAX_MAX__ 9223372036854775807L
    287 // AARCH64:#define __INTMAX_TYPE__ long int
    288 // AARCH64:#define __INTMAX_WIDTH__ 64
    289 // AARCH64:#define __INTPTR_MAX__ 9223372036854775807L
    290 // AARCH64:#define __INTPTR_TYPE__ long int
    291 // AARCH64:#define __INTPTR_WIDTH__ 64
    292 // AARCH64:#define __INT_FAST16_MAX__ 32767
    293 // AARCH64:#define __INT_FAST16_TYPE__ short
    294 // AARCH64:#define __INT_FAST32_MAX__ 2147483647
    295 // AARCH64:#define __INT_FAST32_TYPE__ int
    296 // AARCH64:#define __INT_FAST64_MAX__ 9223372036854775807L
    297 // AARCH64:#define __INT_FAST64_TYPE__ long int
    298 // AARCH64:#define __INT_FAST8_MAX__ 127
    299 // AARCH64:#define __INT_FAST8_TYPE__ char
    300 // AARCH64:#define __INT_LEAST16_MAX__ 32767
    301 // AARCH64:#define __INT_LEAST16_TYPE__ short
    302 // AARCH64:#define __INT_LEAST32_MAX__ 2147483647
    303 // AARCH64:#define __INT_LEAST32_TYPE__ int
    304 // AARCH64:#define __INT_LEAST64_MAX__ 9223372036854775807L
    305 // AARCH64:#define __INT_LEAST64_TYPE__ long int
    306 // AARCH64:#define __INT_LEAST8_MAX__ 127
    307 // AARCH64:#define __INT_LEAST8_TYPE__ char
    308 // AARCH64:#define __INT_MAX__ 2147483647
    309 // AARCH64:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
    310 // AARCH64:#define __LDBL_DIG__ 33
    311 // AARCH64:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
    312 // AARCH64:#define __LDBL_HAS_DENORM__ 1
    313 // AARCH64:#define __LDBL_HAS_INFINITY__ 1
    314 // AARCH64:#define __LDBL_HAS_QUIET_NAN__ 1
    315 // AARCH64:#define __LDBL_MANT_DIG__ 113
    316 // AARCH64:#define __LDBL_MAX_10_EXP__ 4932
    317 // AARCH64:#define __LDBL_MAX_EXP__ 16384
    318 // AARCH64:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
    319 // AARCH64:#define __LDBL_MIN_10_EXP__ (-4931)
    320 // AARCH64:#define __LDBL_MIN_EXP__ (-16381)
    321 // AARCH64:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
    322 // AARCH64:#define __LONG_LONG_MAX__ 9223372036854775807LL
    323 // AARCH64:#define __LONG_MAX__ 9223372036854775807L
    324 // AARCH64:#define __LP64__ 1
    325 // AARCH64:#define __POINTER_WIDTH__ 64
    326 // AARCH64:#define __PTRDIFF_TYPE__ long int
    327 // AARCH64:#define __PTRDIFF_WIDTH__ 64
    328 // AARCH64:#define __SCHAR_MAX__ 127
    329 // AARCH64:#define __SHRT_MAX__ 32767
    330 // AARCH64:#define __SIG_ATOMIC_WIDTH__ 32
    331 // AARCH64:#define __SIZEOF_DOUBLE__ 8
    332 // AARCH64:#define __SIZEOF_FLOAT__ 4
    333 // AARCH64:#define __SIZEOF_INT128__ 16
    334 // AARCH64:#define __SIZEOF_INT__ 4
    335 // AARCH64:#define __SIZEOF_LONG_DOUBLE__ 16
    336 // AARCH64:#define __SIZEOF_LONG_LONG__ 8
    337 // AARCH64:#define __SIZEOF_LONG__ 8
    338 // AARCH64:#define __SIZEOF_POINTER__ 8
    339 // AARCH64:#define __SIZEOF_PTRDIFF_T__ 8
    340 // AARCH64:#define __SIZEOF_SHORT__ 2
    341 // AARCH64:#define __SIZEOF_SIZE_T__ 8
    342 // AARCH64:#define __SIZEOF_WCHAR_T__ 4
    343 // AARCH64:#define __SIZEOF_WINT_T__ 4
    344 // AARCH64:#define __SIZE_MAX__ 18446744073709551615UL
    345 // AARCH64:#define __SIZE_TYPE__ long unsigned int
    346 // AARCH64:#define __SIZE_WIDTH__ 64
    347 // AARCH64:#define __UINT16_C_SUFFIX__ U
    348 // AARCH64:#define __UINT16_MAX__ 65535U
    349 // AARCH64:#define __UINT16_TYPE__ unsigned short
    350 // AARCH64:#define __UINT32_C_SUFFIX__ U
    351 // AARCH64:#define __UINT32_MAX__ 4294967295U
    352 // AARCH64:#define __UINT32_TYPE__ unsigned int
    353 // AARCH64:#define __UINT64_C_SUFFIX__ UL
    354 // AARCH64:#define __UINT64_MAX__ 18446744073709551615UL
    355 // AARCH64:#define __UINT64_TYPE__ long unsigned int
    356 // AARCH64:#define __UINT8_C_SUFFIX__ U
    357 // AARCH64:#define __UINT8_MAX__ 255U
    358 // AARCH64:#define __UINT8_TYPE__ unsigned char
    359 // AARCH64:#define __UINTMAX_MAX__ 18446744073709551615UL
    360 // AARCH64:#define __UINTMAX_TYPE__ long unsigned int
    361 // AARCH64:#define __UINTMAX_WIDTH__ 64
    362 // AARCH64:#define __UINTPTR_MAX__ 18446744073709551615UL
    363 // AARCH64:#define __UINTPTR_TYPE__ long unsigned int
    364 // AARCH64:#define __UINTPTR_WIDTH__ 64
    365 // AARCH64:#define __UINT_FAST16_MAX__ 65535U
    366 // AARCH64:#define __UINT_FAST16_TYPE__ unsigned short
    367 // AARCH64:#define __UINT_FAST32_MAX__ 4294967295U
    368 // AARCH64:#define __UINT_FAST32_TYPE__ unsigned int
    369 // AARCH64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
    370 // AARCH64:#define __UINT_FAST64_TYPE__ long unsigned int
    371 // AARCH64:#define __UINT_FAST8_MAX__ 255U
    372 // AARCH64:#define __UINT_FAST8_TYPE__ unsigned char
    373 // AARCH64:#define __UINT_LEAST16_MAX__ 65535U
    374 // AARCH64:#define __UINT_LEAST16_TYPE__ unsigned short
    375 // AARCH64:#define __UINT_LEAST32_MAX__ 4294967295U
    376 // AARCH64:#define __UINT_LEAST32_TYPE__ unsigned int
    377 // AARCH64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
    378 // AARCH64:#define __UINT_LEAST64_TYPE__ long unsigned int
    379 // AARCH64:#define __UINT_LEAST8_MAX__ 255U
    380 // AARCH64:#define __UINT_LEAST8_TYPE__ unsigned char
    381 // AARCH64:#define __USER_LABEL_PREFIX__ _
    382 // AARCH64:#define __WCHAR_MAX__ 4294967295U
    383 // AARCH64:#define __WCHAR_TYPE__ unsigned int
    384 // AARCH64:#define __WCHAR_UNSIGNED__ 1
    385 // AARCH64:#define __WCHAR_WIDTH__ 32
    386 // AARCH64:#define __WINT_TYPE__ int
    387 // AARCH64:#define __WINT_WIDTH__ 32
    388 // AARCH64:#define __aarch64__ 1
    389 //
    390 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64_be-none-none < /dev/null | FileCheck -check-prefix AARCH64-BE %s
    391 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64_be-none-none < /dev/null | FileCheck -check-prefix AARCH64-BE %s
    392 //
    393 // AARCH64-BE:#define _LP64 1
    394 // AARCH64-BE:#define __AARCH64EB__ 1
    395 // AARCH64-BE-NOT:#define __AARCH64EL__ 1
    396 // AARCH64-BE:#define __AARCH_BIG_ENDIAN 1
    397 // AARCH64-BE:#define __ARM_64BIT_STATE 1
    398 // AARCH64-BE:#define __ARM_ARCH 8
    399 // AARCH64-BE:#define __ARM_ARCH_ISA_A64 1
    400 // AARCH64-BE:#define __ARM_BIG_ENDIAN 1
    401 // AARCH64-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
    402 // AARCH64-BE:#define __CHAR16_TYPE__ unsigned short
    403 // AARCH64-BE:#define __CHAR32_TYPE__ unsigned int
    404 // AARCH64-BE:#define __CHAR_BIT__ 8
    405 // AARCH64-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
    406 // AARCH64-BE:#define __DBL_DIG__ 15
    407 // AARCH64-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
    408 // AARCH64-BE:#define __DBL_HAS_DENORM__ 1
    409 // AARCH64-BE:#define __DBL_HAS_INFINITY__ 1
    410 // AARCH64-BE:#define __DBL_HAS_QUIET_NAN__ 1
    411 // AARCH64-BE:#define __DBL_MANT_DIG__ 53
    412 // AARCH64-BE:#define __DBL_MAX_10_EXP__ 308
    413 // AARCH64-BE:#define __DBL_MAX_EXP__ 1024
    414 // AARCH64-BE:#define __DBL_MAX__ 1.7976931348623157e+308
    415 // AARCH64-BE:#define __DBL_MIN_10_EXP__ (-307)
    416 // AARCH64-BE:#define __DBL_MIN_EXP__ (-1021)
    417 // AARCH64-BE:#define __DBL_MIN__ 2.2250738585072014e-308
    418 // AARCH64-BE:#define __DECIMAL_DIG__ 36
    419 // AARCH64-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
    420 // AARCH64-BE:#define __FLT_DIG__ 6
    421 // AARCH64-BE:#define __FLT_EPSILON__ 1.19209290e-7F
    422 // AARCH64-BE:#define __FLT_EVAL_METHOD__ 0
    423 // AARCH64-BE:#define __FLT_HAS_DENORM__ 1
    424 // AARCH64-BE:#define __FLT_HAS_INFINITY__ 1
    425 // AARCH64-BE:#define __FLT_HAS_QUIET_NAN__ 1
    426 // AARCH64-BE:#define __FLT_MANT_DIG__ 24
    427 // AARCH64-BE:#define __FLT_MAX_10_EXP__ 38
    428 // AARCH64-BE:#define __FLT_MAX_EXP__ 128
    429 // AARCH64-BE:#define __FLT_MAX__ 3.40282347e+38F
    430 // AARCH64-BE:#define __FLT_MIN_10_EXP__ (-37)
    431 // AARCH64-BE:#define __FLT_MIN_EXP__ (-125)
    432 // AARCH64-BE:#define __FLT_MIN__ 1.17549435e-38F
    433 // AARCH64-BE:#define __FLT_RADIX__ 2
    434 // AARCH64-BE:#define __INT16_MAX__ 32767
    435 // AARCH64-BE:#define __INT16_TYPE__ short
    436 // AARCH64-BE:#define __INT32_MAX__ 2147483647
    437 // AARCH64-BE:#define __INT32_TYPE__ int
    438 // AARCH64-BE:#define __INT64_C_SUFFIX__ L
    439 // AARCH64-BE:#define __INT64_MAX__ 9223372036854775807L
    440 // AARCH64-BE:#define __INT64_TYPE__ long int
    441 // AARCH64-BE:#define __INT8_MAX__ 127
    442 // AARCH64-BE:#define __INT8_TYPE__ char
    443 // AARCH64-BE:#define __INTMAX_MAX__ 9223372036854775807L
    444 // AARCH64-BE:#define __INTMAX_TYPE__ long int
    445 // AARCH64-BE:#define __INTMAX_WIDTH__ 64
    446 // AARCH64-BE:#define __INTPTR_MAX__ 9223372036854775807L
    447 // AARCH64-BE:#define __INTPTR_TYPE__ long int
    448 // AARCH64-BE:#define __INTPTR_WIDTH__ 64
    449 // AARCH64-BE:#define __INT_FAST16_MAX__ 32767
    450 // AARCH64-BE:#define __INT_FAST16_TYPE__ short
    451 // AARCH64-BE:#define __INT_FAST32_MAX__ 2147483647
    452 // AARCH64-BE:#define __INT_FAST32_TYPE__ int
    453 // AARCH64-BE:#define __INT_FAST64_MAX__ 9223372036854775807L
    454 // AARCH64-BE:#define __INT_FAST64_TYPE__ long int
    455 // AARCH64-BE:#define __INT_FAST8_MAX__ 127
    456 // AARCH64-BE:#define __INT_FAST8_TYPE__ char
    457 // AARCH64-BE:#define __INT_LEAST16_MAX__ 32767
    458 // AARCH64-BE:#define __INT_LEAST16_TYPE__ short
    459 // AARCH64-BE:#define __INT_LEAST32_MAX__ 2147483647
    460 // AARCH64-BE:#define __INT_LEAST32_TYPE__ int
    461 // AARCH64-BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
    462 // AARCH64-BE:#define __INT_LEAST64_TYPE__ long int
    463 // AARCH64-BE:#define __INT_LEAST8_MAX__ 127
    464 // AARCH64-BE:#define __INT_LEAST8_TYPE__ char
    465 // AARCH64-BE:#define __INT_MAX__ 2147483647
    466 // AARCH64-BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
    467 // AARCH64-BE:#define __LDBL_DIG__ 33
    468 // AARCH64-BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
    469 // AARCH64-BE:#define __LDBL_HAS_DENORM__ 1
    470 // AARCH64-BE:#define __LDBL_HAS_INFINITY__ 1
    471 // AARCH64-BE:#define __LDBL_HAS_QUIET_NAN__ 1
    472 // AARCH64-BE:#define __LDBL_MANT_DIG__ 113
    473 // AARCH64-BE:#define __LDBL_MAX_10_EXP__ 4932
    474 // AARCH64-BE:#define __LDBL_MAX_EXP__ 16384
    475 // AARCH64-BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
    476 // AARCH64-BE:#define __LDBL_MIN_10_EXP__ (-4931)
    477 // AARCH64-BE:#define __LDBL_MIN_EXP__ (-16381)
    478 // AARCH64-BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
    479 // AARCH64-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
    480 // AARCH64-BE:#define __LONG_MAX__ 9223372036854775807L
    481 // AARCH64-BE:#define __LP64__ 1
    482 // AARCH64-BE:#define __POINTER_WIDTH__ 64
    483 // AARCH64-BE:#define __PTRDIFF_TYPE__ long int
    484 // AARCH64-BE:#define __PTRDIFF_WIDTH__ 64
    485 // AARCH64-BE:#define __SCHAR_MAX__ 127
    486 // AARCH64-BE:#define __SHRT_MAX__ 32767
    487 // AARCH64-BE:#define __SIG_ATOMIC_WIDTH__ 32
    488 // AARCH64-BE:#define __SIZEOF_DOUBLE__ 8
    489 // AARCH64-BE:#define __SIZEOF_FLOAT__ 4
    490 // AARCH64-BE:#define __SIZEOF_INT128__ 16
    491 // AARCH64-BE:#define __SIZEOF_INT__ 4
    492 // AARCH64-BE:#define __SIZEOF_LONG_DOUBLE__ 16
    493 // AARCH64-BE:#define __SIZEOF_LONG_LONG__ 8
    494 // AARCH64-BE:#define __SIZEOF_LONG__ 8
    495 // AARCH64-BE:#define __SIZEOF_POINTER__ 8
    496 // AARCH64-BE:#define __SIZEOF_PTRDIFF_T__ 8
    497 // AARCH64-BE:#define __SIZEOF_SHORT__ 2
    498 // AARCH64-BE:#define __SIZEOF_SIZE_T__ 8
    499 // AARCH64-BE:#define __SIZEOF_WCHAR_T__ 4
    500 // AARCH64-BE:#define __SIZEOF_WINT_T__ 4
    501 // AARCH64-BE:#define __SIZE_MAX__ 18446744073709551615UL
    502 // AARCH64-BE:#define __SIZE_TYPE__ long unsigned int
    503 // AARCH64-BE:#define __SIZE_WIDTH__ 64
    504 // AARCH64-BE:#define __UINT16_C_SUFFIX__ U
    505 // AARCH64-BE:#define __UINT16_MAX__ 65535U
    506 // AARCH64-BE:#define __UINT16_TYPE__ unsigned short
    507 // AARCH64-BE:#define __UINT32_C_SUFFIX__ U
    508 // AARCH64-BE:#define __UINT32_MAX__ 4294967295U
    509 // AARCH64-BE:#define __UINT32_TYPE__ unsigned int
    510 // AARCH64-BE:#define __UINT64_C_SUFFIX__ UL
    511 // AARCH64-BE:#define __UINT64_MAX__ 18446744073709551615UL
    512 // AARCH64-BE:#define __UINT64_TYPE__ long unsigned int
    513 // AARCH64-BE:#define __UINT8_C_SUFFIX__ U
    514 // AARCH64-BE:#define __UINT8_MAX__ 255U
    515 // AARCH64-BE:#define __UINT8_TYPE__ unsigned char
    516 // AARCH64-BE:#define __UINTMAX_MAX__ 18446744073709551615UL
    517 // AARCH64-BE:#define __UINTMAX_TYPE__ long unsigned int
    518 // AARCH64-BE:#define __UINTMAX_WIDTH__ 64
    519 // AARCH64-BE:#define __UINTPTR_MAX__ 18446744073709551615UL
    520 // AARCH64-BE:#define __UINTPTR_TYPE__ long unsigned int
    521 // AARCH64-BE:#define __UINTPTR_WIDTH__ 64
    522 // AARCH64-BE:#define __UINT_FAST16_MAX__ 65535U
    523 // AARCH64-BE:#define __UINT_FAST16_TYPE__ unsigned short
    524 // AARCH64-BE:#define __UINT_FAST32_MAX__ 4294967295U
    525 // AARCH64-BE:#define __UINT_FAST32_TYPE__ unsigned int
    526 // AARCH64-BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
    527 // AARCH64-BE:#define __UINT_FAST64_TYPE__ long unsigned int
    528 // AARCH64-BE:#define __UINT_FAST8_MAX__ 255U
    529 // AARCH64-BE:#define __UINT_FAST8_TYPE__ unsigned char
    530 // AARCH64-BE:#define __UINT_LEAST16_MAX__ 65535U
    531 // AARCH64-BE:#define __UINT_LEAST16_TYPE__ unsigned short
    532 // AARCH64-BE:#define __UINT_LEAST32_MAX__ 4294967295U
    533 // AARCH64-BE:#define __UINT_LEAST32_TYPE__ unsigned int
    534 // AARCH64-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
    535 // AARCH64-BE:#define __UINT_LEAST64_TYPE__ long unsigned int
    536 // AARCH64-BE:#define __UINT_LEAST8_MAX__ 255U
    537 // AARCH64-BE:#define __UINT_LEAST8_TYPE__ unsigned char
    538 // AARCH64-BE:#define __USER_LABEL_PREFIX__ _
    539 // AARCH64-BE:#define __WCHAR_MAX__ 4294967295U
    540 // AARCH64-BE:#define __WCHAR_TYPE__ unsigned int
    541 // AARCH64-BE:#define __WCHAR_UNSIGNED__ 1
    542 // AARCH64-BE:#define __WCHAR_WIDTH__ 32
    543 // AARCH64-BE:#define __WINT_TYPE__ int
    544 // AARCH64-BE:#define __WINT_WIDTH__ 32
    545 // AARCH64-BE:#define __aarch64__ 1
    546 //
    547 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-netbsd < /dev/null | FileCheck -check-prefix AARCH64-NETBSD %s
    548 //
    549 // AARCH64-NETBSD:#define _LP64 1
    550 // AARCH64-NETBSD-NOT:#define __AARCH64EB__ 1
    551 // AARCH64-NETBSD:#define __AARCH64EL__ 1
    552 // AARCH64-NETBSD-NOT:#define __AARCH_BIG_ENDIAN 1
    553 // AARCH64-NETBSD:#define __ARM_64BIT_STATE 1
    554 // AARCH64-NETBSD:#define __ARM_ARCH 8
    555 // AARCH64-NETBSD:#define __ARM_ARCH_ISA_A64 1
    556 // AARCH64-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
    557 // AARCH64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
    558 // AARCH64-NETBSD:#define __CHAR16_TYPE__ unsigned short
    559 // AARCH64-NETBSD:#define __CHAR32_TYPE__ unsigned int
    560 // AARCH64-NETBSD:#define __CHAR_BIT__ 8
    561 // AARCH64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
    562 // AARCH64-NETBSD:#define __DBL_DIG__ 15
    563 // AARCH64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
    564 // AARCH64-NETBSD:#define __DBL_HAS_DENORM__ 1
    565 // AARCH64-NETBSD:#define __DBL_HAS_INFINITY__ 1
    566 // AARCH64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
    567 // AARCH64-NETBSD:#define __DBL_MANT_DIG__ 53
    568 // AARCH64-NETBSD:#define __DBL_MAX_10_EXP__ 308
    569 // AARCH64-NETBSD:#define __DBL_MAX_EXP__ 1024
    570 // AARCH64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
    571 // AARCH64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
    572 // AARCH64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
    573 // AARCH64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
    574 // AARCH64-NETBSD:#define __DECIMAL_DIG__ 36
    575 // AARCH64-NETBSD:#define __ELF__ 1
    576 // AARCH64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
    577 // AARCH64-NETBSD:#define __FLT_DIG__ 6
    578 // AARCH64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
    579 // AARCH64-NETBSD:#define __FLT_EVAL_METHOD__ 0
    580 // AARCH64-NETBSD:#define __FLT_HAS_DENORM__ 1
    581 // AARCH64-NETBSD:#define __FLT_HAS_INFINITY__ 1
    582 // AARCH64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
    583 // AARCH64-NETBSD:#define __FLT_MANT_DIG__ 24
    584 // AARCH64-NETBSD:#define __FLT_MAX_10_EXP__ 38
    585 // AARCH64-NETBSD:#define __FLT_MAX_EXP__ 128
    586 // AARCH64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
    587 // AARCH64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
    588 // AARCH64-NETBSD:#define __FLT_MIN_EXP__ (-125)
    589 // AARCH64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
    590 // AARCH64-NETBSD:#define __FLT_RADIX__ 2
    591 // AARCH64-NETBSD:#define __INT16_MAX__ 32767
    592 // AARCH64-NETBSD:#define __INT16_TYPE__ short
    593 // AARCH64-NETBSD:#define __INT32_MAX__ 2147483647
    594 // AARCH64-NETBSD:#define __INT32_TYPE__ int
    595 // AARCH64-NETBSD:#define __INT64_C_SUFFIX__ LL
    596 // AARCH64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
    597 // AARCH64-NETBSD:#define __INT64_TYPE__ long long int
    598 // AARCH64-NETBSD:#define __INT8_MAX__ 127
    599 // AARCH64-NETBSD:#define __INT8_TYPE__ char
    600 // AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
    601 // AARCH64-NETBSD:#define __INTMAX_TYPE__ long long int
    602 // AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64
    603 // AARCH64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
    604 // AARCH64-NETBSD:#define __INTPTR_TYPE__ long int
    605 // AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64
    606 // AARCH64-NETBSD:#define __INT_FAST16_MAX__ 32767
    607 // AARCH64-NETBSD:#define __INT_FAST16_TYPE__ short
    608 // AARCH64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
    609 // AARCH64-NETBSD:#define __INT_FAST32_TYPE__ int
    610 // AARCH64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
    611 // AARCH64-NETBSD:#define __INT_FAST64_TYPE__ long int
    612 // AARCH64-NETBSD:#define __INT_FAST8_MAX__ 127
    613 // AARCH64-NETBSD:#define __INT_FAST8_TYPE__ char
    614 // AARCH64-NETBSD:#define __INT_LEAST16_MAX__ 32767
    615 // AARCH64-NETBSD:#define __INT_LEAST16_TYPE__ short
    616 // AARCH64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
    617 // AARCH64-NETBSD:#define __INT_LEAST32_TYPE__ int
    618 // AARCH64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
    619 // AARCH64-NETBSD:#define __INT_LEAST64_TYPE__ long int
    620 // AARCH64-NETBSD:#define __INT_LEAST8_MAX__ 127
    621 // AARCH64-NETBSD:#define __INT_LEAST8_TYPE__ char
    622 // AARCH64-NETBSD:#define __INT_MAX__ 2147483647
    623 // AARCH64-NETBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
    624 // AARCH64-NETBSD:#define __LDBL_DIG__ 33
    625 // AARCH64-NETBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
    626 // AARCH64-NETBSD:#define __LDBL_HAS_DENORM__ 1
    627 // AARCH64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
    628 // AARCH64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
    629 // AARCH64-NETBSD:#define __LDBL_MANT_DIG__ 113
    630 // AARCH64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
    631 // AARCH64-NETBSD:#define __LDBL_MAX_EXP__ 16384
    632 // AARCH64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
    633 // AARCH64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
    634 // AARCH64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
    635 // AARCH64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
    636 // AARCH64-NETBSD:#define __LITTLE_ENDIAN__ 1
    637 // AARCH64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
    638 // AARCH64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
    639 // AARCH64-NETBSD:#define __LP64__ 1
    640 // AARCH64-NETBSD:#define __NetBSD__ 1
    641 // AARCH64-NETBSD:#define __POINTER_WIDTH__ 64
    642 // AARCH64-NETBSD:#define __PTRDIFF_TYPE__ long int
    643 // AARCH64-NETBSD:#define __PTRDIFF_WIDTH__ 64
    644 // AARCH64-NETBSD:#define __SCHAR_MAX__ 127
    645 // AARCH64-NETBSD:#define __SHRT_MAX__ 32767
    646 // AARCH64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
    647 // AARCH64-NETBSD:#define __SIZEOF_DOUBLE__ 8
    648 // AARCH64-NETBSD:#define __SIZEOF_FLOAT__ 4
    649 // AARCH64-NETBSD:#define __SIZEOF_INT__ 4
    650 // AARCH64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
    651 // AARCH64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
    652 // AARCH64-NETBSD:#define __SIZEOF_LONG__ 8
    653 // AARCH64-NETBSD:#define __SIZEOF_POINTER__ 8
    654 // AARCH64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
    655 // AARCH64-NETBSD:#define __SIZEOF_SHORT__ 2
    656 // AARCH64-NETBSD:#define __SIZEOF_SIZE_T__ 8
    657 // AARCH64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
    658 // AARCH64-NETBSD:#define __SIZEOF_WINT_T__ 4
    659 // AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
    660 // AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int
    661 // AARCH64-NETBSD:#define __SIZE_WIDTH__ 64
    662 // AARCH64-NETBSD:#define __UINT16_C_SUFFIX__ U
    663 // AARCH64-NETBSD:#define __UINT16_MAX__ 65535U
    664 // AARCH64-NETBSD:#define __UINT16_TYPE__ unsigned short
    665 // AARCH64-NETBSD:#define __UINT32_C_SUFFIX__ U
    666 // AARCH64-NETBSD:#define __UINT32_MAX__ 4294967295U
    667 // AARCH64-NETBSD:#define __UINT32_TYPE__ unsigned int
    668 // AARCH64-NETBSD:#define __UINT64_C_SUFFIX__ UL
    669 // AARCH64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
    670 // AARCH64-NETBSD:#define __UINT64_TYPE__ long unsigned int
    671 // AARCH64-NETBSD:#define __UINT8_C_SUFFIX__ U
    672 // AARCH64-NETBSD:#define __UINT8_MAX__ 255U
    673 // AARCH64-NETBSD:#define __UINT8_TYPE__ unsigned char
    674 // AARCH64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
    675 // AARCH64-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
    676 // AARCH64-NETBSD:#define __UINTMAX_WIDTH__ 64
    677 // AARCH64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
    678 // AARCH64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
    679 // AARCH64-NETBSD:#define __UINTPTR_WIDTH__ 64
    680 // AARCH64-NETBSD:#define __UINT_FAST16_MAX__ 65535U
    681 // AARCH64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
    682 // AARCH64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
    683 // AARCH64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
    684 // AARCH64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
    685 // AARCH64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
    686 // AARCH64-NETBSD:#define __UINT_FAST8_MAX__ 255U
    687 // AARCH64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
    688 // AARCH64-NETBSD:#define __UINT_LEAST16_MAX__ 65535U
    689 // AARCH64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
    690 // AARCH64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
    691 // AARCH64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
    692 // AARCH64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
    693 // AARCH64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
    694 // AARCH64-NETBSD:#define __UINT_LEAST8_MAX__ 255U
    695 // AARCH64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
    696 // AARCH64-NETBSD:#define __USER_LABEL_PREFIX__
    697 // AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647
    698 // AARCH64-NETBSD:#define __WCHAR_TYPE__ int
    699 // AARCH64-NETBSD:#define __WCHAR_WIDTH__ 32
    700 // AARCH64-NETBSD:#define __WINT_TYPE__ int
    701 // AARCH64-NETBSD:#define __WINT_WIDTH__ 32
    702 // AARCH64-NETBSD:#define __aarch64__ 1
    703 
    704 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -check-prefix ARM %s
    705 //
    706 // ARM-NOT:#define _LP64
    707 // ARM:#define __APCS_32__ 1
    708 // ARM-NOT:#define __ARMEB__ 1
    709 // ARM:#define __ARMEL__ 1
    710 // ARM:#define __ARM_ARCH_6J__ 1
    711 // ARM-NOT:#define __ARM_BIG_ENDIAN 1
    712 // ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
    713 // ARM:#define __CHAR16_TYPE__ unsigned short
    714 // ARM:#define __CHAR32_TYPE__ unsigned int
    715 // ARM:#define __CHAR_BIT__ 8
    716 // ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
    717 // ARM:#define __DBL_DIG__ 15
    718 // ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
    719 // ARM:#define __DBL_HAS_DENORM__ 1
    720 // ARM:#define __DBL_HAS_INFINITY__ 1
    721 // ARM:#define __DBL_HAS_QUIET_NAN__ 1
    722 // ARM:#define __DBL_MANT_DIG__ 53
    723 // ARM:#define __DBL_MAX_10_EXP__ 308
    724 // ARM:#define __DBL_MAX_EXP__ 1024
    725 // ARM:#define __DBL_MAX__ 1.7976931348623157e+308
    726 // ARM:#define __DBL_MIN_10_EXP__ (-307)
    727 // ARM:#define __DBL_MIN_EXP__ (-1021)
    728 // ARM:#define __DBL_MIN__ 2.2250738585072014e-308
    729 // ARM:#define __DECIMAL_DIG__ 17
    730 // ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
    731 // ARM:#define __FLT_DIG__ 6
    732 // ARM:#define __FLT_EPSILON__ 1.19209290e-7F
    733 // ARM:#define __FLT_EVAL_METHOD__ 0
    734 // ARM:#define __FLT_HAS_DENORM__ 1
    735 // ARM:#define __FLT_HAS_INFINITY__ 1
    736 // ARM:#define __FLT_HAS_QUIET_NAN__ 1
    737 // ARM:#define __FLT_MANT_DIG__ 24
    738 // ARM:#define __FLT_MAX_10_EXP__ 38
    739 // ARM:#define __FLT_MAX_EXP__ 128
    740 // ARM:#define __FLT_MAX__ 3.40282347e+38F
    741 // ARM:#define __FLT_MIN_10_EXP__ (-37)
    742 // ARM:#define __FLT_MIN_EXP__ (-125)
    743 // ARM:#define __FLT_MIN__ 1.17549435e-38F
    744 // ARM:#define __FLT_RADIX__ 2
    745 // ARM:#define __INT16_MAX__ 32767
    746 // ARM:#define __INT16_TYPE__ short
    747 // ARM:#define __INT32_MAX__ 2147483647
    748 // ARM:#define __INT32_TYPE__ int
    749 // ARM:#define __INT64_C_SUFFIX__ LL
    750 // ARM:#define __INT64_MAX__ 9223372036854775807LL
    751 // ARM:#define __INT64_TYPE__ long long int
    752 // ARM:#define __INT8_MAX__ 127
    753 // ARM:#define __INT8_TYPE__ char
    754 // ARM:#define __INTMAX_MAX__ 9223372036854775807LL
    755 // ARM:#define __INTMAX_TYPE__ long long int
    756 // ARM:#define __INTMAX_WIDTH__ 64
    757 // ARM:#define __INTPTR_MAX__ 2147483647L
    758 // ARM:#define __INTPTR_TYPE__ long int
    759 // ARM:#define __INTPTR_WIDTH__ 32
    760 // ARM:#define __INT_FAST16_MAX__ 32767
    761 // ARM:#define __INT_FAST16_TYPE__ short
    762 // ARM:#define __INT_FAST32_MAX__ 2147483647
    763 // ARM:#define __INT_FAST32_TYPE__ int
    764 // ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
    765 // ARM:#define __INT_FAST64_TYPE__ long long int
    766 // ARM:#define __INT_FAST8_MAX__ 127
    767 // ARM:#define __INT_FAST8_TYPE__ char
    768 // ARM:#define __INT_LEAST16_MAX__ 32767
    769 // ARM:#define __INT_LEAST16_TYPE__ short
    770 // ARM:#define __INT_LEAST32_MAX__ 2147483647
    771 // ARM:#define __INT_LEAST32_TYPE__ int
    772 // ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
    773 // ARM:#define __INT_LEAST64_TYPE__ long long int
    774 // ARM:#define __INT_LEAST8_MAX__ 127
    775 // ARM:#define __INT_LEAST8_TYPE__ char
    776 // ARM:#define __INT_MAX__ 2147483647
    777 // ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
    778 // ARM:#define __LDBL_DIG__ 15
    779 // ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
    780 // ARM:#define __LDBL_HAS_DENORM__ 1
    781 // ARM:#define __LDBL_HAS_INFINITY__ 1
    782 // ARM:#define __LDBL_HAS_QUIET_NAN__ 1
    783 // ARM:#define __LDBL_MANT_DIG__ 53
    784 // ARM:#define __LDBL_MAX_10_EXP__ 308
    785 // ARM:#define __LDBL_MAX_EXP__ 1024
    786 // ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
    787 // ARM:#define __LDBL_MIN_10_EXP__ (-307)
    788 // ARM:#define __LDBL_MIN_EXP__ (-1021)
    789 // ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
    790 // ARM:#define __LITTLE_ENDIAN__ 1
    791 // ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
    792 // ARM:#define __LONG_MAX__ 2147483647L
    793 // ARM-NOT:#define __LP64__
    794 // ARM:#define __POINTER_WIDTH__ 32
    795 // ARM:#define __PTRDIFF_TYPE__ int
    796 // ARM:#define __PTRDIFF_WIDTH__ 32
    797 // ARM:#define __REGISTER_PREFIX__
    798 // ARM:#define __SCHAR_MAX__ 127
    799 // ARM:#define __SHRT_MAX__ 32767
    800 // ARM:#define __SIG_ATOMIC_WIDTH__ 32
    801 // ARM:#define __SIZEOF_DOUBLE__ 8
    802 // ARM:#define __SIZEOF_FLOAT__ 4
    803 // ARM:#define __SIZEOF_INT__ 4
    804 // ARM:#define __SIZEOF_LONG_DOUBLE__ 8
    805 // ARM:#define __SIZEOF_LONG_LONG__ 8
    806 // ARM:#define __SIZEOF_LONG__ 4
    807 // ARM:#define __SIZEOF_POINTER__ 4
    808 // ARM:#define __SIZEOF_PTRDIFF_T__ 4
    809 // ARM:#define __SIZEOF_SHORT__ 2
    810 // ARM:#define __SIZEOF_SIZE_T__ 4
    811 // ARM:#define __SIZEOF_WCHAR_T__ 4
    812 // ARM:#define __SIZEOF_WINT_T__ 4
    813 // ARM:#define __SIZE_MAX__ 4294967295U
    814 // ARM:#define __SIZE_TYPE__ unsigned int
    815 // ARM:#define __SIZE_WIDTH__ 32
    816 // ARM:#define __THUMB_INTERWORK__ 1
    817 // ARM:#define __UINT16_C_SUFFIX__ U
    818 // ARM:#define __UINT16_MAX__ 65535U
    819 // ARM:#define __UINT16_TYPE__ unsigned short
    820 // ARM:#define __UINT32_C_SUFFIX__ U
    821 // ARM:#define __UINT32_MAX__ 4294967295U
    822 // ARM:#define __UINT32_TYPE__ unsigned int
    823 // ARM:#define __UINT64_C_SUFFIX__ ULL
    824 // ARM:#define __UINT64_MAX__ 18446744073709551615ULL
    825 // ARM:#define __UINT64_TYPE__ long long unsigned int
    826 // ARM:#define __UINT8_C_SUFFIX__ U
    827 // ARM:#define __UINT8_MAX__ 255U
    828 // ARM:#define __UINT8_TYPE__ unsigned char
    829 // ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
    830 // ARM:#define __UINTMAX_TYPE__ long long unsigned int
    831 // ARM:#define __UINTMAX_WIDTH__ 64
    832 // ARM:#define __UINTPTR_MAX__ 4294967295U
    833 // ARM:#define __UINTPTR_TYPE__ unsigned int
    834 // ARM:#define __UINTPTR_WIDTH__ 32
    835 // ARM:#define __UINT_FAST16_MAX__ 65535U
    836 // ARM:#define __UINT_FAST16_TYPE__ unsigned short
    837 // ARM:#define __UINT_FAST32_MAX__ 4294967295U
    838 // ARM:#define __UINT_FAST32_TYPE__ unsigned int
    839 // ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
    840 // ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
    841 // ARM:#define __UINT_FAST8_MAX__ 255U
    842 // ARM:#define __UINT_FAST8_TYPE__ unsigned char
    843 // ARM:#define __UINT_LEAST16_MAX__ 65535U
    844 // ARM:#define __UINT_LEAST16_TYPE__ unsigned short
    845 // ARM:#define __UINT_LEAST32_MAX__ 4294967295U
    846 // ARM:#define __UINT_LEAST32_TYPE__ unsigned int
    847 // ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
    848 // ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
    849 // ARM:#define __UINT_LEAST8_MAX__ 255U
    850 // ARM:#define __UINT_LEAST8_TYPE__ unsigned char
    851 // ARM:#define __USER_LABEL_PREFIX__ _
    852 // ARM:#define __WCHAR_MAX__ 4294967295U
    853 // ARM:#define __WCHAR_TYPE__ unsigned int
    854 // ARM:#define __WCHAR_WIDTH__ 32
    855 // ARM:#define __WINT_TYPE__ int
    856 // ARM:#define __WINT_WIDTH__ 32
    857 // ARM:#define __arm 1
    858 // ARM:#define __arm__ 1
    859 
    860 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armeb-none-none < /dev/null | FileCheck -check-prefix ARM-BE %s
    861 //
    862 // ARM-BE-NOT:#define _LP64
    863 // ARM-BE:#define __APCS_32__ 1
    864 // ARM-BE:#define __ARMEB__ 1
    865 // ARM-BE-NOT:#define __ARMEL__ 1
    866 // ARM-BE:#define __ARM_ARCH_6J__ 1
    867 // ARM-BE:#define __ARM_BIG_ENDIAN 1
    868 // ARM-BE:#define __BIG_ENDIAN__ 1
    869 // ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
    870 // ARM-BE:#define __CHAR16_TYPE__ unsigned short
    871 // ARM-BE:#define __CHAR32_TYPE__ unsigned int
    872 // ARM-BE:#define __CHAR_BIT__ 8
    873 // ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
    874 // ARM-BE:#define __DBL_DIG__ 15
    875 // ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
    876 // ARM-BE:#define __DBL_HAS_DENORM__ 1
    877 // ARM-BE:#define __DBL_HAS_INFINITY__ 1
    878 // ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
    879 // ARM-BE:#define __DBL_MANT_DIG__ 53
    880 // ARM-BE:#define __DBL_MAX_10_EXP__ 308
    881 // ARM-BE:#define __DBL_MAX_EXP__ 1024
    882 // ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
    883 // ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
    884 // ARM-BE:#define __DBL_MIN_EXP__ (-1021)
    885 // ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
    886 // ARM-BE:#define __DECIMAL_DIG__ 17
    887 // ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
    888 // ARM-BE:#define __FLT_DIG__ 6
    889 // ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
    890 // ARM-BE:#define __FLT_EVAL_METHOD__ 0
    891 // ARM-BE:#define __FLT_HAS_DENORM__ 1
    892 // ARM-BE:#define __FLT_HAS_INFINITY__ 1
    893 // ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
    894 // ARM-BE:#define __FLT_MANT_DIG__ 24
    895 // ARM-BE:#define __FLT_MAX_10_EXP__ 38
    896 // ARM-BE:#define __FLT_MAX_EXP__ 128
    897 // ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
    898 // ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
    899 // ARM-BE:#define __FLT_MIN_EXP__ (-125)
    900 // ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
    901 // ARM-BE:#define __FLT_RADIX__ 2
    902 // ARM-BE:#define __INT16_MAX__ 32767
    903 // ARM-BE:#define __INT16_TYPE__ short
    904 // ARM-BE:#define __INT32_MAX__ 2147483647
    905 // ARM-BE:#define __INT32_TYPE__ int
    906 // ARM-BE:#define __INT64_C_SUFFIX__ LL
    907 // ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
    908 // ARM-BE:#define __INT64_TYPE__ long long int
    909 // ARM-BE:#define __INT8_MAX__ 127
    910 // ARM-BE:#define __INT8_TYPE__ char
    911 // ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
    912 // ARM-BE:#define __INTMAX_TYPE__ long long int
    913 // ARM-BE:#define __INTMAX_WIDTH__ 64
    914 // ARM-BE:#define __INTPTR_MAX__ 2147483647L
    915 // ARM-BE:#define __INTPTR_TYPE__ long int
    916 // ARM-BE:#define __INTPTR_WIDTH__ 32
    917 // ARM-BE:#define __INT_FAST16_MAX__ 32767
    918 // ARM-BE:#define __INT_FAST16_TYPE__ short
    919 // ARM-BE:#define __INT_FAST32_MAX__ 2147483647
    920 // ARM-BE:#define __INT_FAST32_TYPE__ int
    921 // ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
    922 // ARM-BE:#define __INT_FAST64_TYPE__ long long int
    923 // ARM-BE:#define __INT_FAST8_MAX__ 127
    924 // ARM-BE:#define __INT_FAST8_TYPE__ char
    925 // ARM-BE:#define __INT_LEAST16_MAX__ 32767
    926 // ARM-BE:#define __INT_LEAST16_TYPE__ short
    927 // ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
    928 // ARM-BE:#define __INT_LEAST32_TYPE__ int
    929 // ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
    930 // ARM-BE:#define __INT_LEAST64_TYPE__ long long int
    931 // ARM-BE:#define __INT_LEAST8_MAX__ 127
    932 // ARM-BE:#define __INT_LEAST8_TYPE__ char
    933 // ARM-BE:#define __INT_MAX__ 2147483647
    934 // ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
    935 // ARM-BE:#define __LDBL_DIG__ 15
    936 // ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
    937 // ARM-BE:#define __LDBL_HAS_DENORM__ 1
    938 // ARM-BE:#define __LDBL_HAS_INFINITY__ 1
    939 // ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
    940 // ARM-BE:#define __LDBL_MANT_DIG__ 53
    941 // ARM-BE:#define __LDBL_MAX_10_EXP__ 308
    942 // ARM-BE:#define __LDBL_MAX_EXP__ 1024
    943 // ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
    944 // ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
    945 // ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
    946 // ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
    947 // ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
    948 // ARM-BE:#define __LONG_MAX__ 2147483647L
    949 // ARM-BE-NOT:#define __LP64__
    950 // ARM-BE:#define __POINTER_WIDTH__ 32
    951 // ARM-BE:#define __PTRDIFF_TYPE__ int
    952 // ARM-BE:#define __PTRDIFF_WIDTH__ 32
    953 // ARM-BE:#define __REGISTER_PREFIX__
    954 // ARM-BE:#define __SCHAR_MAX__ 127
    955 // ARM-BE:#define __SHRT_MAX__ 32767
    956 // ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
    957 // ARM-BE:#define __SIZEOF_DOUBLE__ 8
    958 // ARM-BE:#define __SIZEOF_FLOAT__ 4
    959 // ARM-BE:#define __SIZEOF_INT__ 4
    960 // ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
    961 // ARM-BE:#define __SIZEOF_LONG_LONG__ 8
    962 // ARM-BE:#define __SIZEOF_LONG__ 4
    963 // ARM-BE:#define __SIZEOF_POINTER__ 4
    964 // ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
    965 // ARM-BE:#define __SIZEOF_SHORT__ 2
    966 // ARM-BE:#define __SIZEOF_SIZE_T__ 4
    967 // ARM-BE:#define __SIZEOF_WCHAR_T__ 4
    968 // ARM-BE:#define __SIZEOF_WINT_T__ 4
    969 // ARM-BE:#define __SIZE_MAX__ 4294967295U
    970 // ARM-BE:#define __SIZE_TYPE__ unsigned int
    971 // ARM-BE:#define __SIZE_WIDTH__ 32
    972 // ARM-BE:#define __THUMB_INTERWORK__ 1
    973 // ARM-BE:#define __UINT16_C_SUFFIX__ U
    974 // ARM-BE:#define __UINT16_MAX__ 65535U
    975 // ARM-BE:#define __UINT16_TYPE__ unsigned short
    976 // ARM-BE:#define __UINT32_C_SUFFIX__ U
    977 // ARM-BE:#define __UINT32_MAX__ 4294967295U
    978 // ARM-BE:#define __UINT32_TYPE__ unsigned int
    979 // ARM-BE:#define __UINT64_C_SUFFIX__ ULL
    980 // ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
    981 // ARM-BE:#define __UINT64_TYPE__ long long unsigned int
    982 // ARM-BE:#define __UINT8_C_SUFFIX__ U
    983 // ARM-BE:#define __UINT8_MAX__ 255U
    984 // ARM-BE:#define __UINT8_TYPE__ unsigned char
    985 // ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
    986 // ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
    987 // ARM-BE:#define __UINTMAX_WIDTH__ 64
    988 // ARM-BE:#define __UINTPTR_MAX__ 4294967295U
    989 // ARM-BE:#define __UINTPTR_TYPE__ unsigned int
    990 // ARM-BE:#define __UINTPTR_WIDTH__ 32
    991 // ARM-BE:#define __UINT_FAST16_MAX__ 65535U
    992 // ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
    993 // ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
    994 // ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
    995 // ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
    996 // ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
    997 // ARM-BE:#define __UINT_FAST8_MAX__ 255U
    998 // ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
    999 // ARM-BE:#define __UINT_LEAST16_MAX__ 65535U
   1000 // ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
   1001 // ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
   1002 // ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
   1003 // ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   1004 // ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
   1005 // ARM-BE:#define __UINT_LEAST8_MAX__ 255U
   1006 // ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
   1007 // ARM-BE:#define __USER_LABEL_PREFIX__ _
   1008 // ARM-BE:#define __WCHAR_MAX__ 4294967295U
   1009 // ARM-BE:#define __WCHAR_TYPE__ unsigned int
   1010 // ARM-BE:#define __WCHAR_WIDTH__ 32
   1011 // ARM-BE:#define __WINT_TYPE__ int
   1012 // ARM-BE:#define __WINT_WIDTH__ 32
   1013 // ARM-BE:#define __arm 1
   1014 // ARM-BE:#define __arm__ 1
   1015 
   1016 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi -target-feature +soft-float -target-feature +soft-float-abi < /dev/null | FileCheck -check-prefix ARMEABISOFTFP %s
   1017 //
   1018 // ARMEABISOFTFP-NOT:#define _LP64
   1019 // ARMEABISOFTFP:#define __APCS_32__ 1
   1020 // ARMEABISOFTFP-NOT:#define __ARMEB__ 1
   1021 // ARMEABISOFTFP:#define __ARMEL__ 1
   1022 // ARMEABISOFTFP:#define __ARM_ARCH 6
   1023 // ARMEABISOFTFP:#define __ARM_ARCH_6J__ 1
   1024 // ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
   1025 // ARMEABISOFTFP:#define __ARM_EABI__ 1
   1026 // ARMEABISOFTFP:#define __ARM_PCS 1
   1027 // ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
   1028 // ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   1029 // ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
   1030 // ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
   1031 // ARMEABISOFTFP:#define __CHAR_BIT__ 8
   1032 // ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   1033 // ARMEABISOFTFP:#define __DBL_DIG__ 15
   1034 // ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
   1035 // ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
   1036 // ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
   1037 // ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
   1038 // ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
   1039 // ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
   1040 // ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
   1041 // ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
   1042 // ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
   1043 // ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
   1044 // ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
   1045 // ARMEABISOFTFP:#define __DECIMAL_DIG__ 17
   1046 // ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   1047 // ARMEABISOFTFP:#define __FLT_DIG__ 6
   1048 // ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
   1049 // ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
   1050 // ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
   1051 // ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
   1052 // ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
   1053 // ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
   1054 // ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
   1055 // ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
   1056 // ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
   1057 // ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
   1058 // ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
   1059 // ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
   1060 // ARMEABISOFTFP:#define __FLT_RADIX__ 2
   1061 // ARMEABISOFTFP:#define __INT16_MAX__ 32767
   1062 // ARMEABISOFTFP:#define __INT16_TYPE__ short
   1063 // ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
   1064 // ARMEABISOFTFP:#define __INT32_TYPE__ int
   1065 // ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
   1066 // ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
   1067 // ARMEABISOFTFP:#define __INT64_TYPE__ long long int
   1068 // ARMEABISOFTFP:#define __INT8_MAX__ 127
   1069 // ARMEABISOFTFP:#define __INT8_TYPE__ char
   1070 // ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
   1071 // ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
   1072 // ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
   1073 // ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647L
   1074 // ARMEABISOFTFP:#define __INTPTR_TYPE__ long int
   1075 // ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
   1076 // ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
   1077 // ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
   1078 // ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
   1079 // ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
   1080 // ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
   1081 // ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
   1082 // ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
   1083 // ARMEABISOFTFP:#define __INT_FAST8_TYPE__ char
   1084 // ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
   1085 // ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
   1086 // ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
   1087 // ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
   1088 // ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   1089 // ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
   1090 // ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
   1091 // ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ char
   1092 // ARMEABISOFTFP:#define __INT_MAX__ 2147483647
   1093 // ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   1094 // ARMEABISOFTFP:#define __LDBL_DIG__ 15
   1095 // ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   1096 // ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
   1097 // ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
   1098 // ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
   1099 // ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
   1100 // ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
   1101 // ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
   1102 // ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
   1103 // ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
   1104 // ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
   1105 // ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
   1106 // ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
   1107 // ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
   1108 // ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
   1109 // ARMEABISOFTFP-NOT:#define __LP64__
   1110 // ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
   1111 // ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
   1112 // ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
   1113 // ARMEABISOFTFP:#define __REGISTER_PREFIX__
   1114 // ARMEABISOFTFP:#define __SCHAR_MAX__ 127
   1115 // ARMEABISOFTFP:#define __SHRT_MAX__ 32767
   1116 // ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
   1117 // ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
   1118 // ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
   1119 // ARMEABISOFTFP:#define __SIZEOF_INT__ 4
   1120 // ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
   1121 // ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
   1122 // ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
   1123 // ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
   1124 // ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
   1125 // ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
   1126 // ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
   1127 // ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
   1128 // ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
   1129 // ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
   1130 // ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
   1131 // ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
   1132 // ARMEABISOFTFP:#define __SOFTFP__ 1
   1133 // ARMEABISOFTFP:#define __THUMB_INTERWORK__ 1
   1134 // ARMEABISOFTFP:#define __UINT16_C_SUFFIX__ U
   1135 // ARMEABISOFTFP:#define __UINT16_MAX__ 65535U
   1136 // ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
   1137 // ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
   1138 // ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
   1139 // ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
   1140 // ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
   1141 // ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
   1142 // ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
   1143 // ARMEABISOFTFP:#define __UINT8_C_SUFFIX__ U
   1144 // ARMEABISOFTFP:#define __UINT8_MAX__ 255U
   1145 // ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
   1146 // ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
   1147 // ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
   1148 // ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
   1149 // ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295U
   1150 // ARMEABISOFTFP:#define __UINTPTR_TYPE__ unsigned int
   1151 // ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
   1152 // ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535U
   1153 // ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
   1154 // ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
   1155 // ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
   1156 // ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   1157 // ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
   1158 // ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255U
   1159 // ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
   1160 // ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535U
   1161 // ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
   1162 // ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
   1163 // ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
   1164 // ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   1165 // ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
   1166 // ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255U
   1167 // ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
   1168 // ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
   1169 // ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
   1170 // ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
   1171 // ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
   1172 // ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
   1173 // ARMEABISOFTFP:#define __WINT_WIDTH__ 32
   1174 // ARMEABISOFTFP:#define __arm 1
   1175 // ARMEABISOFTFP:#define __arm__ 1
   1176 
   1177 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi < /dev/null | FileCheck -check-prefix ARMEABIHARDFP %s
   1178 //
   1179 // ARMEABIHARDFP-NOT:#define _LP64
   1180 // ARMEABIHARDFP:#define __APCS_32__ 1
   1181 // ARMEABIHARDFP-NOT:#define __ARMEB__ 1
   1182 // ARMEABIHARDFP:#define __ARMEL__ 1
   1183 // ARMEABIHARDFP:#define __ARM_ARCH 6
   1184 // ARMEABIHARDFP:#define __ARM_ARCH_6J__ 1
   1185 // ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
   1186 // ARMEABIHARDFP:#define __ARM_EABI__ 1
   1187 // ARMEABIHARDFP:#define __ARM_PCS 1
   1188 // ARMEABIHARDFP:#define __ARM_PCS_VFP 1
   1189 // ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   1190 // ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
   1191 // ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
   1192 // ARMEABIHARDFP:#define __CHAR_BIT__ 8
   1193 // ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   1194 // ARMEABIHARDFP:#define __DBL_DIG__ 15
   1195 // ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
   1196 // ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
   1197 // ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
   1198 // ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
   1199 // ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
   1200 // ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
   1201 // ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
   1202 // ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
   1203 // ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
   1204 // ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
   1205 // ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
   1206 // ARMEABIHARDFP:#define __DECIMAL_DIG__ 17
   1207 // ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   1208 // ARMEABIHARDFP:#define __FLT_DIG__ 6
   1209 // ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
   1210 // ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
   1211 // ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
   1212 // ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
   1213 // ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
   1214 // ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
   1215 // ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
   1216 // ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
   1217 // ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
   1218 // ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
   1219 // ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
   1220 // ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
   1221 // ARMEABIHARDFP:#define __FLT_RADIX__ 2
   1222 // ARMEABIHARDFP:#define __INT16_MAX__ 32767
   1223 // ARMEABIHARDFP:#define __INT16_TYPE__ short
   1224 // ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
   1225 // ARMEABIHARDFP:#define __INT32_TYPE__ int
   1226 // ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
   1227 // ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
   1228 // ARMEABIHARDFP:#define __INT64_TYPE__ long long int
   1229 // ARMEABIHARDFP:#define __INT8_MAX__ 127
   1230 // ARMEABIHARDFP:#define __INT8_TYPE__ char
   1231 // ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
   1232 // ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
   1233 // ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
   1234 // ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647L
   1235 // ARMEABIHARDFP:#define __INTPTR_TYPE__ long int
   1236 // ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
   1237 // ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
   1238 // ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
   1239 // ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
   1240 // ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
   1241 // ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
   1242 // ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
   1243 // ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
   1244 // ARMEABIHARDFP:#define __INT_FAST8_TYPE__ char
   1245 // ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
   1246 // ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
   1247 // ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
   1248 // ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
   1249 // ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   1250 // ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
   1251 // ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
   1252 // ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ char
   1253 // ARMEABIHARDFP:#define __INT_MAX__ 2147483647
   1254 // ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   1255 // ARMEABIHARDFP:#define __LDBL_DIG__ 15
   1256 // ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   1257 // ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
   1258 // ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
   1259 // ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
   1260 // ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
   1261 // ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
   1262 // ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
   1263 // ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
   1264 // ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
   1265 // ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
   1266 // ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
   1267 // ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
   1268 // ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
   1269 // ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
   1270 // ARMEABIHARDFP-NOT:#define __LP64__
   1271 // ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
   1272 // ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
   1273 // ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
   1274 // ARMEABIHARDFP:#define __REGISTER_PREFIX__
   1275 // ARMEABIHARDFP:#define __SCHAR_MAX__ 127
   1276 // ARMEABIHARDFP:#define __SHRT_MAX__ 32767
   1277 // ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
   1278 // ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
   1279 // ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
   1280 // ARMEABIHARDFP:#define __SIZEOF_INT__ 4
   1281 // ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
   1282 // ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
   1283 // ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
   1284 // ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
   1285 // ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
   1286 // ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
   1287 // ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
   1288 // ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
   1289 // ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
   1290 // ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
   1291 // ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
   1292 // ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
   1293 // ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
   1294 // ARMEABIHARDFP:#define __THUMB_INTERWORK__ 1
   1295 // ARMEABIHARDFP:#define __UINT16_C_SUFFIX__ U
   1296 // ARMEABIHARDFP:#define __UINT16_MAX__ 65535U
   1297 // ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
   1298 // ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
   1299 // ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
   1300 // ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
   1301 // ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
   1302 // ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
   1303 // ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
   1304 // ARMEABIHARDFP:#define __UINT8_C_SUFFIX__ U
   1305 // ARMEABIHARDFP:#define __UINT8_MAX__ 255U
   1306 // ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
   1307 // ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
   1308 // ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
   1309 // ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
   1310 // ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295U
   1311 // ARMEABIHARDFP:#define __UINTPTR_TYPE__ unsigned int
   1312 // ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
   1313 // ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535U
   1314 // ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
   1315 // ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
   1316 // ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
   1317 // ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   1318 // ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
   1319 // ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255U
   1320 // ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
   1321 // ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535U
   1322 // ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
   1323 // ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
   1324 // ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
   1325 // ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   1326 // ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
   1327 // ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255U
   1328 // ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
   1329 // ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
   1330 // ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
   1331 // ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
   1332 // ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
   1333 // ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
   1334 // ARMEABIHARDFP:#define __WINT_WIDTH__ 32
   1335 // ARMEABIHARDFP:#define __arm 1
   1336 // ARMEABIHARDFP:#define __arm__ 1
   1337 
   1338 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-netbsd-eabi < /dev/null | FileCheck -check-prefix ARM-NETBSD %s
   1339 //
   1340 // ARM-NETBSD-NOT:#define _LP64
   1341 // ARM-NETBSD:#define __APCS_32__ 1
   1342 // ARM-NETBSD-NOT:#define __ARMEB__ 1
   1343 // ARM-NETBSD:#define __ARMEL__ 1
   1344 // ARM-NETBSD:#define __ARM_ARCH_6J__ 1
   1345 // ARM-NETBSD:#define __ARM_DWARF_EH__ 1
   1346 // ARM-NETBSD:#define __ARM_EABI__ 1
   1347 // ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
   1348 // ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   1349 // ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
   1350 // ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
   1351 // ARM-NETBSD:#define __CHAR_BIT__ 8
   1352 // ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   1353 // ARM-NETBSD:#define __DBL_DIG__ 15
   1354 // ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
   1355 // ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
   1356 // ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
   1357 // ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
   1358 // ARM-NETBSD:#define __DBL_MANT_DIG__ 53
   1359 // ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
   1360 // ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
   1361 // ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
   1362 // ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
   1363 // ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
   1364 // ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
   1365 // ARM-NETBSD:#define __DECIMAL_DIG__ 17
   1366 // ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   1367 // ARM-NETBSD:#define __FLT_DIG__ 6
   1368 // ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
   1369 // ARM-NETBSD:#define __FLT_EVAL_METHOD__ 0
   1370 // ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
   1371 // ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
   1372 // ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
   1373 // ARM-NETBSD:#define __FLT_MANT_DIG__ 24
   1374 // ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
   1375 // ARM-NETBSD:#define __FLT_MAX_EXP__ 128
   1376 // ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
   1377 // ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
   1378 // ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
   1379 // ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
   1380 // ARM-NETBSD:#define __FLT_RADIX__ 2
   1381 // ARM-NETBSD:#define __INT16_MAX__ 32767
   1382 // ARM-NETBSD:#define __INT16_TYPE__ short
   1383 // ARM-NETBSD:#define __INT32_MAX__ 2147483647
   1384 // ARM-NETBSD:#define __INT32_TYPE__ int
   1385 // ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
   1386 // ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
   1387 // ARM-NETBSD:#define __INT64_TYPE__ long long int
   1388 // ARM-NETBSD:#define __INT8_MAX__ 127
   1389 // ARM-NETBSD:#define __INT8_TYPE__ char
   1390 // ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
   1391 // ARM-NETBSD:#define __INTMAX_TYPE__ long long int
   1392 // ARM-NETBSD:#define __INTMAX_WIDTH__ 64
   1393 // ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
   1394 // ARM-NETBSD:#define __INTPTR_TYPE__ long int
   1395 // ARM-NETBSD:#define __INTPTR_WIDTH__ 32
   1396 // ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
   1397 // ARM-NETBSD:#define __INT_FAST16_TYPE__ short
   1398 // ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
   1399 // ARM-NETBSD:#define __INT_FAST32_TYPE__ int
   1400 // ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
   1401 // ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
   1402 // ARM-NETBSD:#define __INT_FAST8_MAX__ 127
   1403 // ARM-NETBSD:#define __INT_FAST8_TYPE__ char
   1404 // ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
   1405 // ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
   1406 // ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
   1407 // ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
   1408 // ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   1409 // ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
   1410 // ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
   1411 // ARM-NETBSD:#define __INT_LEAST8_TYPE__ char
   1412 // ARM-NETBSD:#define __INT_MAX__ 2147483647
   1413 // ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   1414 // ARM-NETBSD:#define __LDBL_DIG__ 15
   1415 // ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   1416 // ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
   1417 // ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
   1418 // ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
   1419 // ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
   1420 // ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
   1421 // ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
   1422 // ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
   1423 // ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
   1424 // ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
   1425 // ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
   1426 // ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
   1427 // ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
   1428 // ARM-NETBSD:#define __LONG_MAX__ 2147483647L
   1429 // ARM-NETBSD-NOT:#define __LP64__
   1430 // ARM-NETBSD:#define __POINTER_WIDTH__ 32
   1431 // ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
   1432 // ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
   1433 // ARM-NETBSD:#define __REGISTER_PREFIX__
   1434 // ARM-NETBSD:#define __SCHAR_MAX__ 127
   1435 // ARM-NETBSD:#define __SHRT_MAX__ 32767
   1436 // ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
   1437 // ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
   1438 // ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
   1439 // ARM-NETBSD:#define __SIZEOF_INT__ 4
   1440 // ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
   1441 // ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
   1442 // ARM-NETBSD:#define __SIZEOF_LONG__ 4
   1443 // ARM-NETBSD:#define __SIZEOF_POINTER__ 4
   1444 // ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
   1445 // ARM-NETBSD:#define __SIZEOF_SHORT__ 2
   1446 // ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
   1447 // ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
   1448 // ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
   1449 // ARM-NETBSD:#define __SIZE_MAX__ 4294967295U
   1450 // ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
   1451 // ARM-NETBSD:#define __SIZE_WIDTH__ 32
   1452 // ARM-NETBSD:#define __THUMB_INTERWORK__ 1
   1453 // ARM-NETBSD:#define __UINT16_C_SUFFIX__ U
   1454 // ARM-NETBSD:#define __UINT16_MAX__ 65535U
   1455 // ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
   1456 // ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
   1457 // ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
   1458 // ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
   1459 // ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
   1460 // ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
   1461 // ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
   1462 // ARM-NETBSD:#define __UINT8_C_SUFFIX__ U
   1463 // ARM-NETBSD:#define __UINT8_MAX__ 255U
   1464 // ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
   1465 // ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
   1466 // ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
   1467 // ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
   1468 // ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295U
   1469 // ARM-NETBSD:#define __UINTPTR_TYPE__ unsigned int
   1470 // ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
   1471 // ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535U
   1472 // ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
   1473 // ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
   1474 // ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
   1475 // ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   1476 // ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
   1477 // ARM-NETBSD:#define __UINT_FAST8_MAX__ 255U
   1478 // ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
   1479 // ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535U
   1480 // ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
   1481 // ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
   1482 // ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
   1483 // ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   1484 // ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
   1485 // ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255U
   1486 // ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
   1487 // ARM-NETBSD:#define __USER_LABEL_PREFIX__
   1488 // ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
   1489 // ARM-NETBSD:#define __WCHAR_TYPE__ int
   1490 // ARM-NETBSD:#define __WCHAR_WIDTH__ 32
   1491 // ARM-NETBSD:#define __WINT_TYPE__ int
   1492 // ARM-NETBSD:#define __WINT_WIDTH__ 32
   1493 // ARM-NETBSD:#define __arm 1
   1494 // ARM-NETBSD:#define __arm__ 1
   1495 
   1496 // RUN: %clang -target arm -arch armv7s -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
   1497 // RUN: %clang -target arm -arch armv6m -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
   1498 // RUN: %clang -target arm -arch armv7m -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
   1499 // RUN: %clang -target arm -arch armv7em -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
   1500 // RUN: %clang -target thumbv7-apple-darwin-eabi -arch armv7 -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
   1501 // ARM-DARWIN-NO-EABI-NOT: #define __ARM_EABI__ 1
   1502 
   1503 // Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
   1504 
   1505 // RUN: %clang -target arm -mhwdiv=arm -x c -E -dM %s -o - | FileCheck --check-prefix=ARMHWDIV-ARM %s
   1506 // ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
   1507 
   1508 // RUN: %clang -target arm -mthumb -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck --check-prefix=THUMBHWDIV-THUMB %s
   1509 // THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
   1510 
   1511 // RUN: %clang -target arm -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-FALSE %s
   1512 // ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
   1513 
   1514 // RUN: %clang -target arm -mthumb -x c -E -dM %s -o - | FileCheck --check-prefix=THUMB-FALSE %s
   1515 // THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
   1516 
   1517 // RUN: %clang -target arm -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck --check-prefix=THUMBHWDIV-ARM-FALSE %s
   1518 // THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
   1519 
   1520 // RUN: %clang -target arm -mthumb -mhwdiv=arm -x c -E -dM %s -o - | FileCheck --check-prefix=ARMHWDIV-THUMB-FALSE %s
   1521 // ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
   1522 
   1523 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv8-none-none < /dev/null | FileCheck -check-prefix ARMv8 %s
   1524 // ARMv8: #define __THUMB_INTERWORK__ 1
   1525 // ARMv8-NOT: #define __thumb2__
   1526 
   1527 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armebv8-none-none < /dev/null | FileCheck -check-prefix ARMebv8 %s
   1528 // ARMebv8: #define __THUMB_INTERWORK__ 1
   1529 // ARMebv8-NOT: #define __thumb2__
   1530 
   1531 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv8 < /dev/null | FileCheck -check-prefix Thumbv8 %s
   1532 // Thumbv8: #define __THUMB_INTERWORK__ 1
   1533 // Thumbv8: #define __thumb2__
   1534 
   1535 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbebv8 < /dev/null | FileCheck -check-prefix Thumbebv8 %s
   1536 // Thumbebv8: #define __THUMB_INTERWORK__ 1
   1537 // Thumbebv8: #define __thumb2__
   1538 
   1539 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv5 < /dev/null | FileCheck -check-prefix Thumbv5 %s
   1540 // Thumbv5: #define __THUMB_INTERWORK__ 1
   1541 // Thumbv5-NOT: #define __thumb2__
   1542 
   1543 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv6t2 < /dev/null | FileCheck -check-prefix Thumbv6t2 %s
   1544 // Thumbv6t2: #define __THUMB_INTERWORK__ 1
   1545 // Thumbv6t2: #define __thumb2__
   1546 
   1547 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7 < /dev/null | FileCheck -check-prefix Thumbv7 %s
   1548 // Thumbv7: #define __THUMB_INTERWORK__ 1
   1549 // Thumbv7: #define __thumb2__
   1550 
   1551 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbebv7 < /dev/null | FileCheck -check-prefix Thumbebv7 %s
   1552 // Thumbebv7: #define __THUMB_INTERWORK__ 1
   1553 // Thumbebv7: #define __thumb2__
   1554 
   1555 //
   1556 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -check-prefix I386 %s
   1557 //
   1558 // I386-NOT:#define _LP64
   1559 // I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   1560 // I386:#define __CHAR16_TYPE__ unsigned short
   1561 // I386:#define __CHAR32_TYPE__ unsigned int
   1562 // I386:#define __CHAR_BIT__ 8
   1563 // I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   1564 // I386:#define __DBL_DIG__ 15
   1565 // I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
   1566 // I386:#define __DBL_HAS_DENORM__ 1
   1567 // I386:#define __DBL_HAS_INFINITY__ 1
   1568 // I386:#define __DBL_HAS_QUIET_NAN__ 1
   1569 // I386:#define __DBL_MANT_DIG__ 53
   1570 // I386:#define __DBL_MAX_10_EXP__ 308
   1571 // I386:#define __DBL_MAX_EXP__ 1024
   1572 // I386:#define __DBL_MAX__ 1.7976931348623157e+308
   1573 // I386:#define __DBL_MIN_10_EXP__ (-307)
   1574 // I386:#define __DBL_MIN_EXP__ (-1021)
   1575 // I386:#define __DBL_MIN__ 2.2250738585072014e-308
   1576 // I386:#define __DECIMAL_DIG__ 21
   1577 // I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   1578 // I386:#define __FLT_DIG__ 6
   1579 // I386:#define __FLT_EPSILON__ 1.19209290e-7F
   1580 // I386:#define __FLT_EVAL_METHOD__ 2
   1581 // I386:#define __FLT_HAS_DENORM__ 1
   1582 // I386:#define __FLT_HAS_INFINITY__ 1
   1583 // I386:#define __FLT_HAS_QUIET_NAN__ 1
   1584 // I386:#define __FLT_MANT_DIG__ 24
   1585 // I386:#define __FLT_MAX_10_EXP__ 38
   1586 // I386:#define __FLT_MAX_EXP__ 128
   1587 // I386:#define __FLT_MAX__ 3.40282347e+38F
   1588 // I386:#define __FLT_MIN_10_EXP__ (-37)
   1589 // I386:#define __FLT_MIN_EXP__ (-125)
   1590 // I386:#define __FLT_MIN__ 1.17549435e-38F
   1591 // I386:#define __FLT_RADIX__ 2
   1592 // I386:#define __INT16_MAX__ 32767
   1593 // I386:#define __INT16_TYPE__ short
   1594 // I386:#define __INT32_MAX__ 2147483647
   1595 // I386:#define __INT32_TYPE__ int
   1596 // I386:#define __INT64_C_SUFFIX__ LL
   1597 // I386:#define __INT64_MAX__ 9223372036854775807LL
   1598 // I386:#define __INT64_TYPE__ long long int
   1599 // I386:#define __INT8_MAX__ 127
   1600 // I386:#define __INT8_TYPE__ char
   1601 // I386:#define __INTMAX_MAX__ 9223372036854775807LL
   1602 // I386:#define __INTMAX_TYPE__ long long int
   1603 // I386:#define __INTMAX_WIDTH__ 64
   1604 // I386:#define __INTPTR_MAX__ 2147483647
   1605 // I386:#define __INTPTR_TYPE__ int
   1606 // I386:#define __INTPTR_WIDTH__ 32
   1607 // I386:#define __INT_FAST16_MAX__ 32767
   1608 // I386:#define __INT_FAST16_TYPE__ short
   1609 // I386:#define __INT_FAST32_MAX__ 2147483647
   1610 // I386:#define __INT_FAST32_TYPE__ int
   1611 // I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
   1612 // I386:#define __INT_FAST64_TYPE__ long long int
   1613 // I386:#define __INT_FAST8_MAX__ 127
   1614 // I386:#define __INT_FAST8_TYPE__ char
   1615 // I386:#define __INT_LEAST16_MAX__ 32767
   1616 // I386:#define __INT_LEAST16_TYPE__ short
   1617 // I386:#define __INT_LEAST32_MAX__ 2147483647
   1618 // I386:#define __INT_LEAST32_TYPE__ int
   1619 // I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   1620 // I386:#define __INT_LEAST64_TYPE__ long long int
   1621 // I386:#define __INT_LEAST8_MAX__ 127
   1622 // I386:#define __INT_LEAST8_TYPE__ char
   1623 // I386:#define __INT_MAX__ 2147483647
   1624 // I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
   1625 // I386:#define __LDBL_DIG__ 18
   1626 // I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
   1627 // I386:#define __LDBL_HAS_DENORM__ 1
   1628 // I386:#define __LDBL_HAS_INFINITY__ 1
   1629 // I386:#define __LDBL_HAS_QUIET_NAN__ 1
   1630 // I386:#define __LDBL_MANT_DIG__ 64
   1631 // I386:#define __LDBL_MAX_10_EXP__ 4932
   1632 // I386:#define __LDBL_MAX_EXP__ 16384
   1633 // I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
   1634 // I386:#define __LDBL_MIN_10_EXP__ (-4931)
   1635 // I386:#define __LDBL_MIN_EXP__ (-16381)
   1636 // I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
   1637 // I386:#define __LITTLE_ENDIAN__ 1
   1638 // I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
   1639 // I386:#define __LONG_MAX__ 2147483647L
   1640 // I386-NOT:#define __LP64__
   1641 // I386:#define __NO_MATH_INLINES 1
   1642 // I386:#define __POINTER_WIDTH__ 32
   1643 // I386:#define __PTRDIFF_TYPE__ int
   1644 // I386:#define __PTRDIFF_WIDTH__ 32
   1645 // I386:#define __REGISTER_PREFIX__
   1646 // I386:#define __SCHAR_MAX__ 127
   1647 // I386:#define __SHRT_MAX__ 32767
   1648 // I386:#define __SIG_ATOMIC_WIDTH__ 32
   1649 // I386:#define __SIZEOF_DOUBLE__ 8
   1650 // I386:#define __SIZEOF_FLOAT__ 4
   1651 // I386:#define __SIZEOF_INT__ 4
   1652 // I386:#define __SIZEOF_LONG_DOUBLE__ 12
   1653 // I386:#define __SIZEOF_LONG_LONG__ 8
   1654 // I386:#define __SIZEOF_LONG__ 4
   1655 // I386:#define __SIZEOF_POINTER__ 4
   1656 // I386:#define __SIZEOF_PTRDIFF_T__ 4
   1657 // I386:#define __SIZEOF_SHORT__ 2
   1658 // I386:#define __SIZEOF_SIZE_T__ 4
   1659 // I386:#define __SIZEOF_WCHAR_T__ 4
   1660 // I386:#define __SIZEOF_WINT_T__ 4
   1661 // I386:#define __SIZE_MAX__ 4294967295U
   1662 // I386:#define __SIZE_TYPE__ unsigned int
   1663 // I386:#define __SIZE_WIDTH__ 32
   1664 // I386:#define __UINT16_C_SUFFIX__ U
   1665 // I386:#define __UINT16_MAX__ 65535U
   1666 // I386:#define __UINT16_TYPE__ unsigned short
   1667 // I386:#define __UINT32_C_SUFFIX__ U
   1668 // I386:#define __UINT32_MAX__ 4294967295U
   1669 // I386:#define __UINT32_TYPE__ unsigned int
   1670 // I386:#define __UINT64_C_SUFFIX__ ULL
   1671 // I386:#define __UINT64_MAX__ 18446744073709551615ULL
   1672 // I386:#define __UINT64_TYPE__ long long unsigned int
   1673 // I386:#define __UINT8_C_SUFFIX__ U
   1674 // I386:#define __UINT8_MAX__ 255U
   1675 // I386:#define __UINT8_TYPE__ unsigned char
   1676 // I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
   1677 // I386:#define __UINTMAX_TYPE__ long long unsigned int
   1678 // I386:#define __UINTMAX_WIDTH__ 64
   1679 // I386:#define __UINTPTR_MAX__ 4294967295U
   1680 // I386:#define __UINTPTR_TYPE__ unsigned int
   1681 // I386:#define __UINTPTR_WIDTH__ 32
   1682 // I386:#define __UINT_FAST16_MAX__ 65535U
   1683 // I386:#define __UINT_FAST16_TYPE__ unsigned short
   1684 // I386:#define __UINT_FAST32_MAX__ 4294967295U
   1685 // I386:#define __UINT_FAST32_TYPE__ unsigned int
   1686 // I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   1687 // I386:#define __UINT_FAST64_TYPE__ long long unsigned int
   1688 // I386:#define __UINT_FAST8_MAX__ 255U
   1689 // I386:#define __UINT_FAST8_TYPE__ unsigned char
   1690 // I386:#define __UINT_LEAST16_MAX__ 65535U
   1691 // I386:#define __UINT_LEAST16_TYPE__ unsigned short
   1692 // I386:#define __UINT_LEAST32_MAX__ 4294967295U
   1693 // I386:#define __UINT_LEAST32_TYPE__ unsigned int
   1694 // I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   1695 // I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
   1696 // I386:#define __UINT_LEAST8_MAX__ 255U
   1697 // I386:#define __UINT_LEAST8_TYPE__ unsigned char
   1698 // I386:#define __USER_LABEL_PREFIX__ _
   1699 // I386:#define __WCHAR_MAX__ 2147483647
   1700 // I386:#define __WCHAR_TYPE__ int
   1701 // I386:#define __WCHAR_WIDTH__ 32
   1702 // I386:#define __WINT_TYPE__ int
   1703 // I386:#define __WINT_WIDTH__ 32
   1704 // I386:#define __i386 1
   1705 // I386:#define __i386__ 1
   1706 // I386:#define i386 1
   1707 //
   1708 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -check-prefix I386-LINUX %s
   1709 //
   1710 // I386-LINUX-NOT:#define _LP64
   1711 // I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   1712 // I386-LINUX:#define __CHAR16_TYPE__ unsigned short
   1713 // I386-LINUX:#define __CHAR32_TYPE__ unsigned int
   1714 // I386-LINUX:#define __CHAR_BIT__ 8
   1715 // I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   1716 // I386-LINUX:#define __DBL_DIG__ 15
   1717 // I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
   1718 // I386-LINUX:#define __DBL_HAS_DENORM__ 1
   1719 // I386-LINUX:#define __DBL_HAS_INFINITY__ 1
   1720 // I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
   1721 // I386-LINUX:#define __DBL_MANT_DIG__ 53
   1722 // I386-LINUX:#define __DBL_MAX_10_EXP__ 308
   1723 // I386-LINUX:#define __DBL_MAX_EXP__ 1024
   1724 // I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
   1725 // I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
   1726 // I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
   1727 // I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
   1728 // I386-LINUX:#define __DECIMAL_DIG__ 21
   1729 // I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   1730 // I386-LINUX:#define __FLT_DIG__ 6
   1731 // I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
   1732 // I386-LINUX:#define __FLT_EVAL_METHOD__ 0
   1733 // I386-LINUX:#define __FLT_HAS_DENORM__ 1
   1734 // I386-LINUX:#define __FLT_HAS_INFINITY__ 1
   1735 // I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
   1736 // I386-LINUX:#define __FLT_MANT_DIG__ 24
   1737 // I386-LINUX:#define __FLT_MAX_10_EXP__ 38
   1738 // I386-LINUX:#define __FLT_MAX_EXP__ 128
   1739 // I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
   1740 // I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
   1741 // I386-LINUX:#define __FLT_MIN_EXP__ (-125)
   1742 // I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
   1743 // I386-LINUX:#define __FLT_RADIX__ 2
   1744 // I386-LINUX:#define __INT16_MAX__ 32767
   1745 // I386-LINUX:#define __INT16_TYPE__ short
   1746 // I386-LINUX:#define __INT32_MAX__ 2147483647
   1747 // I386-LINUX:#define __INT32_TYPE__ int
   1748 // I386-LINUX:#define __INT64_C_SUFFIX__ LL
   1749 // I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
   1750 // I386-LINUX:#define __INT64_TYPE__ long long int
   1751 // I386-LINUX:#define __INT8_MAX__ 127
   1752 // I386-LINUX:#define __INT8_TYPE__ char
   1753 // I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
   1754 // I386-LINUX:#define __INTMAX_TYPE__ long long int
   1755 // I386-LINUX:#define __INTMAX_WIDTH__ 64
   1756 // I386-LINUX:#define __INTPTR_MAX__ 2147483647
   1757 // I386-LINUX:#define __INTPTR_TYPE__ int
   1758 // I386-LINUX:#define __INTPTR_WIDTH__ 32
   1759 // I386-LINUX:#define __INT_FAST16_MAX__ 32767
   1760 // I386-LINUX:#define __INT_FAST16_TYPE__ short
   1761 // I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
   1762 // I386-LINUX:#define __INT_FAST32_TYPE__ int
   1763 // I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
   1764 // I386-LINUX:#define __INT_FAST64_TYPE__ long long int
   1765 // I386-LINUX:#define __INT_FAST8_MAX__ 127
   1766 // I386-LINUX:#define __INT_FAST8_TYPE__ char
   1767 // I386-LINUX:#define __INT_LEAST16_MAX__ 32767
   1768 // I386-LINUX:#define __INT_LEAST16_TYPE__ short
   1769 // I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
   1770 // I386-LINUX:#define __INT_LEAST32_TYPE__ int
   1771 // I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   1772 // I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
   1773 // I386-LINUX:#define __INT_LEAST8_MAX__ 127
   1774 // I386-LINUX:#define __INT_LEAST8_TYPE__ char
   1775 // I386-LINUX:#define __INT_MAX__ 2147483647
   1776 // I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
   1777 // I386-LINUX:#define __LDBL_DIG__ 18
   1778 // I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
   1779 // I386-LINUX:#define __LDBL_HAS_DENORM__ 1
   1780 // I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
   1781 // I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
   1782 // I386-LINUX:#define __LDBL_MANT_DIG__ 64
   1783 // I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
   1784 // I386-LINUX:#define __LDBL_MAX_EXP__ 16384
   1785 // I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
   1786 // I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
   1787 // I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
   1788 // I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
   1789 // I386-LINUX:#define __LITTLE_ENDIAN__ 1
   1790 // I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
   1791 // I386-LINUX:#define __LONG_MAX__ 2147483647L
   1792 // I386-LINUX-NOT:#define __LP64__
   1793 // I386-LINUX:#define __NO_MATH_INLINES 1
   1794 // I386-LINUX:#define __POINTER_WIDTH__ 32
   1795 // I386-LINUX:#define __PTRDIFF_TYPE__ int
   1796 // I386-LINUX:#define __PTRDIFF_WIDTH__ 32
   1797 // I386-LINUX:#define __REGISTER_PREFIX__
   1798 // I386-LINUX:#define __SCHAR_MAX__ 127
   1799 // I386-LINUX:#define __SHRT_MAX__ 32767
   1800 // I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
   1801 // I386-LINUX:#define __SIZEOF_DOUBLE__ 8
   1802 // I386-LINUX:#define __SIZEOF_FLOAT__ 4
   1803 // I386-LINUX:#define __SIZEOF_INT__ 4
   1804 // I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
   1805 // I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
   1806 // I386-LINUX:#define __SIZEOF_LONG__ 4
   1807 // I386-LINUX:#define __SIZEOF_POINTER__ 4
   1808 // I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
   1809 // I386-LINUX:#define __SIZEOF_SHORT__ 2
   1810 // I386-LINUX:#define __SIZEOF_SIZE_T__ 4
   1811 // I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
   1812 // I386-LINUX:#define __SIZEOF_WINT_T__ 4
   1813 // I386-LINUX:#define __SIZE_MAX__ 4294967295U
   1814 // I386-LINUX:#define __SIZE_TYPE__ unsigned int
   1815 // I386-LINUX:#define __SIZE_WIDTH__ 32
   1816 // I386-LINUX:#define __UINT16_C_SUFFIX__ U
   1817 // I386-LINUX:#define __UINT16_MAX__ 65535U
   1818 // I386-LINUX:#define __UINT16_TYPE__ unsigned short
   1819 // I386-LINUX:#define __UINT32_C_SUFFIX__ U
   1820 // I386-LINUX:#define __UINT32_MAX__ 4294967295U
   1821 // I386-LINUX:#define __UINT32_TYPE__ unsigned int
   1822 // I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
   1823 // I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
   1824 // I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
   1825 // I386-LINUX:#define __UINT8_C_SUFFIX__ U
   1826 // I386-LINUX:#define __UINT8_MAX__ 255U
   1827 // I386-LINUX:#define __UINT8_TYPE__ unsigned char
   1828 // I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
   1829 // I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
   1830 // I386-LINUX:#define __UINTMAX_WIDTH__ 64
   1831 // I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
   1832 // I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
   1833 // I386-LINUX:#define __UINTPTR_WIDTH__ 32
   1834 // I386-LINUX:#define __UINT_FAST16_MAX__ 65535U
   1835 // I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
   1836 // I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
   1837 // I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
   1838 // I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   1839 // I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
   1840 // I386-LINUX:#define __UINT_FAST8_MAX__ 255U
   1841 // I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
   1842 // I386-LINUX:#define __UINT_LEAST16_MAX__ 65535U
   1843 // I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
   1844 // I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
   1845 // I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
   1846 // I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   1847 // I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
   1848 // I386-LINUX:#define __UINT_LEAST8_MAX__ 255U
   1849 // I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
   1850 // I386-LINUX:#define __USER_LABEL_PREFIX__
   1851 // I386-LINUX:#define __WCHAR_MAX__ 2147483647
   1852 // I386-LINUX:#define __WCHAR_TYPE__ int
   1853 // I386-LINUX:#define __WCHAR_WIDTH__ 32
   1854 // I386-LINUX:#define __WINT_TYPE__ unsigned int
   1855 // I386-LINUX:#define __WINT_WIDTH__ 32
   1856 // I386-LINUX:#define __i386 1
   1857 // I386-LINUX:#define __i386__ 1
   1858 // I386-LINUX:#define i386 1
   1859 //
   1860 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd < /dev/null | FileCheck -check-prefix I386-NETBSD %s
   1861 //
   1862 // I386-NETBSD-NOT:#define _LP64
   1863 // I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   1864 // I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
   1865 // I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
   1866 // I386-NETBSD:#define __CHAR_BIT__ 8
   1867 // I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   1868 // I386-NETBSD:#define __DBL_DIG__ 15
   1869 // I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
   1870 // I386-NETBSD:#define __DBL_HAS_DENORM__ 1
   1871 // I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
   1872 // I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
   1873 // I386-NETBSD:#define __DBL_MANT_DIG__ 53
   1874 // I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
   1875 // I386-NETBSD:#define __DBL_MAX_EXP__ 1024
   1876 // I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
   1877 // I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
   1878 // I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
   1879 // I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
   1880 // I386-NETBSD:#define __DECIMAL_DIG__ 21
   1881 // I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   1882 // I386-NETBSD:#define __FLT_DIG__ 6
   1883 // I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
   1884 // I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
   1885 // I386-NETBSD:#define __FLT_HAS_DENORM__ 1
   1886 // I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
   1887 // I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
   1888 // I386-NETBSD:#define __FLT_MANT_DIG__ 24
   1889 // I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
   1890 // I386-NETBSD:#define __FLT_MAX_EXP__ 128
   1891 // I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
   1892 // I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
   1893 // I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
   1894 // I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
   1895 // I386-NETBSD:#define __FLT_RADIX__ 2
   1896 // I386-NETBSD:#define __INT16_MAX__ 32767
   1897 // I386-NETBSD:#define __INT16_TYPE__ short
   1898 // I386-NETBSD:#define __INT32_MAX__ 2147483647
   1899 // I386-NETBSD:#define __INT32_TYPE__ int
   1900 // I386-NETBSD:#define __INT64_C_SUFFIX__ LL
   1901 // I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
   1902 // I386-NETBSD:#define __INT64_TYPE__ long long int
   1903 // I386-NETBSD:#define __INT8_MAX__ 127
   1904 // I386-NETBSD:#define __INT8_TYPE__ char
   1905 // I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
   1906 // I386-NETBSD:#define __INTMAX_TYPE__ long long int
   1907 // I386-NETBSD:#define __INTMAX_WIDTH__ 64
   1908 // I386-NETBSD:#define __INTPTR_MAX__ 2147483647
   1909 // I386-NETBSD:#define __INTPTR_TYPE__ int
   1910 // I386-NETBSD:#define __INTPTR_WIDTH__ 32
   1911 // I386-NETBSD:#define __INT_FAST16_MAX__ 32767
   1912 // I386-NETBSD:#define __INT_FAST16_TYPE__ short
   1913 // I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
   1914 // I386-NETBSD:#define __INT_FAST32_TYPE__ int
   1915 // I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
   1916 // I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
   1917 // I386-NETBSD:#define __INT_FAST8_MAX__ 127
   1918 // I386-NETBSD:#define __INT_FAST8_TYPE__ char
   1919 // I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
   1920 // I386-NETBSD:#define __INT_LEAST16_TYPE__ short
   1921 // I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
   1922 // I386-NETBSD:#define __INT_LEAST32_TYPE__ int
   1923 // I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   1924 // I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
   1925 // I386-NETBSD:#define __INT_LEAST8_MAX__ 127
   1926 // I386-NETBSD:#define __INT_LEAST8_TYPE__ char
   1927 // I386-NETBSD:#define __INT_MAX__ 2147483647
   1928 // I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
   1929 // I386-NETBSD:#define __LDBL_DIG__ 18
   1930 // I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
   1931 // I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
   1932 // I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
   1933 // I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
   1934 // I386-NETBSD:#define __LDBL_MANT_DIG__ 64
   1935 // I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
   1936 // I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
   1937 // I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
   1938 // I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
   1939 // I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
   1940 // I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
   1941 // I386-NETBSD:#define __LITTLE_ENDIAN__ 1
   1942 // I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
   1943 // I386-NETBSD:#define __LONG_MAX__ 2147483647L
   1944 // I386-NETBSD-NOT:#define __LP64__
   1945 // I386-NETBSD:#define __NO_MATH_INLINES 1
   1946 // I386-NETBSD:#define __POINTER_WIDTH__ 32
   1947 // I386-NETBSD:#define __PTRDIFF_TYPE__ int
   1948 // I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
   1949 // I386-NETBSD:#define __REGISTER_PREFIX__
   1950 // I386-NETBSD:#define __SCHAR_MAX__ 127
   1951 // I386-NETBSD:#define __SHRT_MAX__ 32767
   1952 // I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
   1953 // I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
   1954 // I386-NETBSD:#define __SIZEOF_FLOAT__ 4
   1955 // I386-NETBSD:#define __SIZEOF_INT__ 4
   1956 // I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
   1957 // I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
   1958 // I386-NETBSD:#define __SIZEOF_LONG__ 4
   1959 // I386-NETBSD:#define __SIZEOF_POINTER__ 4
   1960 // I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
   1961 // I386-NETBSD:#define __SIZEOF_SHORT__ 2
   1962 // I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
   1963 // I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
   1964 // I386-NETBSD:#define __SIZEOF_WINT_T__ 4
   1965 // I386-NETBSD:#define __SIZE_MAX__ 4294967295U
   1966 // I386-NETBSD:#define __SIZE_TYPE__ unsigned int
   1967 // I386-NETBSD:#define __SIZE_WIDTH__ 32
   1968 // I386-NETBSD:#define __UINT16_C_SUFFIX__ U
   1969 // I386-NETBSD:#define __UINT16_MAX__ 65535U
   1970 // I386-NETBSD:#define __UINT16_TYPE__ unsigned short
   1971 // I386-NETBSD:#define __UINT32_C_SUFFIX__ U
   1972 // I386-NETBSD:#define __UINT32_MAX__ 4294967295U
   1973 // I386-NETBSD:#define __UINT32_TYPE__ unsigned int
   1974 // I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
   1975 // I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
   1976 // I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
   1977 // I386-NETBSD:#define __UINT8_C_SUFFIX__ U
   1978 // I386-NETBSD:#define __UINT8_MAX__ 255U
   1979 // I386-NETBSD:#define __UINT8_TYPE__ unsigned char
   1980 // I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
   1981 // I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
   1982 // I386-NETBSD:#define __UINTMAX_WIDTH__ 64
   1983 // I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
   1984 // I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
   1985 // I386-NETBSD:#define __UINTPTR_WIDTH__ 32
   1986 // I386-NETBSD:#define __UINT_FAST16_MAX__ 65535U
   1987 // I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
   1988 // I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
   1989 // I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
   1990 // I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   1991 // I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
   1992 // I386-NETBSD:#define __UINT_FAST8_MAX__ 255U
   1993 // I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
   1994 // I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535U
   1995 // I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
   1996 // I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
   1997 // I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
   1998 // I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   1999 // I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
   2000 // I386-NETBSD:#define __UINT_LEAST8_MAX__ 255U
   2001 // I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
   2002 // I386-NETBSD:#define __USER_LABEL_PREFIX__
   2003 // I386-NETBSD:#define __WCHAR_MAX__ 2147483647
   2004 // I386-NETBSD:#define __WCHAR_TYPE__ int
   2005 // I386-NETBSD:#define __WCHAR_WIDTH__ 32
   2006 // I386-NETBSD:#define __WINT_TYPE__ int
   2007 // I386-NETBSD:#define __WINT_WIDTH__ 32
   2008 // I386-NETBSD:#define __i386 1
   2009 // I386-NETBSD:#define __i386__ 1
   2010 // I386-NETBSD:#define i386 1
   2011 //
   2012 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd -target-feature +sse2 < /dev/null | FileCheck -check-prefix I386-NETBSD-SSE %s
   2013 // I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
   2014 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd6  < /dev/null | FileCheck -check-prefix I386-NETBSD6 %s
   2015 // I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
   2016 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd6 -target-feature +sse2 < /dev/null | FileCheck -check-prefix I386-NETBSD6-SSE %s
   2017 // I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
   2018 
   2019 //
   2020 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -check-prefix MIPS32BE %s
   2021 //
   2022 // MIPS32BE:#define MIPSEB 1
   2023 // MIPS32BE:#define _ABIO32 1
   2024 // MIPS32BE-NOT:#define _LP64
   2025 // MIPS32BE:#define _MIPSEB 1
   2026 // MIPS32BE:#define _MIPS_ARCH "mips32r2"
   2027 // MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
   2028 // MIPS32BE:#define _MIPS_FPSET 16
   2029 // MIPS32BE:#define _MIPS_SIM _ABIO32
   2030 // MIPS32BE:#define _MIPS_SZINT 32
   2031 // MIPS32BE:#define _MIPS_SZLONG 32
   2032 // MIPS32BE:#define _MIPS_SZPTR 32
   2033 // MIPS32BE:#define __BIG_ENDIAN__ 1
   2034 // MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   2035 // MIPS32BE:#define __CHAR16_TYPE__ unsigned short
   2036 // MIPS32BE:#define __CHAR32_TYPE__ unsigned int
   2037 // MIPS32BE:#define __CHAR_BIT__ 8
   2038 // MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
   2039 // MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   2040 // MIPS32BE:#define __DBL_DIG__ 15
   2041 // MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
   2042 // MIPS32BE:#define __DBL_HAS_DENORM__ 1
   2043 // MIPS32BE:#define __DBL_HAS_INFINITY__ 1
   2044 // MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
   2045 // MIPS32BE:#define __DBL_MANT_DIG__ 53
   2046 // MIPS32BE:#define __DBL_MAX_10_EXP__ 308
   2047 // MIPS32BE:#define __DBL_MAX_EXP__ 1024
   2048 // MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
   2049 // MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
   2050 // MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
   2051 // MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
   2052 // MIPS32BE:#define __DECIMAL_DIG__ 17
   2053 // MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   2054 // MIPS32BE:#define __FLT_DIG__ 6
   2055 // MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
   2056 // MIPS32BE:#define __FLT_EVAL_METHOD__ 0
   2057 // MIPS32BE:#define __FLT_HAS_DENORM__ 1
   2058 // MIPS32BE:#define __FLT_HAS_INFINITY__ 1
   2059 // MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
   2060 // MIPS32BE:#define __FLT_MANT_DIG__ 24
   2061 // MIPS32BE:#define __FLT_MAX_10_EXP__ 38
   2062 // MIPS32BE:#define __FLT_MAX_EXP__ 128
   2063 // MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
   2064 // MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
   2065 // MIPS32BE:#define __FLT_MIN_EXP__ (-125)
   2066 // MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
   2067 // MIPS32BE:#define __FLT_RADIX__ 2
   2068 // MIPS32BE:#define __INT16_MAX__ 32767
   2069 // MIPS32BE:#define __INT16_TYPE__ short
   2070 // MIPS32BE:#define __INT32_MAX__ 2147483647
   2071 // MIPS32BE:#define __INT32_TYPE__ int
   2072 // MIPS32BE:#define __INT64_C_SUFFIX__ LL
   2073 // MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
   2074 // MIPS32BE:#define __INT64_TYPE__ long long int
   2075 // MIPS32BE:#define __INT8_MAX__ 127
   2076 // MIPS32BE:#define __INT8_TYPE__ char
   2077 // MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
   2078 // MIPS32BE:#define __INTMAX_TYPE__ long long int
   2079 // MIPS32BE:#define __INTMAX_WIDTH__ 64
   2080 // MIPS32BE:#define __INTPTR_MAX__ 2147483647L
   2081 // MIPS32BE:#define __INTPTR_TYPE__ long int
   2082 // MIPS32BE:#define __INTPTR_WIDTH__ 32
   2083 // MIPS32BE:#define __INT_FAST16_MAX__ 32767
   2084 // MIPS32BE:#define __INT_FAST16_TYPE__ short
   2085 // MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
   2086 // MIPS32BE:#define __INT_FAST32_TYPE__ int
   2087 // MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
   2088 // MIPS32BE:#define __INT_FAST64_TYPE__ long long int
   2089 // MIPS32BE:#define __INT_FAST8_MAX__ 127
   2090 // MIPS32BE:#define __INT_FAST8_TYPE__ char
   2091 // MIPS32BE:#define __INT_LEAST16_MAX__ 32767
   2092 // MIPS32BE:#define __INT_LEAST16_TYPE__ short
   2093 // MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
   2094 // MIPS32BE:#define __INT_LEAST32_TYPE__ int
   2095 // MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   2096 // MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
   2097 // MIPS32BE:#define __INT_LEAST8_MAX__ 127
   2098 // MIPS32BE:#define __INT_LEAST8_TYPE__ char
   2099 // MIPS32BE:#define __INT_MAX__ 2147483647
   2100 // MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   2101 // MIPS32BE:#define __LDBL_DIG__ 15
   2102 // MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   2103 // MIPS32BE:#define __LDBL_HAS_DENORM__ 1
   2104 // MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
   2105 // MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
   2106 // MIPS32BE:#define __LDBL_MANT_DIG__ 53
   2107 // MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
   2108 // MIPS32BE:#define __LDBL_MAX_EXP__ 1024
   2109 // MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
   2110 // MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
   2111 // MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
   2112 // MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
   2113 // MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
   2114 // MIPS32BE:#define __LONG_MAX__ 2147483647L
   2115 // MIPS32BE-NOT:#define __LP64__
   2116 // MIPS32BE:#define __MIPSEB 1
   2117 // MIPS32BE:#define __MIPSEB__ 1
   2118 // MIPS32BE:#define __POINTER_WIDTH__ 32
   2119 // MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
   2120 // MIPS32BE:#define __PTRDIFF_TYPE__ int
   2121 // MIPS32BE:#define __PTRDIFF_WIDTH__ 32
   2122 // MIPS32BE:#define __REGISTER_PREFIX__
   2123 // MIPS32BE:#define __SCHAR_MAX__ 127
   2124 // MIPS32BE:#define __SHRT_MAX__ 32767
   2125 // MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
   2126 // MIPS32BE:#define __SIZEOF_DOUBLE__ 8
   2127 // MIPS32BE:#define __SIZEOF_FLOAT__ 4
   2128 // MIPS32BE:#define __SIZEOF_INT__ 4
   2129 // MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
   2130 // MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
   2131 // MIPS32BE:#define __SIZEOF_LONG__ 4
   2132 // MIPS32BE:#define __SIZEOF_POINTER__ 4
   2133 // MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
   2134 // MIPS32BE:#define __SIZEOF_SHORT__ 2
   2135 // MIPS32BE:#define __SIZEOF_SIZE_T__ 4
   2136 // MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
   2137 // MIPS32BE:#define __SIZEOF_WINT_T__ 4
   2138 // MIPS32BE:#define __SIZE_MAX__ 4294967295U
   2139 // MIPS32BE:#define __SIZE_TYPE__ unsigned int
   2140 // MIPS32BE:#define __SIZE_WIDTH__ 32
   2141 // MIPS32BE:#define __STDC_HOSTED__ 0
   2142 // MIPS32BE:#define __STDC_VERSION__ 199901L
   2143 // MIPS32BE:#define __STDC__ 1
   2144 // MIPS32BE:#define __UINT16_C_SUFFIX__ U
   2145 // MIPS32BE:#define __UINT16_MAX__ 65535U
   2146 // MIPS32BE:#define __UINT16_TYPE__ unsigned short
   2147 // MIPS32BE:#define __UINT32_C_SUFFIX__ U
   2148 // MIPS32BE:#define __UINT32_MAX__ 4294967295U
   2149 // MIPS32BE:#define __UINT32_TYPE__ unsigned int
   2150 // MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
   2151 // MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
   2152 // MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
   2153 // MIPS32BE:#define __UINT8_C_SUFFIX__ U
   2154 // MIPS32BE:#define __UINT8_MAX__ 255U
   2155 // MIPS32BE:#define __UINT8_TYPE__ unsigned char
   2156 // MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
   2157 // MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
   2158 // MIPS32BE:#define __UINTMAX_WIDTH__ 64
   2159 // MIPS32BE:#define __UINTPTR_MAX__ 4294967295U
   2160 // MIPS32BE:#define __UINTPTR_TYPE__ unsigned int
   2161 // MIPS32BE:#define __UINTPTR_WIDTH__ 32
   2162 // MIPS32BE:#define __UINT_FAST16_MAX__ 65535U
   2163 // MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
   2164 // MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
   2165 // MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
   2166 // MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   2167 // MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
   2168 // MIPS32BE:#define __UINT_FAST8_MAX__ 255U
   2169 // MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
   2170 // MIPS32BE:#define __UINT_LEAST16_MAX__ 65535U
   2171 // MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
   2172 // MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
   2173 // MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
   2174 // MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   2175 // MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
   2176 // MIPS32BE:#define __UINT_LEAST8_MAX__ 255U
   2177 // MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
   2178 // MIPS32BE:#define __USER_LABEL_PREFIX__ _
   2179 // MIPS32BE:#define __WCHAR_MAX__ 2147483647
   2180 // MIPS32BE:#define __WCHAR_TYPE__ int
   2181 // MIPS32BE:#define __WCHAR_WIDTH__ 32
   2182 // MIPS32BE:#define __WINT_TYPE__ int
   2183 // MIPS32BE:#define __WINT_WIDTH__ 32
   2184 // MIPS32BE:#define __clang__ 1
   2185 // MIPS32BE:#define __llvm__ 1
   2186 // MIPS32BE:#define __mips 32
   2187 // MIPS32BE:#define __mips__ 1
   2188 // MIPS32BE:#define __mips_fpr 32
   2189 // MIPS32BE:#define __mips_hard_float 1
   2190 // MIPS32BE:#define __mips_o32 1
   2191 // MIPS32BE:#define _mips 1
   2192 // MIPS32BE:#define mips 1
   2193 //
   2194 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mipsel-none-none < /dev/null | FileCheck -check-prefix MIPS32EL %s
   2195 //
   2196 // MIPS32EL:#define MIPSEL 1
   2197 // MIPS32EL:#define _ABIO32 1
   2198 // MIPS32EL-NOT:#define _LP64
   2199 // MIPS32EL:#define _MIPSEL 1
   2200 // MIPS32EL:#define _MIPS_ARCH "mips32r2"
   2201 // MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
   2202 // MIPS32EL:#define _MIPS_FPSET 16
   2203 // MIPS32EL:#define _MIPS_SIM _ABIO32
   2204 // MIPS32EL:#define _MIPS_SZINT 32
   2205 // MIPS32EL:#define _MIPS_SZLONG 32
   2206 // MIPS32EL:#define _MIPS_SZPTR 32
   2207 // MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   2208 // MIPS32EL:#define __CHAR16_TYPE__ unsigned short
   2209 // MIPS32EL:#define __CHAR32_TYPE__ unsigned int
   2210 // MIPS32EL:#define __CHAR_BIT__ 8
   2211 // MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
   2212 // MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   2213 // MIPS32EL:#define __DBL_DIG__ 15
   2214 // MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
   2215 // MIPS32EL:#define __DBL_HAS_DENORM__ 1
   2216 // MIPS32EL:#define __DBL_HAS_INFINITY__ 1
   2217 // MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
   2218 // MIPS32EL:#define __DBL_MANT_DIG__ 53
   2219 // MIPS32EL:#define __DBL_MAX_10_EXP__ 308
   2220 // MIPS32EL:#define __DBL_MAX_EXP__ 1024
   2221 // MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
   2222 // MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
   2223 // MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
   2224 // MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
   2225 // MIPS32EL:#define __DECIMAL_DIG__ 17
   2226 // MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   2227 // MIPS32EL:#define __FLT_DIG__ 6
   2228 // MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
   2229 // MIPS32EL:#define __FLT_EVAL_METHOD__ 0
   2230 // MIPS32EL:#define __FLT_HAS_DENORM__ 1
   2231 // MIPS32EL:#define __FLT_HAS_INFINITY__ 1
   2232 // MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
   2233 // MIPS32EL:#define __FLT_MANT_DIG__ 24
   2234 // MIPS32EL:#define __FLT_MAX_10_EXP__ 38
   2235 // MIPS32EL:#define __FLT_MAX_EXP__ 128
   2236 // MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
   2237 // MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
   2238 // MIPS32EL:#define __FLT_MIN_EXP__ (-125)
   2239 // MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
   2240 // MIPS32EL:#define __FLT_RADIX__ 2
   2241 // MIPS32EL:#define __INT16_MAX__ 32767
   2242 // MIPS32EL:#define __INT16_TYPE__ short
   2243 // MIPS32EL:#define __INT32_MAX__ 2147483647
   2244 // MIPS32EL:#define __INT32_TYPE__ int
   2245 // MIPS32EL:#define __INT64_C_SUFFIX__ LL
   2246 // MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
   2247 // MIPS32EL:#define __INT64_TYPE__ long long int
   2248 // MIPS32EL:#define __INT8_MAX__ 127
   2249 // MIPS32EL:#define __INT8_TYPE__ char
   2250 // MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
   2251 // MIPS32EL:#define __INTMAX_TYPE__ long long int
   2252 // MIPS32EL:#define __INTMAX_WIDTH__ 64
   2253 // MIPS32EL:#define __INTPTR_MAX__ 2147483647L
   2254 // MIPS32EL:#define __INTPTR_TYPE__ long int
   2255 // MIPS32EL:#define __INTPTR_WIDTH__ 32
   2256 // MIPS32EL:#define __INT_FAST16_MAX__ 32767
   2257 // MIPS32EL:#define __INT_FAST16_TYPE__ short
   2258 // MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
   2259 // MIPS32EL:#define __INT_FAST32_TYPE__ int
   2260 // MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
   2261 // MIPS32EL:#define __INT_FAST64_TYPE__ long long int
   2262 // MIPS32EL:#define __INT_FAST8_MAX__ 127
   2263 // MIPS32EL:#define __INT_FAST8_TYPE__ char
   2264 // MIPS32EL:#define __INT_LEAST16_MAX__ 32767
   2265 // MIPS32EL:#define __INT_LEAST16_TYPE__ short
   2266 // MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
   2267 // MIPS32EL:#define __INT_LEAST32_TYPE__ int
   2268 // MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   2269 // MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
   2270 // MIPS32EL:#define __INT_LEAST8_MAX__ 127
   2271 // MIPS32EL:#define __INT_LEAST8_TYPE__ char
   2272 // MIPS32EL:#define __INT_MAX__ 2147483647
   2273 // MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   2274 // MIPS32EL:#define __LDBL_DIG__ 15
   2275 // MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   2276 // MIPS32EL:#define __LDBL_HAS_DENORM__ 1
   2277 // MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
   2278 // MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
   2279 // MIPS32EL:#define __LDBL_MANT_DIG__ 53
   2280 // MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
   2281 // MIPS32EL:#define __LDBL_MAX_EXP__ 1024
   2282 // MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
   2283 // MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
   2284 // MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
   2285 // MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
   2286 // MIPS32EL:#define __LITTLE_ENDIAN__ 1
   2287 // MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
   2288 // MIPS32EL:#define __LONG_MAX__ 2147483647L
   2289 // MIPS32EL-NOT:#define __LP64__
   2290 // MIPS32EL:#define __MIPSEL 1
   2291 // MIPS32EL:#define __MIPSEL__ 1
   2292 // MIPS32EL:#define __POINTER_WIDTH__ 32
   2293 // MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
   2294 // MIPS32EL:#define __PTRDIFF_TYPE__ int
   2295 // MIPS32EL:#define __PTRDIFF_WIDTH__ 32
   2296 // MIPS32EL:#define __REGISTER_PREFIX__
   2297 // MIPS32EL:#define __SCHAR_MAX__ 127
   2298 // MIPS32EL:#define __SHRT_MAX__ 32767
   2299 // MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
   2300 // MIPS32EL:#define __SIZEOF_DOUBLE__ 8
   2301 // MIPS32EL:#define __SIZEOF_FLOAT__ 4
   2302 // MIPS32EL:#define __SIZEOF_INT__ 4
   2303 // MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
   2304 // MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
   2305 // MIPS32EL:#define __SIZEOF_LONG__ 4
   2306 // MIPS32EL:#define __SIZEOF_POINTER__ 4
   2307 // MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
   2308 // MIPS32EL:#define __SIZEOF_SHORT__ 2
   2309 // MIPS32EL:#define __SIZEOF_SIZE_T__ 4
   2310 // MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
   2311 // MIPS32EL:#define __SIZEOF_WINT_T__ 4
   2312 // MIPS32EL:#define __SIZE_MAX__ 4294967295U
   2313 // MIPS32EL:#define __SIZE_TYPE__ unsigned int
   2314 // MIPS32EL:#define __SIZE_WIDTH__ 32
   2315 // MIPS32EL:#define __UINT16_C_SUFFIX__ U
   2316 // MIPS32EL:#define __UINT16_MAX__ 65535U
   2317 // MIPS32EL:#define __UINT16_TYPE__ unsigned short
   2318 // MIPS32EL:#define __UINT32_C_SUFFIX__ U
   2319 // MIPS32EL:#define __UINT32_MAX__ 4294967295U
   2320 // MIPS32EL:#define __UINT32_TYPE__ unsigned int
   2321 // MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
   2322 // MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
   2323 // MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
   2324 // MIPS32EL:#define __UINT8_C_SUFFIX__ U
   2325 // MIPS32EL:#define __UINT8_MAX__ 255U
   2326 // MIPS32EL:#define __UINT8_TYPE__ unsigned char
   2327 // MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
   2328 // MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
   2329 // MIPS32EL:#define __UINTMAX_WIDTH__ 64
   2330 // MIPS32EL:#define __UINTPTR_MAX__ 4294967295U
   2331 // MIPS32EL:#define __UINTPTR_TYPE__ unsigned int
   2332 // MIPS32EL:#define __UINTPTR_WIDTH__ 32
   2333 // MIPS32EL:#define __UINT_FAST16_MAX__ 65535U
   2334 // MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
   2335 // MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
   2336 // MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
   2337 // MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   2338 // MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
   2339 // MIPS32EL:#define __UINT_FAST8_MAX__ 255U
   2340 // MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
   2341 // MIPS32EL:#define __UINT_LEAST16_MAX__ 65535U
   2342 // MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
   2343 // MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
   2344 // MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
   2345 // MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   2346 // MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
   2347 // MIPS32EL:#define __UINT_LEAST8_MAX__ 255U
   2348 // MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
   2349 // MIPS32EL:#define __USER_LABEL_PREFIX__ _
   2350 // MIPS32EL:#define __WCHAR_MAX__ 2147483647
   2351 // MIPS32EL:#define __WCHAR_TYPE__ int
   2352 // MIPS32EL:#define __WCHAR_WIDTH__ 32
   2353 // MIPS32EL:#define __WINT_TYPE__ int
   2354 // MIPS32EL:#define __WINT_WIDTH__ 32
   2355 // MIPS32EL:#define __clang__ 1
   2356 // MIPS32EL:#define __llvm__ 1
   2357 // MIPS32EL:#define __mips 32
   2358 // MIPS32EL:#define __mips__ 1
   2359 // MIPS32EL:#define __mips_fpr 32
   2360 // MIPS32EL:#define __mips_hard_float 1
   2361 // MIPS32EL:#define __mips_o32 1
   2362 // MIPS32EL:#define _mips 1
   2363 // MIPS32EL:#define mips 1
   2364 //
   2365 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -check-prefix MIPS64BE %s
   2366 //
   2367 // MIPS64BE:#define MIPSEB 1
   2368 // MIPS64BE:#define _ABI64 3
   2369 // MIPS64BE:#define _LP64 1
   2370 // MIPS64BE:#define _MIPSEB 1
   2371 // MIPS64BE:#define _MIPS_ARCH "mips64r2"
   2372 // MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
   2373 // MIPS64BE:#define _MIPS_FPSET 32
   2374 // MIPS64BE:#define _MIPS_SIM _ABI64
   2375 // MIPS64BE:#define _MIPS_SZINT 32
   2376 // MIPS64BE:#define _MIPS_SZLONG 64
   2377 // MIPS64BE:#define _MIPS_SZPTR 64
   2378 // MIPS64BE:#define __BIG_ENDIAN__ 1
   2379 // MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   2380 // MIPS64BE:#define __CHAR16_TYPE__ unsigned short
   2381 // MIPS64BE:#define __CHAR32_TYPE__ unsigned int
   2382 // MIPS64BE:#define __CHAR_BIT__ 8
   2383 // MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
   2384 // MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   2385 // MIPS64BE:#define __DBL_DIG__ 15
   2386 // MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
   2387 // MIPS64BE:#define __DBL_HAS_DENORM__ 1
   2388 // MIPS64BE:#define __DBL_HAS_INFINITY__ 1
   2389 // MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
   2390 // MIPS64BE:#define __DBL_MANT_DIG__ 53
   2391 // MIPS64BE:#define __DBL_MAX_10_EXP__ 308
   2392 // MIPS64BE:#define __DBL_MAX_EXP__ 1024
   2393 // MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
   2394 // MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
   2395 // MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
   2396 // MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
   2397 // MIPS64BE:#define __DECIMAL_DIG__ 36
   2398 // MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   2399 // MIPS64BE:#define __FLT_DIG__ 6
   2400 // MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
   2401 // MIPS64BE:#define __FLT_EVAL_METHOD__ 0
   2402 // MIPS64BE:#define __FLT_HAS_DENORM__ 1
   2403 // MIPS64BE:#define __FLT_HAS_INFINITY__ 1
   2404 // MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
   2405 // MIPS64BE:#define __FLT_MANT_DIG__ 24
   2406 // MIPS64BE:#define __FLT_MAX_10_EXP__ 38
   2407 // MIPS64BE:#define __FLT_MAX_EXP__ 128
   2408 // MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
   2409 // MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
   2410 // MIPS64BE:#define __FLT_MIN_EXP__ (-125)
   2411 // MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
   2412 // MIPS64BE:#define __FLT_RADIX__ 2
   2413 // MIPS64BE:#define __INT16_MAX__ 32767
   2414 // MIPS64BE:#define __INT16_TYPE__ short
   2415 // MIPS64BE:#define __INT32_MAX__ 2147483647
   2416 // MIPS64BE:#define __INT32_TYPE__ int
   2417 // MIPS64BE:#define __INT64_C_SUFFIX__ LL
   2418 // MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
   2419 // MIPS64BE:#define __INT64_TYPE__ long long int
   2420 // MIPS64BE:#define __INT8_MAX__ 127
   2421 // MIPS64BE:#define __INT8_TYPE__ char
   2422 // MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807LL
   2423 // MIPS64BE:#define __INTMAX_TYPE__ long long int
   2424 // MIPS64BE:#define __INTMAX_WIDTH__ 64
   2425 // MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
   2426 // MIPS64BE:#define __INTPTR_TYPE__ long int
   2427 // MIPS64BE:#define __INTPTR_WIDTH__ 64
   2428 // MIPS64BE:#define __INT_FAST16_MAX__ 32767
   2429 // MIPS64BE:#define __INT_FAST16_TYPE__ short
   2430 // MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
   2431 // MIPS64BE:#define __INT_FAST32_TYPE__ int
   2432 // MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
   2433 // MIPS64BE:#define __INT_FAST64_TYPE__ long int
   2434 // MIPS64BE:#define __INT_FAST8_MAX__ 127
   2435 // MIPS64BE:#define __INT_FAST8_TYPE__ char
   2436 // MIPS64BE:#define __INT_LEAST16_MAX__ 32767
   2437 // MIPS64BE:#define __INT_LEAST16_TYPE__ short
   2438 // MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
   2439 // MIPS64BE:#define __INT_LEAST32_TYPE__ int
   2440 // MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
   2441 // MIPS64BE:#define __INT_LEAST64_TYPE__ long int
   2442 // MIPS64BE:#define __INT_LEAST8_MAX__ 127
   2443 // MIPS64BE:#define __INT_LEAST8_TYPE__ char
   2444 // MIPS64BE:#define __INT_MAX__ 2147483647
   2445 // MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
   2446 // MIPS64BE:#define __LDBL_DIG__ 33
   2447 // MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
   2448 // MIPS64BE:#define __LDBL_HAS_DENORM__ 1
   2449 // MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
   2450 // MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
   2451 // MIPS64BE:#define __LDBL_MANT_DIG__ 113
   2452 // MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
   2453 // MIPS64BE:#define __LDBL_MAX_EXP__ 16384
   2454 // MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
   2455 // MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
   2456 // MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
   2457 // MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
   2458 // MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
   2459 // MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
   2460 // MIPS64BE:#define __LP64__ 1
   2461 // MIPS64BE:#define __MIPSEB 1
   2462 // MIPS64BE:#define __MIPSEB__ 1
   2463 // MIPS64BE:#define __POINTER_WIDTH__ 64
   2464 // MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
   2465 // MIPS64BE:#define __PTRDIFF_TYPE__ long int
   2466 // MIPS64BE:#define __PTRDIFF_WIDTH__ 64
   2467 // MIPS64BE:#define __REGISTER_PREFIX__
   2468 // MIPS64BE:#define __SCHAR_MAX__ 127
   2469 // MIPS64BE:#define __SHRT_MAX__ 32767
   2470 // MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
   2471 // MIPS64BE:#define __SIZEOF_DOUBLE__ 8
   2472 // MIPS64BE:#define __SIZEOF_FLOAT__ 4
   2473 // MIPS64BE:#define __SIZEOF_INT__ 4
   2474 // MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
   2475 // MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
   2476 // MIPS64BE:#define __SIZEOF_LONG__ 8
   2477 // MIPS64BE:#define __SIZEOF_POINTER__ 8
   2478 // MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
   2479 // MIPS64BE:#define __SIZEOF_SHORT__ 2
   2480 // MIPS64BE:#define __SIZEOF_SIZE_T__ 8
   2481 // MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
   2482 // MIPS64BE:#define __SIZEOF_WINT_T__ 4
   2483 // MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
   2484 // MIPS64BE:#define __SIZE_TYPE__ long unsigned int
   2485 // MIPS64BE:#define __SIZE_WIDTH__ 64
   2486 // MIPS64BE:#define __UINT16_C_SUFFIX__ U
   2487 // MIPS64BE:#define __UINT16_MAX__ 65535U
   2488 // MIPS64BE:#define __UINT16_TYPE__ unsigned short
   2489 // MIPS64BE:#define __UINT32_C_SUFFIX__ U
   2490 // MIPS64BE:#define __UINT32_MAX__ 4294967295U
   2491 // MIPS64BE:#define __UINT32_TYPE__ unsigned int
   2492 // MIPS64BE:#define __UINT64_C_SUFFIX__ UL
   2493 // MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
   2494 // MIPS64BE:#define __UINT64_TYPE__ long unsigned int
   2495 // MIPS64BE:#define __UINT8_C_SUFFIX__ U
   2496 // MIPS64BE:#define __UINT8_MAX__ 255U
   2497 // MIPS64BE:#define __UINT8_TYPE__ unsigned char
   2498 // MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
   2499 // MIPS64BE:#define __UINTMAX_TYPE__ long long unsigned int
   2500 // MIPS64BE:#define __UINTMAX_WIDTH__ 64
   2501 // MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
   2502 // MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
   2503 // MIPS64BE:#define __UINTPTR_WIDTH__ 64
   2504 // MIPS64BE:#define __UINT_FAST16_MAX__ 65535U
   2505 // MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
   2506 // MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
   2507 // MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
   2508 // MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   2509 // MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
   2510 // MIPS64BE:#define __UINT_FAST8_MAX__ 255U
   2511 // MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
   2512 // MIPS64BE:#define __UINT_LEAST16_MAX__ 65535U
   2513 // MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
   2514 // MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
   2515 // MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
   2516 // MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   2517 // MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
   2518 // MIPS64BE:#define __UINT_LEAST8_MAX__ 255U
   2519 // MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
   2520 // MIPS64BE:#define __USER_LABEL_PREFIX__ _
   2521 // MIPS64BE:#define __WCHAR_MAX__ 2147483647
   2522 // MIPS64BE:#define __WCHAR_TYPE__ int
   2523 // MIPS64BE:#define __WCHAR_WIDTH__ 32
   2524 // MIPS64BE:#define __WINT_TYPE__ int
   2525 // MIPS64BE:#define __WINT_WIDTH__ 32
   2526 // MIPS64BE:#define __clang__ 1
   2527 // MIPS64BE:#define __llvm__ 1
   2528 // MIPS64BE:#define __mips 64
   2529 // MIPS64BE:#define __mips64 1
   2530 // MIPS64BE:#define __mips64__ 1
   2531 // MIPS64BE:#define __mips__ 1
   2532 // MIPS64BE:#define __mips_fpr 64
   2533 // MIPS64BE:#define __mips_hard_float 1
   2534 // MIPS64BE:#define __mips_n64 1
   2535 // MIPS64BE:#define _mips 1
   2536 // MIPS64BE:#define mips 1
   2537 //
   2538 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-none-none < /dev/null | FileCheck -check-prefix MIPS64EL %s
   2539 //
   2540 // MIPS64EL:#define MIPSEL 1
   2541 // MIPS64EL:#define _ABI64 3
   2542 // MIPS64EL:#define _LP64 1
   2543 // MIPS64EL:#define _MIPSEL 1
   2544 // MIPS64EL:#define _MIPS_ARCH "mips64r2"
   2545 // MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
   2546 // MIPS64EL:#define _MIPS_FPSET 32
   2547 // MIPS64EL:#define _MIPS_SIM _ABI64
   2548 // MIPS64EL:#define _MIPS_SZINT 32
   2549 // MIPS64EL:#define _MIPS_SZLONG 64
   2550 // MIPS64EL:#define _MIPS_SZPTR 64
   2551 // MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   2552 // MIPS64EL:#define __CHAR16_TYPE__ unsigned short
   2553 // MIPS64EL:#define __CHAR32_TYPE__ unsigned int
   2554 // MIPS64EL:#define __CHAR_BIT__ 8
   2555 // MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
   2556 // MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   2557 // MIPS64EL:#define __DBL_DIG__ 15
   2558 // MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
   2559 // MIPS64EL:#define __DBL_HAS_DENORM__ 1
   2560 // MIPS64EL:#define __DBL_HAS_INFINITY__ 1
   2561 // MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
   2562 // MIPS64EL:#define __DBL_MANT_DIG__ 53
   2563 // MIPS64EL:#define __DBL_MAX_10_EXP__ 308
   2564 // MIPS64EL:#define __DBL_MAX_EXP__ 1024
   2565 // MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
   2566 // MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
   2567 // MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
   2568 // MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
   2569 // MIPS64EL:#define __DECIMAL_DIG__ 36
   2570 // MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   2571 // MIPS64EL:#define __FLT_DIG__ 6
   2572 // MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
   2573 // MIPS64EL:#define __FLT_EVAL_METHOD__ 0
   2574 // MIPS64EL:#define __FLT_HAS_DENORM__ 1
   2575 // MIPS64EL:#define __FLT_HAS_INFINITY__ 1
   2576 // MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
   2577 // MIPS64EL:#define __FLT_MANT_DIG__ 24
   2578 // MIPS64EL:#define __FLT_MAX_10_EXP__ 38
   2579 // MIPS64EL:#define __FLT_MAX_EXP__ 128
   2580 // MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
   2581 // MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
   2582 // MIPS64EL:#define __FLT_MIN_EXP__ (-125)
   2583 // MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
   2584 // MIPS64EL:#define __FLT_RADIX__ 2
   2585 // MIPS64EL:#define __INT16_MAX__ 32767
   2586 // MIPS64EL:#define __INT16_TYPE__ short
   2587 // MIPS64EL:#define __INT32_MAX__ 2147483647
   2588 // MIPS64EL:#define __INT32_TYPE__ int
   2589 // MIPS64EL:#define __INT64_C_SUFFIX__ LL
   2590 // MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
   2591 // MIPS64EL:#define __INT64_TYPE__ long long int
   2592 // MIPS64EL:#define __INT8_MAX__ 127
   2593 // MIPS64EL:#define __INT8_TYPE__ char
   2594 // MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807LL
   2595 // MIPS64EL:#define __INTMAX_TYPE__ long long int
   2596 // MIPS64EL:#define __INTMAX_WIDTH__ 64
   2597 // MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
   2598 // MIPS64EL:#define __INTPTR_TYPE__ long int
   2599 // MIPS64EL:#define __INTPTR_WIDTH__ 64
   2600 // MIPS64EL:#define __INT_FAST16_MAX__ 32767
   2601 // MIPS64EL:#define __INT_FAST16_TYPE__ short
   2602 // MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
   2603 // MIPS64EL:#define __INT_FAST32_TYPE__ int
   2604 // MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
   2605 // MIPS64EL:#define __INT_FAST64_TYPE__ long int
   2606 // MIPS64EL:#define __INT_FAST8_MAX__ 127
   2607 // MIPS64EL:#define __INT_FAST8_TYPE__ char
   2608 // MIPS64EL:#define __INT_LEAST16_MAX__ 32767
   2609 // MIPS64EL:#define __INT_LEAST16_TYPE__ short
   2610 // MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
   2611 // MIPS64EL:#define __INT_LEAST32_TYPE__ int
   2612 // MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
   2613 // MIPS64EL:#define __INT_LEAST64_TYPE__ long int
   2614 // MIPS64EL:#define __INT_LEAST8_MAX__ 127
   2615 // MIPS64EL:#define __INT_LEAST8_TYPE__ char
   2616 // MIPS64EL:#define __INT_MAX__ 2147483647
   2617 // MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
   2618 // MIPS64EL:#define __LDBL_DIG__ 33
   2619 // MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
   2620 // MIPS64EL:#define __LDBL_HAS_DENORM__ 1
   2621 // MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
   2622 // MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
   2623 // MIPS64EL:#define __LDBL_MANT_DIG__ 113
   2624 // MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
   2625 // MIPS64EL:#define __LDBL_MAX_EXP__ 16384
   2626 // MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
   2627 // MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
   2628 // MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
   2629 // MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
   2630 // MIPS64EL:#define __LITTLE_ENDIAN__ 1
   2631 // MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
   2632 // MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
   2633 // MIPS64EL:#define __LP64__ 1
   2634 // MIPS64EL:#define __MIPSEL 1
   2635 // MIPS64EL:#define __MIPSEL__ 1
   2636 // MIPS64EL:#define __POINTER_WIDTH__ 64
   2637 // MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
   2638 // MIPS64EL:#define __PTRDIFF_TYPE__ long int
   2639 // MIPS64EL:#define __PTRDIFF_WIDTH__ 64
   2640 // MIPS64EL:#define __REGISTER_PREFIX__
   2641 // MIPS64EL:#define __SCHAR_MAX__ 127
   2642 // MIPS64EL:#define __SHRT_MAX__ 32767
   2643 // MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
   2644 // MIPS64EL:#define __SIZEOF_DOUBLE__ 8
   2645 // MIPS64EL:#define __SIZEOF_FLOAT__ 4
   2646 // MIPS64EL:#define __SIZEOF_INT__ 4
   2647 // MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
   2648 // MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
   2649 // MIPS64EL:#define __SIZEOF_LONG__ 8
   2650 // MIPS64EL:#define __SIZEOF_POINTER__ 8
   2651 // MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
   2652 // MIPS64EL:#define __SIZEOF_SHORT__ 2
   2653 // MIPS64EL:#define __SIZEOF_SIZE_T__ 8
   2654 // MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
   2655 // MIPS64EL:#define __SIZEOF_WINT_T__ 4
   2656 // MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
   2657 // MIPS64EL:#define __SIZE_TYPE__ long unsigned int
   2658 // MIPS64EL:#define __SIZE_WIDTH__ 64
   2659 // MIPS64EL:#define __UINT16_C_SUFFIX__ U
   2660 // MIPS64EL:#define __UINT16_MAX__ 65535U
   2661 // MIPS64EL:#define __UINT16_TYPE__ unsigned short
   2662 // MIPS64EL:#define __UINT32_C_SUFFIX__ U
   2663 // MIPS64EL:#define __UINT32_MAX__ 4294967295U
   2664 // MIPS64EL:#define __UINT32_TYPE__ unsigned int
   2665 // MIPS64EL:#define __UINT64_C_SUFFIX__ UL
   2666 // MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
   2667 // MIPS64EL:#define __UINT64_TYPE__ long unsigned int
   2668 // MIPS64EL:#define __UINT8_C_SUFFIX__ U
   2669 // MIPS64EL:#define __UINT8_MAX__ 255U
   2670 // MIPS64EL:#define __UINT8_TYPE__ unsigned char
   2671 // MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
   2672 // MIPS64EL:#define __UINTMAX_TYPE__ long long unsigned int
   2673 // MIPS64EL:#define __UINTMAX_WIDTH__ 64
   2674 // MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
   2675 // MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
   2676 // MIPS64EL:#define __UINTPTR_WIDTH__ 64
   2677 // MIPS64EL:#define __UINT_FAST16_MAX__ 65535U
   2678 // MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
   2679 // MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
   2680 // MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
   2681 // MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   2682 // MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
   2683 // MIPS64EL:#define __UINT_FAST8_MAX__ 255U
   2684 // MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
   2685 // MIPS64EL:#define __UINT_LEAST16_MAX__ 65535U
   2686 // MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
   2687 // MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
   2688 // MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
   2689 // MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   2690 // MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
   2691 // MIPS64EL:#define __UINT_LEAST8_MAX__ 255U
   2692 // MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
   2693 // MIPS64EL:#define __USER_LABEL_PREFIX__ _
   2694 // MIPS64EL:#define __WCHAR_MAX__ 2147483647
   2695 // MIPS64EL:#define __WCHAR_TYPE__ int
   2696 // MIPS64EL:#define __WCHAR_WIDTH__ 32
   2697 // MIPS64EL:#define __WINT_TYPE__ int
   2698 // MIPS64EL:#define __WINT_WIDTH__ 32
   2699 // MIPS64EL:#define __clang__ 1
   2700 // MIPS64EL:#define __llvm__ 1
   2701 // MIPS64EL:#define __mips 64
   2702 // MIPS64EL:#define __mips64 1
   2703 // MIPS64EL:#define __mips64__ 1
   2704 // MIPS64EL:#define __mips__ 1
   2705 // MIPS64EL:#define __mips_fpr 64
   2706 // MIPS64EL:#define __mips_hard_float 1
   2707 // MIPS64EL:#define __mips_n64 1
   2708 // MIPS64EL:#define _mips 1
   2709 // MIPS64EL:#define mips 1
   2710 //
   2711 // Check MIPS arch and isa macros
   2712 //
   2713 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
   2714 // RUN:            < /dev/null \
   2715 // RUN:   | FileCheck -check-prefix MIPS-ARCH-DEF32 %s
   2716 //
   2717 // MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
   2718 // MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
   2719 // MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
   2720 // MIPS-ARCH-DEF32:#define __mips_isa_rev 2
   2721 //
   2722 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
   2723 // RUN:            -target-cpu mips32 < /dev/null \
   2724 // RUN:   | FileCheck -check-prefix MIPS-ARCH-32 %s
   2725 //
   2726 // MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
   2727 // MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
   2728 // MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
   2729 // MIPS-ARCH-32:#define __mips_isa_rev 1
   2730 //
   2731 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
   2732 // RUN:            -target-cpu mips32r2 < /dev/null \
   2733 // RUN:   | FileCheck -check-prefix MIPS-ARCH-32R2 %s
   2734 //
   2735 // MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
   2736 // MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
   2737 // MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
   2738 // MIPS-ARCH-32R2:#define __mips_isa_rev 2
   2739 //
   2740 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
   2741 // RUN:            < /dev/null \
   2742 // RUN:   | FileCheck -check-prefix MIPS-ARCH-DEF64 %s
   2743 //
   2744 // MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
   2745 // MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
   2746 // MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
   2747 // MIPS-ARCH-DEF64:#define __mips_isa_rev 2
   2748 //
   2749 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
   2750 // RUN:            -target-cpu mips64 < /dev/null \
   2751 // RUN:   | FileCheck -check-prefix MIPS-ARCH-64 %s
   2752 //
   2753 // MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
   2754 // MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
   2755 // MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
   2756 // MIPS-ARCH-64:#define __mips_isa_rev 1
   2757 //
   2758 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
   2759 // RUN:            -target-cpu mips64r2 < /dev/null \
   2760 // RUN:   | FileCheck -check-prefix MIPS-ARCH-64R2 %s
   2761 //
   2762 // MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
   2763 // MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
   2764 // MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
   2765 // MIPS-ARCH-64R2:#define __mips_isa_rev 2
   2766 //
   2767 // Check MIPS float ABI macros
   2768 //
   2769 // RUN: %clang_cc1 -E -dM -ffreestanding \
   2770 // RUN:   -triple=mips-none-none < /dev/null \
   2771 // RUN:   | FileCheck -check-prefix MIPS-FABI-HARD %s
   2772 // MIPS-FABI-HARD:#define __mips_hard_float 1
   2773 //
   2774 // RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
   2775 // RUN:   -triple=mips-none-none < /dev/null \
   2776 // RUN:   | FileCheck -check-prefix MIPS-FABI-SOFT %s
   2777 // MIPS-FABI-SOFT:#define __mips_soft_float 1
   2778 //
   2779 // RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
   2780 // RUN:   -triple=mips-none-none < /dev/null \
   2781 // RUN:   | FileCheck -check-prefix MIPS-FABI-SINGLE %s
   2782 // MIPS-FABI-SINGLE:#define __mips_hard_float 1
   2783 // MIPS-FABI-SINGLE:#define __mips_single_float 1
   2784 //
   2785 // RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
   2786 // RUN:   -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
   2787 // RUN:   | FileCheck -check-prefix MIPS-FABI-SINGLE-SOFT %s
   2788 // MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
   2789 // MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
   2790 //
   2791 // Check MIPS features macros
   2792 //
   2793 // RUN: %clang_cc1 -target-feature +mips16 \
   2794 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2795 // RUN:   | FileCheck -check-prefix MIPS16 %s
   2796 // MIPS16:#define __mips16 1
   2797 //
   2798 // RUN: %clang_cc1 -target-feature -mips16 \
   2799 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2800 // RUN:   | FileCheck -check-prefix NOMIPS16 %s
   2801 // NOMIPS16-NOT:#define __mips16 1
   2802 //
   2803 // RUN: %clang_cc1 -target-feature +micromips \
   2804 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2805 // RUN:   | FileCheck -check-prefix MICROMIPS %s
   2806 // MICROMIPS:#define __mips_micromips 1
   2807 //
   2808 // RUN: %clang_cc1 -target-feature -micromips \
   2809 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2810 // RUN:   | FileCheck -check-prefix NOMICROMIPS %s
   2811 // NOMICROMIPS-NOT:#define __mips_micromips 1
   2812 //
   2813 // RUN: %clang_cc1 -target-feature +dsp \
   2814 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2815 // RUN:   | FileCheck -check-prefix MIPS-DSP %s
   2816 // MIPS-DSP:#define __mips_dsp 1
   2817 // MIPS-DSP:#define __mips_dsp_rev 1
   2818 // MIPS-DSP-NOT:#define __mips_dspr2 1
   2819 //
   2820 // RUN: %clang_cc1 -target-feature +dspr2 \
   2821 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2822 // RUN:   | FileCheck -check-prefix MIPS-DSPR2 %s
   2823 // MIPS-DSPR2:#define __mips_dsp 1
   2824 // MIPS-DSPR2:#define __mips_dsp_rev 2
   2825 // MIPS-DSPR2:#define __mips_dspr2 1
   2826 //
   2827 // RUN: %clang_cc1 -target-feature +msa \
   2828 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2829 // RUN:   | FileCheck -check-prefix MIPS-MSA %s
   2830 // MIPS-MSA:#define __mips_msa 1
   2831 //
   2832 // RUN: %clang_cc1 -target-feature +nan2008 \
   2833 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2834 // RUN:   | FileCheck -check-prefix MIPS-NAN2008 %s
   2835 // MIPS-NAN2008:#define __mips_nan2008 1
   2836 //
   2837 // RUN: %clang_cc1 -target-feature -fp64 \
   2838 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2839 // RUN:   | FileCheck -check-prefix MIPS32-MFP32 %s
   2840 // MIPS32-MFP32:#define _MIPS_FPSET 16
   2841 // MIPS32-MFP32:#define __mips_fpr 32
   2842 //
   2843 // RUN: %clang_cc1 -target-feature +fp64 \
   2844 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2845 // RUN:   | FileCheck -check-prefix MIPS32-MFP64 %s
   2846 // MIPS32-MFP64:#define _MIPS_FPSET 32
   2847 // MIPS32-MFP64:#define __mips_fpr 64
   2848 //
   2849 // RUN: %clang_cc1 -target-feature +single-float \
   2850 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2851 // RUN:   | FileCheck -check-prefix MIPS32-MFP32SF %s
   2852 // MIPS32-MFP32SF:#define _MIPS_FPSET 32
   2853 // MIPS32-MFP32SF:#define __mips_fpr 32
   2854 //
   2855 // RUN: %clang_cc1 -target-feature +fp64 \
   2856 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
   2857 // RUN:   | FileCheck -check-prefix MIPS64-MFP64 %s
   2858 // MIPS64-MFP64:#define _MIPS_FPSET 32
   2859 // MIPS64-MFP64:#define __mips_fpr 64
   2860 //
   2861 // RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
   2862 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
   2863 // RUN:   | FileCheck -check-prefix MIPS64-NOMFP64 %s
   2864 // MIPS64-NOMFP64:#define _MIPS_FPSET 32
   2865 // MIPS64-NOMFP64:#define __mips_fpr 32
   2866 //
   2867 // RUN: %clang_cc1 -target-cpu mips32r6 \
   2868 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
   2869 // RUN:   | FileCheck -check-prefix MIPS-XXR6 %s
   2870 // RUN: %clang_cc1 -target-cpu mips64r6 \
   2871 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
   2872 // RUN:   | FileCheck -check-prefix MIPS-XXR6 %s
   2873 // MIPS-XXR6:#define _MIPS_FPSET 32
   2874 // MIPS-XXR6:#define __mips_fpr 64
   2875 // MIPS-XXR6:#define __mips_nan2008 1
   2876 //
   2877 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -check-prefix MSP430 %s
   2878 //
   2879 // MSP430:#define MSP430 1
   2880 // MSP430-NOT:#define _LP64
   2881 // MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   2882 // MSP430:#define __CHAR16_TYPE__ unsigned short
   2883 // MSP430:#define __CHAR32_TYPE__ unsigned int
   2884 // MSP430:#define __CHAR_BIT__ 8
   2885 // MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   2886 // MSP430:#define __DBL_DIG__ 15
   2887 // MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
   2888 // MSP430:#define __DBL_HAS_DENORM__ 1
   2889 // MSP430:#define __DBL_HAS_INFINITY__ 1
   2890 // MSP430:#define __DBL_HAS_QUIET_NAN__ 1
   2891 // MSP430:#define __DBL_MANT_DIG__ 53
   2892 // MSP430:#define __DBL_MAX_10_EXP__ 308
   2893 // MSP430:#define __DBL_MAX_EXP__ 1024
   2894 // MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
   2895 // MSP430:#define __DBL_MIN_10_EXP__ (-307)
   2896 // MSP430:#define __DBL_MIN_EXP__ (-1021)
   2897 // MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
   2898 // MSP430:#define __DECIMAL_DIG__ 17
   2899 // MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   2900 // MSP430:#define __FLT_DIG__ 6
   2901 // MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
   2902 // MSP430:#define __FLT_EVAL_METHOD__ 0
   2903 // MSP430:#define __FLT_HAS_DENORM__ 1
   2904 // MSP430:#define __FLT_HAS_INFINITY__ 1
   2905 // MSP430:#define __FLT_HAS_QUIET_NAN__ 1
   2906 // MSP430:#define __FLT_MANT_DIG__ 24
   2907 // MSP430:#define __FLT_MAX_10_EXP__ 38
   2908 // MSP430:#define __FLT_MAX_EXP__ 128
   2909 // MSP430:#define __FLT_MAX__ 3.40282347e+38F
   2910 // MSP430:#define __FLT_MIN_10_EXP__ (-37)
   2911 // MSP430:#define __FLT_MIN_EXP__ (-125)
   2912 // MSP430:#define __FLT_MIN__ 1.17549435e-38F
   2913 // MSP430:#define __FLT_RADIX__ 2
   2914 // MSP430:#define __INT16_MAX__ 32767
   2915 // MSP430:#define __INT16_TYPE__ short
   2916 // MSP430:#define __INT32_C_SUFFIX__ L
   2917 // MSP430:#define __INT32_MAX__ 2147483647L
   2918 // MSP430:#define __INT32_TYPE__ long int
   2919 // MSP430:#define __INT64_C_SUFFIX__ LL
   2920 // MSP430:#define __INT64_MAX__ 9223372036854775807LL
   2921 // MSP430:#define __INT64_TYPE__ long long int
   2922 // MSP430:#define __INT8_MAX__ 127
   2923 // MSP430:#define __INT8_TYPE__ char
   2924 // MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
   2925 // MSP430:#define __INTMAX_TYPE__ long long int
   2926 // MSP430:#define __INTMAX_WIDTH__ 64
   2927 // MSP430:#define __INTPTR_MAX__ 32767
   2928 // MSP430:#define __INTPTR_TYPE__ int
   2929 // MSP430:#define __INTPTR_WIDTH__ 16
   2930 // MSP430:#define __INT_FAST16_MAX__ 32767
   2931 // MSP430:#define __INT_FAST16_TYPE__ short
   2932 // MSP430:#define __INT_FAST32_MAX__ 2147483647L
   2933 // MSP430:#define __INT_FAST32_TYPE__ long int
   2934 // MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
   2935 // MSP430:#define __INT_FAST64_TYPE__ long long int
   2936 // MSP430:#define __INT_FAST8_MAX__ 127
   2937 // MSP430:#define __INT_FAST8_TYPE__ char
   2938 // MSP430:#define __INT_LEAST16_MAX__ 32767
   2939 // MSP430:#define __INT_LEAST16_TYPE__ short
   2940 // MSP430:#define __INT_LEAST32_MAX__ 2147483647L
   2941 // MSP430:#define __INT_LEAST32_TYPE__ long int
   2942 // MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   2943 // MSP430:#define __INT_LEAST64_TYPE__ long long int
   2944 // MSP430:#define __INT_LEAST8_MAX__ 127
   2945 // MSP430:#define __INT_LEAST8_TYPE__ char
   2946 // MSP430:#define __INT_MAX__ 32767
   2947 // MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   2948 // MSP430:#define __LDBL_DIG__ 15
   2949 // MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   2950 // MSP430:#define __LDBL_HAS_DENORM__ 1
   2951 // MSP430:#define __LDBL_HAS_INFINITY__ 1
   2952 // MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
   2953 // MSP430:#define __LDBL_MANT_DIG__ 53
   2954 // MSP430:#define __LDBL_MAX_10_EXP__ 308
   2955 // MSP430:#define __LDBL_MAX_EXP__ 1024
   2956 // MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
   2957 // MSP430:#define __LDBL_MIN_10_EXP__ (-307)
   2958 // MSP430:#define __LDBL_MIN_EXP__ (-1021)
   2959 // MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
   2960 // MSP430:#define __LITTLE_ENDIAN__ 1
   2961 // MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
   2962 // MSP430:#define __LONG_MAX__ 2147483647L
   2963 // MSP430-NOT:#define __LP64__
   2964 // MSP430:#define __MSP430__ 1
   2965 // MSP430:#define __POINTER_WIDTH__ 16
   2966 // MSP430:#define __PTRDIFF_TYPE__ int
   2967 // MSP430:#define __PTRDIFF_WIDTH__ 16
   2968 // MSP430:#define __SCHAR_MAX__ 127
   2969 // MSP430:#define __SHRT_MAX__ 32767
   2970 // MSP430:#define __SIG_ATOMIC_WIDTH__ 32
   2971 // MSP430:#define __SIZEOF_DOUBLE__ 8
   2972 // MSP430:#define __SIZEOF_FLOAT__ 4
   2973 // MSP430:#define __SIZEOF_INT__ 2
   2974 // MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
   2975 // MSP430:#define __SIZEOF_LONG_LONG__ 8
   2976 // MSP430:#define __SIZEOF_LONG__ 4
   2977 // MSP430:#define __SIZEOF_POINTER__ 2
   2978 // MSP430:#define __SIZEOF_PTRDIFF_T__ 2
   2979 // MSP430:#define __SIZEOF_SHORT__ 2
   2980 // MSP430:#define __SIZEOF_SIZE_T__ 2
   2981 // MSP430:#define __SIZEOF_WCHAR_T__ 2
   2982 // MSP430:#define __SIZEOF_WINT_T__ 2
   2983 // MSP430:#define __SIZE_MAX__ 65535U
   2984 // MSP430:#define __SIZE_TYPE__ unsigned int
   2985 // MSP430:#define __SIZE_WIDTH__ 16
   2986 // MSP430:#define __UINT16_C_SUFFIX__ U
   2987 // MSP430:#define __UINT16_MAX__ 65535U
   2988 // MSP430:#define __UINT16_TYPE__ unsigned short
   2989 // MSP430:#define __UINT32_C_SUFFIX__ UL
   2990 // MSP430:#define __UINT32_MAX__ 4294967295UL
   2991 // MSP430:#define __UINT32_TYPE__ long unsigned int
   2992 // MSP430:#define __UINT64_C_SUFFIX__ ULL
   2993 // MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
   2994 // MSP430:#define __UINT64_TYPE__ long long unsigned int
   2995 // MSP430:#define __UINT8_C_SUFFIX__ U
   2996 // MSP430:#define __UINT8_MAX__ 255U
   2997 // MSP430:#define __UINT8_TYPE__ unsigned char
   2998 // MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
   2999 // MSP430:#define __UINTMAX_TYPE__ long long unsigned int
   3000 // MSP430:#define __UINTMAX_WIDTH__ 64
   3001 // MSP430:#define __UINTPTR_MAX__ 65535U
   3002 // MSP430:#define __UINTPTR_TYPE__ unsigned short
   3003 // MSP430:#define __UINTPTR_WIDTH__ 16
   3004 // MSP430:#define __UINT_FAST16_MAX__ 65535U
   3005 // MSP430:#define __UINT_FAST16_TYPE__ unsigned short
   3006 // MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
   3007 // MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
   3008 // MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   3009 // MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
   3010 // MSP430:#define __UINT_FAST8_MAX__ 255U
   3011 // MSP430:#define __UINT_FAST8_TYPE__ unsigned char
   3012 // MSP430:#define __UINT_LEAST16_MAX__ 65535U
   3013 // MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
   3014 // MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
   3015 // MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
   3016 // MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   3017 // MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
   3018 // MSP430:#define __UINT_LEAST8_MAX__ 255U
   3019 // MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
   3020 // MSP430:#define __USER_LABEL_PREFIX__ _
   3021 // MSP430:#define __WCHAR_MAX__ 32767
   3022 // MSP430:#define __WCHAR_TYPE__ int
   3023 // MSP430:#define __WCHAR_WIDTH__ 16
   3024 // MSP430:#define __WINT_TYPE__ int
   3025 // MSP430:#define __WINT_WIDTH__ 16
   3026 // MSP430:#define __clang__ 1
   3027 //
   3028 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -check-prefix NVPTX32 %s
   3029 //
   3030 // NVPTX32-NOT:#define _LP64
   3031 // NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   3032 // NVPTX32:#define __CHAR16_TYPE__ unsigned short
   3033 // NVPTX32:#define __CHAR32_TYPE__ unsigned int
   3034 // NVPTX32:#define __CHAR_BIT__ 8
   3035 // NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
   3036 // NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   3037 // NVPTX32:#define __DBL_DIG__ 15
   3038 // NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
   3039 // NVPTX32:#define __DBL_HAS_DENORM__ 1
   3040 // NVPTX32:#define __DBL_HAS_INFINITY__ 1
   3041 // NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
   3042 // NVPTX32:#define __DBL_MANT_DIG__ 53
   3043 // NVPTX32:#define __DBL_MAX_10_EXP__ 308
   3044 // NVPTX32:#define __DBL_MAX_EXP__ 1024
   3045 // NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
   3046 // NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
   3047 // NVPTX32:#define __DBL_MIN_EXP__ (-1021)
   3048 // NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
   3049 // NVPTX32:#define __DECIMAL_DIG__ 17
   3050 // NVPTX32:#define __FINITE_MATH_ONLY__ 0
   3051 // NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   3052 // NVPTX32:#define __FLT_DIG__ 6
   3053 // NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
   3054 // NVPTX32:#define __FLT_EVAL_METHOD__ 0
   3055 // NVPTX32:#define __FLT_HAS_DENORM__ 1
   3056 // NVPTX32:#define __FLT_HAS_INFINITY__ 1
   3057 // NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
   3058 // NVPTX32:#define __FLT_MANT_DIG__ 24
   3059 // NVPTX32:#define __FLT_MAX_10_EXP__ 38
   3060 // NVPTX32:#define __FLT_MAX_EXP__ 128
   3061 // NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
   3062 // NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
   3063 // NVPTX32:#define __FLT_MIN_EXP__ (-125)
   3064 // NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
   3065 // NVPTX32:#define __FLT_RADIX__ 2
   3066 // NVPTX32:#define __INT16_MAX__ 32767
   3067 // NVPTX32:#define __INT16_TYPE__ short
   3068 // NVPTX32:#define __INT32_MAX__ 2147483647
   3069 // NVPTX32:#define __INT32_TYPE__ int
   3070 // NVPTX32:#define __INT64_C_SUFFIX__ LL
   3071 // NVPTX32:#define __INT64_MAX__ 9223372036854775807L
   3072 // NVPTX32:#define __INT64_TYPE__ long long int
   3073 // NVPTX32:#define __INT8_MAX__ 127
   3074 // NVPTX32:#define __INT8_TYPE__ char
   3075 // NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
   3076 // NVPTX32:#define __INTMAX_TYPE__ long long int
   3077 // NVPTX32:#define __INTMAX_WIDTH__ 64
   3078 // NVPTX32:#define __INTPTR_MAX__ 4294967295U
   3079 // NVPTX32:#define __INTPTR_TYPE__ unsigned int
   3080 // NVPTX32:#define __INTPTR_WIDTH__ 32
   3081 // NVPTX32:#define __INT_FAST16_MAX__ 32767
   3082 // NVPTX32:#define __INT_FAST16_TYPE__ short
   3083 // NVPTX32:#define __INT_FAST32_MAX__ 2147483647
   3084 // NVPTX32:#define __INT_FAST32_TYPE__ int
   3085 // NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807L
   3086 // NVPTX32:#define __INT_FAST64_TYPE__ long int
   3087 // NVPTX32:#define __INT_FAST8_MAX__ 127
   3088 // NVPTX32:#define __INT_FAST8_TYPE__ char
   3089 // NVPTX32:#define __INT_LEAST16_MAX__ 32767
   3090 // NVPTX32:#define __INT_LEAST16_TYPE__ short
   3091 // NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
   3092 // NVPTX32:#define __INT_LEAST32_TYPE__ int
   3093 // NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807L
   3094 // NVPTX32:#define __INT_LEAST64_TYPE__ long int
   3095 // NVPTX32:#define __INT_LEAST8_MAX__ 127
   3096 // NVPTX32:#define __INT_LEAST8_TYPE__ char
   3097 // NVPTX32:#define __INT_MAX__ 2147483647
   3098 // NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   3099 // NVPTX32:#define __LDBL_DIG__ 15
   3100 // NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   3101 // NVPTX32:#define __LDBL_HAS_DENORM__ 1
   3102 // NVPTX32:#define __LDBL_HAS_INFINITY__ 1
   3103 // NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
   3104 // NVPTX32:#define __LDBL_MANT_DIG__ 53
   3105 // NVPTX32:#define __LDBL_MAX_10_EXP__ 308
   3106 // NVPTX32:#define __LDBL_MAX_EXP__ 1024
   3107 // NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
   3108 // NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
   3109 // NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
   3110 // NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
   3111 // NVPTX32:#define __LITTLE_ENDIAN__ 1
   3112 // NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
   3113 // NVPTX32:#define __LONG_MAX__ 9223372036854775807L
   3114 // NVPTX32-NOT:#define __LP64__
   3115 // NVPTX32:#define __NVPTX__ 1
   3116 // NVPTX32:#define __POINTER_WIDTH__ 32
   3117 // NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
   3118 // NVPTX32:#define __PTRDIFF_TYPE__ unsigned int
   3119 // NVPTX32:#define __PTRDIFF_WIDTH__ 32
   3120 // NVPTX32:#define __PTX__ 1
   3121 // NVPTX32:#define __SCHAR_MAX__ 127
   3122 // NVPTX32:#define __SHRT_MAX__ 32767
   3123 // NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
   3124 // NVPTX32:#define __SIZEOF_DOUBLE__ 8
   3125 // NVPTX32:#define __SIZEOF_FLOAT__ 4
   3126 // NVPTX32:#define __SIZEOF_INT__ 4
   3127 // NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
   3128 // NVPTX32:#define __SIZEOF_LONG_LONG__ 8
   3129 // NVPTX32:#define __SIZEOF_LONG__ 8
   3130 // NVPTX32:#define __SIZEOF_POINTER__ 4
   3131 // NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
   3132 // NVPTX32:#define __SIZEOF_SHORT__ 2
   3133 // NVPTX32:#define __SIZEOF_SIZE_T__ 4
   3134 // NVPTX32:#define __SIZEOF_WCHAR_T__ 4
   3135 // NVPTX32:#define __SIZEOF_WINT_T__ 4
   3136 // NVPTX32:#define __SIZE_MAX__ 4294967295U
   3137 // NVPTX32:#define __SIZE_TYPE__ unsigned int
   3138 // NVPTX32:#define __SIZE_WIDTH__ 32
   3139 // NVPTX32:#define __UINT16_C_SUFFIX__ U
   3140 // NVPTX32:#define __UINT16_MAX__ 65535U
   3141 // NVPTX32:#define __UINT16_TYPE__ unsigned short
   3142 // NVPTX32:#define __UINT32_C_SUFFIX__ U
   3143 // NVPTX32:#define __UINT32_MAX__ 4294967295U
   3144 // NVPTX32:#define __UINT32_TYPE__ unsigned int
   3145 // NVPTX32:#define __UINT64_C_SUFFIX__ UL
   3146 // NVPTX32:#define __UINT64_MAX__ 18446744073709551615UL
   3147 // NVPTX32:#define __UINT64_TYPE__ long unsigned int
   3148 // NVPTX32:#define __UINT8_C_SUFFIX__ U
   3149 // NVPTX32:#define __UINT8_MAX__ 255U
   3150 // NVPTX32:#define __UINT8_TYPE__ unsigned char
   3151 // NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
   3152 // NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
   3153 // NVPTX32:#define __UINTMAX_WIDTH__ 64
   3154 // NVPTX32:#define __UINTPTR_MAX__ 4294967295U
   3155 // NVPTX32:#define __UINTPTR_TYPE__ unsigned int
   3156 // NVPTX32:#define __UINTPTR_WIDTH__ 32
   3157 // NVPTX32:#define __UINT_FAST16_MAX__ 65535U
   3158 // NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
   3159 // NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
   3160 // NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
   3161 // NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   3162 // NVPTX32:#define __UINT_FAST64_TYPE__ long unsigned int
   3163 // NVPTX32:#define __UINT_FAST8_MAX__ 255U
   3164 // NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
   3165 // NVPTX32:#define __UINT_LEAST16_MAX__ 65535U
   3166 // NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
   3167 // NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
   3168 // NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
   3169 // NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   3170 // NVPTX32:#define __UINT_LEAST64_TYPE__ long unsigned int
   3171 // NVPTX32:#define __UINT_LEAST8_MAX__ 255U
   3172 // NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
   3173 // NVPTX32:#define __USER_LABEL_PREFIX__ _
   3174 // NVPTX32:#define __WCHAR_MAX__ 2147483647
   3175 // NVPTX32:#define __WCHAR_TYPE__ int
   3176 // NVPTX32:#define __WCHAR_WIDTH__ 32
   3177 // NVPTX32:#define __WINT_TYPE__ int
   3178 // NVPTX32:#define __WINT_WIDTH__ 32
   3179 //
   3180 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -check-prefix NVPTX64 %s
   3181 //
   3182 // NVPTX64:#define _LP64 1
   3183 // NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   3184 // NVPTX64:#define __CHAR16_TYPE__ unsigned short
   3185 // NVPTX64:#define __CHAR32_TYPE__ unsigned int
   3186 // NVPTX64:#define __CHAR_BIT__ 8
   3187 // NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
   3188 // NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   3189 // NVPTX64:#define __DBL_DIG__ 15
   3190 // NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
   3191 // NVPTX64:#define __DBL_HAS_DENORM__ 1
   3192 // NVPTX64:#define __DBL_HAS_INFINITY__ 1
   3193 // NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
   3194 // NVPTX64:#define __DBL_MANT_DIG__ 53
   3195 // NVPTX64:#define __DBL_MAX_10_EXP__ 308
   3196 // NVPTX64:#define __DBL_MAX_EXP__ 1024
   3197 // NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
   3198 // NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
   3199 // NVPTX64:#define __DBL_MIN_EXP__ (-1021)
   3200 // NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
   3201 // NVPTX64:#define __DECIMAL_DIG__ 17
   3202 // NVPTX64:#define __FINITE_MATH_ONLY__ 0
   3203 // NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   3204 // NVPTX64:#define __FLT_DIG__ 6
   3205 // NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
   3206 // NVPTX64:#define __FLT_EVAL_METHOD__ 0
   3207 // NVPTX64:#define __FLT_HAS_DENORM__ 1
   3208 // NVPTX64:#define __FLT_HAS_INFINITY__ 1
   3209 // NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
   3210 // NVPTX64:#define __FLT_MANT_DIG__ 24
   3211 // NVPTX64:#define __FLT_MAX_10_EXP__ 38
   3212 // NVPTX64:#define __FLT_MAX_EXP__ 128
   3213 // NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
   3214 // NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
   3215 // NVPTX64:#define __FLT_MIN_EXP__ (-125)
   3216 // NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
   3217 // NVPTX64:#define __FLT_RADIX__ 2
   3218 // NVPTX64:#define __INT16_MAX__ 32767
   3219 // NVPTX64:#define __INT16_TYPE__ short
   3220 // NVPTX64:#define __INT32_MAX__ 2147483647
   3221 // NVPTX64:#define __INT32_TYPE__ int
   3222 // NVPTX64:#define __INT64_C_SUFFIX__ LL
   3223 // NVPTX64:#define __INT64_MAX__ 9223372036854775807L
   3224 // NVPTX64:#define __INT64_TYPE__ long long int
   3225 // NVPTX64:#define __INT8_MAX__ 127
   3226 // NVPTX64:#define __INT8_TYPE__ char
   3227 // NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
   3228 // NVPTX64:#define __INTMAX_TYPE__ long long int
   3229 // NVPTX64:#define __INTMAX_WIDTH__ 64
   3230 // NVPTX64:#define __INTPTR_MAX__ 18446744073709551615ULL
   3231 // NVPTX64:#define __INTPTR_TYPE__ long long unsigned int
   3232 // NVPTX64:#define __INTPTR_WIDTH__ 64
   3233 // NVPTX64:#define __INT_FAST16_MAX__ 32767
   3234 // NVPTX64:#define __INT_FAST16_TYPE__ short
   3235 // NVPTX64:#define __INT_FAST32_MAX__ 2147483647
   3236 // NVPTX64:#define __INT_FAST32_TYPE__ int
   3237 // NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
   3238 // NVPTX64:#define __INT_FAST64_TYPE__ long int
   3239 // NVPTX64:#define __INT_FAST8_MAX__ 127
   3240 // NVPTX64:#define __INT_FAST8_TYPE__ char
   3241 // NVPTX64:#define __INT_LEAST16_MAX__ 32767
   3242 // NVPTX64:#define __INT_LEAST16_TYPE__ short
   3243 // NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
   3244 // NVPTX64:#define __INT_LEAST32_TYPE__ int
   3245 // NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
   3246 // NVPTX64:#define __INT_LEAST64_TYPE__ long int
   3247 // NVPTX64:#define __INT_LEAST8_MAX__ 127
   3248 // NVPTX64:#define __INT_LEAST8_TYPE__ char
   3249 // NVPTX64:#define __INT_MAX__ 2147483647
   3250 // NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   3251 // NVPTX64:#define __LDBL_DIG__ 15
   3252 // NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   3253 // NVPTX64:#define __LDBL_HAS_DENORM__ 1
   3254 // NVPTX64:#define __LDBL_HAS_INFINITY__ 1
   3255 // NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
   3256 // NVPTX64:#define __LDBL_MANT_DIG__ 53
   3257 // NVPTX64:#define __LDBL_MAX_10_EXP__ 308
   3258 // NVPTX64:#define __LDBL_MAX_EXP__ 1024
   3259 // NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
   3260 // NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
   3261 // NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
   3262 // NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
   3263 // NVPTX64:#define __LITTLE_ENDIAN__ 1
   3264 // NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
   3265 // NVPTX64:#define __LONG_MAX__ 9223372036854775807L
   3266 // NVPTX64:#define __LP64__ 1
   3267 // NVPTX64:#define __NVPTX__ 1
   3268 // NVPTX64:#define __POINTER_WIDTH__ 64
   3269 // NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
   3270 // NVPTX64:#define __PTRDIFF_TYPE__ long long unsigned int
   3271 // NVPTX64:#define __PTRDIFF_WIDTH__ 64
   3272 // NVPTX64:#define __PTX__ 1
   3273 // NVPTX64:#define __SCHAR_MAX__ 127
   3274 // NVPTX64:#define __SHRT_MAX__ 32767
   3275 // NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
   3276 // NVPTX64:#define __SIZEOF_DOUBLE__ 8
   3277 // NVPTX64:#define __SIZEOF_FLOAT__ 4
   3278 // NVPTX64:#define __SIZEOF_INT__ 4
   3279 // NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
   3280 // NVPTX64:#define __SIZEOF_LONG_LONG__ 8
   3281 // NVPTX64:#define __SIZEOF_LONG__ 8
   3282 // NVPTX64:#define __SIZEOF_POINTER__ 8
   3283 // NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
   3284 // NVPTX64:#define __SIZEOF_SHORT__ 2
   3285 // NVPTX64:#define __SIZEOF_SIZE_T__ 8
   3286 // NVPTX64:#define __SIZEOF_WCHAR_T__ 4
   3287 // NVPTX64:#define __SIZEOF_WINT_T__ 4
   3288 // NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
   3289 // NVPTX64:#define __SIZE_TYPE__ long long unsigned int
   3290 // NVPTX64:#define __SIZE_WIDTH__ 64
   3291 // NVPTX64:#define __UINT16_C_SUFFIX__ U
   3292 // NVPTX64:#define __UINT16_MAX__ 65535U
   3293 // NVPTX64:#define __UINT16_TYPE__ unsigned short
   3294 // NVPTX64:#define __UINT32_C_SUFFIX__ U
   3295 // NVPTX64:#define __UINT32_MAX__ 4294967295U
   3296 // NVPTX64:#define __UINT32_TYPE__ unsigned int
   3297 // NVPTX64:#define __UINT64_C_SUFFIX__ UL
   3298 // NVPTX64:#define __UINT64_MAX__ 18446744073709551615UL
   3299 // NVPTX64:#define __UINT64_TYPE__ long unsigned int
   3300 // NVPTX64:#define __UINT8_C_SUFFIX__ U
   3301 // NVPTX64:#define __UINT8_MAX__ 255U
   3302 // NVPTX64:#define __UINT8_TYPE__ unsigned char
   3303 // NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
   3304 // NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
   3305 // NVPTX64:#define __UINTMAX_WIDTH__ 64
   3306 // NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
   3307 // NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
   3308 // NVPTX64:#define __UINTPTR_WIDTH__ 64
   3309 // NVPTX64:#define __UINT_FAST16_MAX__ 65535U
   3310 // NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
   3311 // NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
   3312 // NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
   3313 // NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   3314 // NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
   3315 // NVPTX64:#define __UINT_FAST8_MAX__ 255U
   3316 // NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
   3317 // NVPTX64:#define __UINT_LEAST16_MAX__ 65535U
   3318 // NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
   3319 // NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
   3320 // NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
   3321 // NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   3322 // NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
   3323 // NVPTX64:#define __UINT_LEAST8_MAX__ 255U
   3324 // NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
   3325 // NVPTX64:#define __USER_LABEL_PREFIX__ _
   3326 // NVPTX64:#define __WCHAR_MAX__ 2147483647
   3327 // NVPTX64:#define __WCHAR_TYPE__ int
   3328 // NVPTX64:#define __WCHAR_WIDTH__ 32
   3329 // NVPTX64:#define __WINT_TYPE__ int
   3330 // NVPTX64:#define __WINT_WIDTH__ 32
   3331 //
   3332 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -check-prefix PPC603E %s
   3333 //
   3334 // PPC603E:#define _ARCH_603 1
   3335 // PPC603E:#define _ARCH_603E 1
   3336 // PPC603E:#define _ARCH_PPC 1
   3337 // PPC603E:#define _ARCH_PPCGR 1
   3338 // PPC603E:#define _BIG_ENDIAN 1
   3339 // PPC603E-NOT:#define _LP64
   3340 // PPC603E:#define __BIG_ENDIAN__ 1
   3341 // PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   3342 // PPC603E:#define __CHAR16_TYPE__ unsigned short
   3343 // PPC603E:#define __CHAR32_TYPE__ unsigned int
   3344 // PPC603E:#define __CHAR_BIT__ 8
   3345 // PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   3346 // PPC603E:#define __DBL_DIG__ 15
   3347 // PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
   3348 // PPC603E:#define __DBL_HAS_DENORM__ 1
   3349 // PPC603E:#define __DBL_HAS_INFINITY__ 1
   3350 // PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
   3351 // PPC603E:#define __DBL_MANT_DIG__ 53
   3352 // PPC603E:#define __DBL_MAX_10_EXP__ 308
   3353 // PPC603E:#define __DBL_MAX_EXP__ 1024
   3354 // PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
   3355 // PPC603E:#define __DBL_MIN_10_EXP__ (-307)
   3356 // PPC603E:#define __DBL_MIN_EXP__ (-1021)
   3357 // PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
   3358 // PPC603E:#define __DECIMAL_DIG__ 33
   3359 // PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   3360 // PPC603E:#define __FLT_DIG__ 6
   3361 // PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
   3362 // PPC603E:#define __FLT_EVAL_METHOD__ 0
   3363 // PPC603E:#define __FLT_HAS_DENORM__ 1
   3364 // PPC603E:#define __FLT_HAS_INFINITY__ 1
   3365 // PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
   3366 // PPC603E:#define __FLT_MANT_DIG__ 24
   3367 // PPC603E:#define __FLT_MAX_10_EXP__ 38
   3368 // PPC603E:#define __FLT_MAX_EXP__ 128
   3369 // PPC603E:#define __FLT_MAX__ 3.40282347e+38F
   3370 // PPC603E:#define __FLT_MIN_10_EXP__ (-37)
   3371 // PPC603E:#define __FLT_MIN_EXP__ (-125)
   3372 // PPC603E:#define __FLT_MIN__ 1.17549435e-38F
   3373 // PPC603E:#define __FLT_RADIX__ 2
   3374 // PPC603E:#define __INT16_MAX__ 32767
   3375 // PPC603E:#define __INT16_TYPE__ short
   3376 // PPC603E:#define __INT32_MAX__ 2147483647
   3377 // PPC603E:#define __INT32_TYPE__ int
   3378 // PPC603E:#define __INT64_C_SUFFIX__ LL
   3379 // PPC603E:#define __INT64_MAX__ 9223372036854775807LL
   3380 // PPC603E:#define __INT64_TYPE__ long long int
   3381 // PPC603E:#define __INT8_MAX__ 127
   3382 // PPC603E:#define __INT8_TYPE__ char
   3383 // PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
   3384 // PPC603E:#define __INTMAX_TYPE__ long long int
   3385 // PPC603E:#define __INTMAX_WIDTH__ 64
   3386 // PPC603E:#define __INTPTR_MAX__ 2147483647L
   3387 // PPC603E:#define __INTPTR_TYPE__ long int
   3388 // PPC603E:#define __INTPTR_WIDTH__ 32
   3389 // PPC603E:#define __INT_FAST16_MAX__ 32767
   3390 // PPC603E:#define __INT_FAST16_TYPE__ short
   3391 // PPC603E:#define __INT_FAST32_MAX__ 2147483647
   3392 // PPC603E:#define __INT_FAST32_TYPE__ int
   3393 // PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
   3394 // PPC603E:#define __INT_FAST64_TYPE__ long long int
   3395 // PPC603E:#define __INT_FAST8_MAX__ 127
   3396 // PPC603E:#define __INT_FAST8_TYPE__ char
   3397 // PPC603E:#define __INT_LEAST16_MAX__ 32767
   3398 // PPC603E:#define __INT_LEAST16_TYPE__ short
   3399 // PPC603E:#define __INT_LEAST32_MAX__ 2147483647
   3400 // PPC603E:#define __INT_LEAST32_TYPE__ int
   3401 // PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   3402 // PPC603E:#define __INT_LEAST64_TYPE__ long long int
   3403 // PPC603E:#define __INT_LEAST8_MAX__ 127
   3404 // PPC603E:#define __INT_LEAST8_TYPE__ char
   3405 // PPC603E:#define __INT_MAX__ 2147483647
   3406 // PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
   3407 // PPC603E:#define __LDBL_DIG__ 31
   3408 // PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
   3409 // PPC603E:#define __LDBL_HAS_DENORM__ 1
   3410 // PPC603E:#define __LDBL_HAS_INFINITY__ 1
   3411 // PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
   3412 // PPC603E:#define __LDBL_MANT_DIG__ 106
   3413 // PPC603E:#define __LDBL_MAX_10_EXP__ 308
   3414 // PPC603E:#define __LDBL_MAX_EXP__ 1024
   3415 // PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
   3416 // PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
   3417 // PPC603E:#define __LDBL_MIN_EXP__ (-968)
   3418 // PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
   3419 // PPC603E:#define __LONG_DOUBLE_128__ 1
   3420 // PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
   3421 // PPC603E:#define __LONG_MAX__ 2147483647L
   3422 // PPC603E-NOT:#define __LP64__
   3423 // PPC603E:#define __NATURAL_ALIGNMENT__ 1
   3424 // PPC603E:#define __POINTER_WIDTH__ 32
   3425 // PPC603E:#define __POWERPC__ 1
   3426 // PPC603E:#define __PPC__ 1
   3427 // PPC603E:#define __PTRDIFF_TYPE__ long int
   3428 // PPC603E:#define __PTRDIFF_WIDTH__ 32
   3429 // PPC603E:#define __REGISTER_PREFIX__
   3430 // PPC603E:#define __SCHAR_MAX__ 127
   3431 // PPC603E:#define __SHRT_MAX__ 32767
   3432 // PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
   3433 // PPC603E:#define __SIZEOF_DOUBLE__ 8
   3434 // PPC603E:#define __SIZEOF_FLOAT__ 4
   3435 // PPC603E:#define __SIZEOF_INT__ 4
   3436 // PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
   3437 // PPC603E:#define __SIZEOF_LONG_LONG__ 8
   3438 // PPC603E:#define __SIZEOF_LONG__ 4
   3439 // PPC603E:#define __SIZEOF_POINTER__ 4
   3440 // PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
   3441 // PPC603E:#define __SIZEOF_SHORT__ 2
   3442 // PPC603E:#define __SIZEOF_SIZE_T__ 4
   3443 // PPC603E:#define __SIZEOF_WCHAR_T__ 4
   3444 // PPC603E:#define __SIZEOF_WINT_T__ 4
   3445 // PPC603E:#define __SIZE_MAX__ 4294967295U
   3446 // PPC603E:#define __SIZE_TYPE__ long unsigned int
   3447 // PPC603E:#define __SIZE_WIDTH__ 32
   3448 // PPC603E:#define __UINT16_C_SUFFIX__ U
   3449 // PPC603E:#define __UINT16_MAX__ 65535U
   3450 // PPC603E:#define __UINT16_TYPE__ unsigned short
   3451 // PPC603E:#define __UINT32_C_SUFFIX__ U
   3452 // PPC603E:#define __UINT32_MAX__ 4294967295U
   3453 // PPC603E:#define __UINT32_TYPE__ unsigned int
   3454 // PPC603E:#define __UINT64_C_SUFFIX__ ULL
   3455 // PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
   3456 // PPC603E:#define __UINT64_TYPE__ long long unsigned int
   3457 // PPC603E:#define __UINT8_C_SUFFIX__ U
   3458 // PPC603E:#define __UINT8_MAX__ 255U
   3459 // PPC603E:#define __UINT8_TYPE__ unsigned char
   3460 // PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
   3461 // PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
   3462 // PPC603E:#define __UINTMAX_WIDTH__ 64
   3463 // PPC603E:#define __UINTPTR_MAX__ 4294967295U
   3464 // PPC603E:#define __UINTPTR_TYPE__ unsigned int
   3465 // PPC603E:#define __UINTPTR_WIDTH__ 32
   3466 // PPC603E:#define __UINT_FAST16_MAX__ 65535U
   3467 // PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
   3468 // PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
   3469 // PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
   3470 // PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   3471 // PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
   3472 // PPC603E:#define __UINT_FAST8_MAX__ 255U
   3473 // PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
   3474 // PPC603E:#define __UINT_LEAST16_MAX__ 65535U
   3475 // PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
   3476 // PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
   3477 // PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
   3478 // PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   3479 // PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
   3480 // PPC603E:#define __UINT_LEAST8_MAX__ 255U
   3481 // PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
   3482 // PPC603E:#define __USER_LABEL_PREFIX__ _
   3483 // PPC603E:#define __WCHAR_MAX__ 2147483647
   3484 // PPC603E:#define __WCHAR_TYPE__ int
   3485 // PPC603E:#define __WCHAR_WIDTH__ 32
   3486 // PPC603E:#define __WINT_TYPE__ int
   3487 // PPC603E:#define __WINT_WIDTH__ 32
   3488 // PPC603E:#define __powerpc__ 1
   3489 // PPC603E:#define __ppc__ 1
   3490 //
   3491 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64 %s
   3492 //
   3493 // PPC64:#define _ARCH_PPC 1
   3494 // PPC64:#define _ARCH_PPC64 1
   3495 // PPC64:#define _ARCH_PPCGR 1
   3496 // PPC64:#define _ARCH_PPCSQ 1
   3497 // PPC64:#define _ARCH_PWR4 1
   3498 // PPC64:#define _ARCH_PWR5 1
   3499 // PPC64:#define _ARCH_PWR6 1
   3500 // PPC64:#define _ARCH_PWR7 1
   3501 // PPC64:#define _BIG_ENDIAN 1
   3502 // PPC64:#define _LP64 1
   3503 // PPC64:#define __BIG_ENDIAN__ 1
   3504 // PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   3505 // PPC64:#define __CHAR16_TYPE__ unsigned short
   3506 // PPC64:#define __CHAR32_TYPE__ unsigned int
   3507 // PPC64:#define __CHAR_BIT__ 8
   3508 // PPC64:#define __CHAR_UNSIGNED__ 1
   3509 // PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   3510 // PPC64:#define __DBL_DIG__ 15
   3511 // PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
   3512 // PPC64:#define __DBL_HAS_DENORM__ 1
   3513 // PPC64:#define __DBL_HAS_INFINITY__ 1
   3514 // PPC64:#define __DBL_HAS_QUIET_NAN__ 1
   3515 // PPC64:#define __DBL_MANT_DIG__ 53
   3516 // PPC64:#define __DBL_MAX_10_EXP__ 308
   3517 // PPC64:#define __DBL_MAX_EXP__ 1024
   3518 // PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
   3519 // PPC64:#define __DBL_MIN_10_EXP__ (-307)
   3520 // PPC64:#define __DBL_MIN_EXP__ (-1021)
   3521 // PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
   3522 // PPC64:#define __DECIMAL_DIG__ 33
   3523 // PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   3524 // PPC64:#define __FLT_DIG__ 6
   3525 // PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
   3526 // PPC64:#define __FLT_EVAL_METHOD__ 0
   3527 // PPC64:#define __FLT_HAS_DENORM__ 1
   3528 // PPC64:#define __FLT_HAS_INFINITY__ 1
   3529 // PPC64:#define __FLT_HAS_QUIET_NAN__ 1
   3530 // PPC64:#define __FLT_MANT_DIG__ 24
   3531 // PPC64:#define __FLT_MAX_10_EXP__ 38
   3532 // PPC64:#define __FLT_MAX_EXP__ 128
   3533 // PPC64:#define __FLT_MAX__ 3.40282347e+38F
   3534 // PPC64:#define __FLT_MIN_10_EXP__ (-37)
   3535 // PPC64:#define __FLT_MIN_EXP__ (-125)
   3536 // PPC64:#define __FLT_MIN__ 1.17549435e-38F
   3537 // PPC64:#define __FLT_RADIX__ 2
   3538 // PPC64:#define __INT16_MAX__ 32767
   3539 // PPC64:#define __INT16_TYPE__ short
   3540 // PPC64:#define __INT32_MAX__ 2147483647
   3541 // PPC64:#define __INT32_TYPE__ int
   3542 // PPC64:#define __INT64_C_SUFFIX__ L
   3543 // PPC64:#define __INT64_MAX__ 9223372036854775807L
   3544 // PPC64:#define __INT64_TYPE__ long int
   3545 // PPC64:#define __INT8_MAX__ 127
   3546 // PPC64:#define __INT8_TYPE__ char
   3547 // PPC64:#define __INTMAX_MAX__ 9223372036854775807L
   3548 // PPC64:#define __INTMAX_TYPE__ long int
   3549 // PPC64:#define __INTMAX_WIDTH__ 64
   3550 // PPC64:#define __INTPTR_MAX__ 9223372036854775807L
   3551 // PPC64:#define __INTPTR_TYPE__ long int
   3552 // PPC64:#define __INTPTR_WIDTH__ 64
   3553 // PPC64:#define __INT_FAST16_MAX__ 32767
   3554 // PPC64:#define __INT_FAST16_TYPE__ short
   3555 // PPC64:#define __INT_FAST32_MAX__ 2147483647
   3556 // PPC64:#define __INT_FAST32_TYPE__ int
   3557 // PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
   3558 // PPC64:#define __INT_FAST64_TYPE__ long int
   3559 // PPC64:#define __INT_FAST8_MAX__ 127
   3560 // PPC64:#define __INT_FAST8_TYPE__ char
   3561 // PPC64:#define __INT_LEAST16_MAX__ 32767
   3562 // PPC64:#define __INT_LEAST16_TYPE__ short
   3563 // PPC64:#define __INT_LEAST32_MAX__ 2147483647
   3564 // PPC64:#define __INT_LEAST32_TYPE__ int
   3565 // PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
   3566 // PPC64:#define __INT_LEAST64_TYPE__ long int
   3567 // PPC64:#define __INT_LEAST8_MAX__ 127
   3568 // PPC64:#define __INT_LEAST8_TYPE__ char
   3569 // PPC64:#define __INT_MAX__ 2147483647
   3570 // PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
   3571 // PPC64:#define __LDBL_DIG__ 31
   3572 // PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
   3573 // PPC64:#define __LDBL_HAS_DENORM__ 1
   3574 // PPC64:#define __LDBL_HAS_INFINITY__ 1
   3575 // PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
   3576 // PPC64:#define __LDBL_MANT_DIG__ 106
   3577 // PPC64:#define __LDBL_MAX_10_EXP__ 308
   3578 // PPC64:#define __LDBL_MAX_EXP__ 1024
   3579 // PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
   3580 // PPC64:#define __LDBL_MIN_10_EXP__ (-291)
   3581 // PPC64:#define __LDBL_MIN_EXP__ (-968)
   3582 // PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
   3583 // PPC64:#define __LONG_DOUBLE_128__ 1
   3584 // PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
   3585 // PPC64:#define __LONG_MAX__ 9223372036854775807L
   3586 // PPC64:#define __LP64__ 1
   3587 // PPC64:#define __NATURAL_ALIGNMENT__ 1
   3588 // PPC64:#define __POINTER_WIDTH__ 64
   3589 // PPC64:#define __POWERPC__ 1
   3590 // PPC64:#define __PPC64__ 1
   3591 // PPC64:#define __PPC__ 1
   3592 // PPC64:#define __PTRDIFF_TYPE__ long int
   3593 // PPC64:#define __PTRDIFF_WIDTH__ 64
   3594 // PPC64:#define __REGISTER_PREFIX__
   3595 // PPC64:#define __SCHAR_MAX__ 127
   3596 // PPC64:#define __SHRT_MAX__ 32767
   3597 // PPC64:#define __SIG_ATOMIC_WIDTH__ 32
   3598 // PPC64:#define __SIZEOF_DOUBLE__ 8
   3599 // PPC64:#define __SIZEOF_FLOAT__ 4
   3600 // PPC64:#define __SIZEOF_INT__ 4
   3601 // PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
   3602 // PPC64:#define __SIZEOF_LONG_LONG__ 8
   3603 // PPC64:#define __SIZEOF_LONG__ 8
   3604 // PPC64:#define __SIZEOF_POINTER__ 8
   3605 // PPC64:#define __SIZEOF_PTRDIFF_T__ 8
   3606 // PPC64:#define __SIZEOF_SHORT__ 2
   3607 // PPC64:#define __SIZEOF_SIZE_T__ 8
   3608 // PPC64:#define __SIZEOF_WCHAR_T__ 4
   3609 // PPC64:#define __SIZEOF_WINT_T__ 4
   3610 // PPC64:#define __SIZE_MAX__ 18446744073709551615UL
   3611 // PPC64:#define __SIZE_TYPE__ long unsigned int
   3612 // PPC64:#define __SIZE_WIDTH__ 64
   3613 // PPC64:#define __UINT16_C_SUFFIX__ U
   3614 // PPC64:#define __UINT16_MAX__ 65535U
   3615 // PPC64:#define __UINT16_TYPE__ unsigned short
   3616 // PPC64:#define __UINT32_C_SUFFIX__ U
   3617 // PPC64:#define __UINT32_MAX__ 4294967295U
   3618 // PPC64:#define __UINT32_TYPE__ unsigned int
   3619 // PPC64:#define __UINT64_C_SUFFIX__ UL
   3620 // PPC64:#define __UINT64_MAX__ 18446744073709551615UL
   3621 // PPC64:#define __UINT64_TYPE__ long unsigned int
   3622 // PPC64:#define __UINT8_C_SUFFIX__ U
   3623 // PPC64:#define __UINT8_MAX__ 255U
   3624 // PPC64:#define __UINT8_TYPE__ unsigned char
   3625 // PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
   3626 // PPC64:#define __UINTMAX_TYPE__ long unsigned int
   3627 // PPC64:#define __UINTMAX_WIDTH__ 64
   3628 // PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
   3629 // PPC64:#define __UINTPTR_TYPE__ long unsigned int
   3630 // PPC64:#define __UINTPTR_WIDTH__ 64
   3631 // PPC64:#define __UINT_FAST16_MAX__ 65535U
   3632 // PPC64:#define __UINT_FAST16_TYPE__ unsigned short
   3633 // PPC64:#define __UINT_FAST32_MAX__ 4294967295U
   3634 // PPC64:#define __UINT_FAST32_TYPE__ unsigned int
   3635 // PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   3636 // PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
   3637 // PPC64:#define __UINT_FAST8_MAX__ 255U
   3638 // PPC64:#define __UINT_FAST8_TYPE__ unsigned char
   3639 // PPC64:#define __UINT_LEAST16_MAX__ 65535U
   3640 // PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
   3641 // PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
   3642 // PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
   3643 // PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   3644 // PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
   3645 // PPC64:#define __UINT_LEAST8_MAX__ 255U
   3646 // PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
   3647 // PPC64:#define __USER_LABEL_PREFIX__ _
   3648 // PPC64:#define __WCHAR_MAX__ 2147483647
   3649 // PPC64:#define __WCHAR_TYPE__ int
   3650 // PPC64:#define __WCHAR_WIDTH__ 32
   3651 // PPC64:#define __WINT_TYPE__ int
   3652 // PPC64:#define __WINT_WIDTH__ 32
   3653 // PPC64:#define __ppc64__ 1
   3654 // PPC64:#define __ppc__ 1
   3655 //
   3656 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64LE %s
   3657 //
   3658 // PPC64LE:#define _ARCH_PPC 1
   3659 // PPC64LE:#define _ARCH_PPC64 1
   3660 // PPC64LE:#define _ARCH_PPCGR 1
   3661 // PPC64LE:#define _ARCH_PPCSQ 1
   3662 // PPC64LE:#define _ARCH_PWR4 1
   3663 // PPC64LE:#define _ARCH_PWR5 1
   3664 // PPC64LE:#define _ARCH_PWR5X 1
   3665 // PPC64LE:#define _ARCH_PWR6 1
   3666 // PPC64LE:#define _ARCH_PWR6X 1
   3667 // PPC64LE:#define _ARCH_PWR7 1
   3668 // PPC64LE:#define _CALL_ELF 2
   3669 // PPC64LE:#define _LITTLE_ENDIAN 1
   3670 // PPC64LE:#define _LP64 1
   3671 // PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   3672 // PPC64LE:#define __CHAR16_TYPE__ unsigned short
   3673 // PPC64LE:#define __CHAR32_TYPE__ unsigned int
   3674 // PPC64LE:#define __CHAR_BIT__ 8
   3675 // PPC64LE:#define __CHAR_UNSIGNED__ 1
   3676 // PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   3677 // PPC64LE:#define __DBL_DIG__ 15
   3678 // PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
   3679 // PPC64LE:#define __DBL_HAS_DENORM__ 1
   3680 // PPC64LE:#define __DBL_HAS_INFINITY__ 1
   3681 // PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
   3682 // PPC64LE:#define __DBL_MANT_DIG__ 53
   3683 // PPC64LE:#define __DBL_MAX_10_EXP__ 308
   3684 // PPC64LE:#define __DBL_MAX_EXP__ 1024
   3685 // PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
   3686 // PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
   3687 // PPC64LE:#define __DBL_MIN_EXP__ (-1021)
   3688 // PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
   3689 // PPC64LE:#define __DECIMAL_DIG__ 33
   3690 // PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   3691 // PPC64LE:#define __FLT_DIG__ 6
   3692 // PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
   3693 // PPC64LE:#define __FLT_EVAL_METHOD__ 0
   3694 // PPC64LE:#define __FLT_HAS_DENORM__ 1
   3695 // PPC64LE:#define __FLT_HAS_INFINITY__ 1
   3696 // PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
   3697 // PPC64LE:#define __FLT_MANT_DIG__ 24
   3698 // PPC64LE:#define __FLT_MAX_10_EXP__ 38
   3699 // PPC64LE:#define __FLT_MAX_EXP__ 128
   3700 // PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
   3701 // PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
   3702 // PPC64LE:#define __FLT_MIN_EXP__ (-125)
   3703 // PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
   3704 // PPC64LE:#define __FLT_RADIX__ 2
   3705 // PPC64LE:#define __INT16_MAX__ 32767
   3706 // PPC64LE:#define __INT16_TYPE__ short
   3707 // PPC64LE:#define __INT32_MAX__ 2147483647
   3708 // PPC64LE:#define __INT32_TYPE__ int
   3709 // PPC64LE:#define __INT64_C_SUFFIX__ L
   3710 // PPC64LE:#define __INT64_MAX__ 9223372036854775807L
   3711 // PPC64LE:#define __INT64_TYPE__ long int
   3712 // PPC64LE:#define __INT8_MAX__ 127
   3713 // PPC64LE:#define __INT8_TYPE__ char
   3714 // PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
   3715 // PPC64LE:#define __INTMAX_TYPE__ long int
   3716 // PPC64LE:#define __INTMAX_WIDTH__ 64
   3717 // PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
   3718 // PPC64LE:#define __INTPTR_TYPE__ long int
   3719 // PPC64LE:#define __INTPTR_WIDTH__ 64
   3720 // PPC64LE:#define __INT_FAST16_MAX__ 32767
   3721 // PPC64LE:#define __INT_FAST16_TYPE__ short
   3722 // PPC64LE:#define __INT_FAST32_MAX__ 2147483647
   3723 // PPC64LE:#define __INT_FAST32_TYPE__ int
   3724 // PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
   3725 // PPC64LE:#define __INT_FAST64_TYPE__ long int
   3726 // PPC64LE:#define __INT_FAST8_MAX__ 127
   3727 // PPC64LE:#define __INT_FAST8_TYPE__ char
   3728 // PPC64LE:#define __INT_LEAST16_MAX__ 32767
   3729 // PPC64LE:#define __INT_LEAST16_TYPE__ short
   3730 // PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
   3731 // PPC64LE:#define __INT_LEAST32_TYPE__ int
   3732 // PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
   3733 // PPC64LE:#define __INT_LEAST64_TYPE__ long int
   3734 // PPC64LE:#define __INT_LEAST8_MAX__ 127
   3735 // PPC64LE:#define __INT_LEAST8_TYPE__ char
   3736 // PPC64LE:#define __INT_MAX__ 2147483647
   3737 // PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
   3738 // PPC64LE:#define __LDBL_DIG__ 31
   3739 // PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
   3740 // PPC64LE:#define __LDBL_HAS_DENORM__ 1
   3741 // PPC64LE:#define __LDBL_HAS_INFINITY__ 1
   3742 // PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
   3743 // PPC64LE:#define __LDBL_MANT_DIG__ 106
   3744 // PPC64LE:#define __LDBL_MAX_10_EXP__ 308
   3745 // PPC64LE:#define __LDBL_MAX_EXP__ 1024
   3746 // PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
   3747 // PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
   3748 // PPC64LE:#define __LDBL_MIN_EXP__ (-968)
   3749 // PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
   3750 // PPC64LE:#define __LITTLE_ENDIAN__ 1
   3751 // PPC64LE:#define __LONG_DOUBLE_128__ 1
   3752 // PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
   3753 // PPC64LE:#define __LONG_MAX__ 9223372036854775807L
   3754 // PPC64LE:#define __LP64__ 1
   3755 // PPC64LE:#define __NATURAL_ALIGNMENT__ 1
   3756 // PPC64LE:#define __POINTER_WIDTH__ 64
   3757 // PPC64LE:#define __POWERPC__ 1
   3758 // PPC64LE:#define __PPC64__ 1
   3759 // PPC64LE:#define __PPC__ 1
   3760 // PPC64LE:#define __PTRDIFF_TYPE__ long int
   3761 // PPC64LE:#define __PTRDIFF_WIDTH__ 64
   3762 // PPC64LE:#define __REGISTER_PREFIX__
   3763 // PPC64LE:#define __SCHAR_MAX__ 127
   3764 // PPC64LE:#define __SHRT_MAX__ 32767
   3765 // PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
   3766 // PPC64LE:#define __SIZEOF_DOUBLE__ 8
   3767 // PPC64LE:#define __SIZEOF_FLOAT__ 4
   3768 // PPC64LE:#define __SIZEOF_INT__ 4
   3769 // PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
   3770 // PPC64LE:#define __SIZEOF_LONG_LONG__ 8
   3771 // PPC64LE:#define __SIZEOF_LONG__ 8
   3772 // PPC64LE:#define __SIZEOF_POINTER__ 8
   3773 // PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
   3774 // PPC64LE:#define __SIZEOF_SHORT__ 2
   3775 // PPC64LE:#define __SIZEOF_SIZE_T__ 8
   3776 // PPC64LE:#define __SIZEOF_WCHAR_T__ 4
   3777 // PPC64LE:#define __SIZEOF_WINT_T__ 4
   3778 // PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
   3779 // PPC64LE:#define __SIZE_TYPE__ long unsigned int
   3780 // PPC64LE:#define __SIZE_WIDTH__ 64
   3781 // PPC64LE:#define __UINT16_C_SUFFIX__ U
   3782 // PPC64LE:#define __UINT16_MAX__ 65535U
   3783 // PPC64LE:#define __UINT16_TYPE__ unsigned short
   3784 // PPC64LE:#define __UINT32_C_SUFFIX__ U
   3785 // PPC64LE:#define __UINT32_MAX__ 4294967295U
   3786 // PPC64LE:#define __UINT32_TYPE__ unsigned int
   3787 // PPC64LE:#define __UINT64_C_SUFFIX__ UL
   3788 // PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
   3789 // PPC64LE:#define __UINT64_TYPE__ long unsigned int
   3790 // PPC64LE:#define __UINT8_C_SUFFIX__ U
   3791 // PPC64LE:#define __UINT8_MAX__ 255U
   3792 // PPC64LE:#define __UINT8_TYPE__ unsigned char
   3793 // PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
   3794 // PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
   3795 // PPC64LE:#define __UINTMAX_WIDTH__ 64
   3796 // PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
   3797 // PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
   3798 // PPC64LE:#define __UINTPTR_WIDTH__ 64
   3799 // PPC64LE:#define __UINT_FAST16_MAX__ 65535U
   3800 // PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
   3801 // PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
   3802 // PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
   3803 // PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   3804 // PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
   3805 // PPC64LE:#define __UINT_FAST8_MAX__ 255U
   3806 // PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
   3807 // PPC64LE:#define __UINT_LEAST16_MAX__ 65535U
   3808 // PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
   3809 // PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
   3810 // PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
   3811 // PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   3812 // PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
   3813 // PPC64LE:#define __UINT_LEAST8_MAX__ 255U
   3814 // PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
   3815 // PPC64LE:#define __USER_LABEL_PREFIX__ _
   3816 // PPC64LE:#define __WCHAR_MAX__ 2147483647
   3817 // PPC64LE:#define __WCHAR_TYPE__ int
   3818 // PPC64LE:#define __WCHAR_WIDTH__ 32
   3819 // PPC64LE:#define __WINT_TYPE__ int
   3820 // PPC64LE:#define __WINT_WIDTH__ 32
   3821 // PPC64LE:#define __ppc64__ 1
   3822 // PPC64LE:#define __ppc__ 1
   3823 //
   3824 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu a2q -fno-signed-char < /dev/null | FileCheck -check-prefix PPCA2Q %s
   3825 //
   3826 // PPCA2Q:#define _ARCH_A2 1
   3827 // PPCA2Q:#define _ARCH_A2Q 1
   3828 // PPCA2Q:#define _ARCH_PPC 1
   3829 // PPCA2Q:#define _ARCH_PPC64 1
   3830 // PPCA2Q:#define _ARCH_QP 1
   3831 //
   3832 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-bgq-linux -fno-signed-char < /dev/null | FileCheck -check-prefix PPCBGQ %s
   3833 //
   3834 // PPCBGQ:#define __THW_BLUEGENE__ 1
   3835 // PPCBGQ:#define __TOS_BGQ__ 1
   3836 // PPCBGQ:#define __bg__ 1
   3837 // PPCBGQ:#define __bgq__ 1
   3838 //
   3839 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu 630 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC630 %s
   3840 //
   3841 // PPC630:#define _ARCH_630 1
   3842 // PPC630:#define _ARCH_PPC 1
   3843 // PPC630:#define _ARCH_PPC64 1
   3844 // PPC630:#define _ARCH_PPCGR 1
   3845 //
   3846 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr3 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR3 %s
   3847 //
   3848 // PPCPWR3:#define _ARCH_PPC 1
   3849 // PPCPWR3:#define _ARCH_PPC64 1
   3850 // PPCPWR3:#define _ARCH_PPCGR 1
   3851 //
   3852 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power3 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER3 %s
   3853 //
   3854 // PPCPOWER3:#define _ARCH_PPC 1
   3855 // PPCPOWER3:#define _ARCH_PPC64 1
   3856 // PPCPOWER3:#define _ARCH_PPCGR 1
   3857 //
   3858 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr4 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR4 %s
   3859 //
   3860 // PPCPWR4:#define _ARCH_PPC 1
   3861 // PPCPWR4:#define _ARCH_PPC64 1
   3862 // PPCPWR4:#define _ARCH_PPCGR 1
   3863 // PPCPWR4:#define _ARCH_PPCSQ 1
   3864 // PPCPWR4:#define _ARCH_PWR4 1
   3865 //
   3866 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power4 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER4 %s
   3867 //
   3868 // PPCPOWER4:#define _ARCH_PPC 1
   3869 // PPCPOWER4:#define _ARCH_PPC64 1
   3870 // PPCPOWER4:#define _ARCH_PPCGR 1
   3871 // PPCPOWER4:#define _ARCH_PPCSQ 1
   3872 // PPCPOWER4:#define _ARCH_PWR4 1
   3873 //
   3874 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR5 %s
   3875 //
   3876 // PPCPWR5:#define _ARCH_PPC 1
   3877 // PPCPWR5:#define _ARCH_PPC64 1
   3878 // PPCPWR5:#define _ARCH_PPCGR 1
   3879 // PPCPWR5:#define _ARCH_PPCSQ 1
   3880 // PPCPWR5:#define _ARCH_PWR4 1
   3881 // PPCPWR5:#define _ARCH_PWR5 1
   3882 //
   3883 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power5 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER5 %s
   3884 //
   3885 // PPCPOWER5:#define _ARCH_PPC 1
   3886 // PPCPOWER5:#define _ARCH_PPC64 1
   3887 // PPCPOWER5:#define _ARCH_PPCGR 1
   3888 // PPCPOWER5:#define _ARCH_PPCSQ 1
   3889 // PPCPOWER5:#define _ARCH_PWR4 1
   3890 // PPCPOWER5:#define _ARCH_PWR5 1
   3891 //
   3892 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5x -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR5X %s
   3893 //
   3894 // PPCPWR5X:#define _ARCH_PPC 1
   3895 // PPCPWR5X:#define _ARCH_PPC64 1
   3896 // PPCPWR5X:#define _ARCH_PPCGR 1
   3897 // PPCPWR5X:#define _ARCH_PPCSQ 1
   3898 // PPCPWR5X:#define _ARCH_PWR4 1
   3899 // PPCPWR5X:#define _ARCH_PWR5 1
   3900 // PPCPWR5X:#define _ARCH_PWR5X 1
   3901 //
   3902 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power5x -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER5X %s
   3903 //
   3904 // PPCPOWER5X:#define _ARCH_PPC 1
   3905 // PPCPOWER5X:#define _ARCH_PPC64 1
   3906 // PPCPOWER5X:#define _ARCH_PPCGR 1
   3907 // PPCPOWER5X:#define _ARCH_PPCSQ 1
   3908 // PPCPOWER5X:#define _ARCH_PWR4 1
   3909 // PPCPOWER5X:#define _ARCH_PWR5 1
   3910 // PPCPOWER5X:#define _ARCH_PWR5X 1
   3911 //
   3912 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr6 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR6 %s
   3913 //
   3914 // PPCPWR6:#define _ARCH_PPC 1
   3915 // PPCPWR6:#define _ARCH_PPC64 1
   3916 // PPCPWR6:#define _ARCH_PPCGR 1
   3917 // PPCPWR6:#define _ARCH_PPCSQ 1
   3918 // PPCPWR6:#define _ARCH_PWR4 1
   3919 // PPCPWR6:#define _ARCH_PWR5 1
   3920 // PPCPWR6:#define _ARCH_PWR5X 1
   3921 // PPCPWR6:#define _ARCH_PWR6 1
   3922 //
   3923 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power6 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER6 %s
   3924 //
   3925 // PPCPOWER6:#define _ARCH_PPC 1
   3926 // PPCPOWER6:#define _ARCH_PPC64 1
   3927 // PPCPOWER6:#define _ARCH_PPCGR 1
   3928 // PPCPOWER6:#define _ARCH_PPCSQ 1
   3929 // PPCPOWER6:#define _ARCH_PWR4 1
   3930 // PPCPOWER6:#define _ARCH_PWR5 1
   3931 // PPCPOWER6:#define _ARCH_PWR5X 1
   3932 // PPCPOWER6:#define _ARCH_PWR6 1
   3933 //
   3934 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr6x -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR6X %s
   3935 //
   3936 // PPCPWR6X:#define _ARCH_PPC 1
   3937 // PPCPWR6X:#define _ARCH_PPC64 1
   3938 // PPCPWR6X:#define _ARCH_PPCGR 1
   3939 // PPCPWR6X:#define _ARCH_PPCSQ 1
   3940 // PPCPWR6X:#define _ARCH_PWR4 1
   3941 // PPCPWR6X:#define _ARCH_PWR5 1
   3942 // PPCPWR6X:#define _ARCH_PWR5X 1
   3943 // PPCPWR6X:#define _ARCH_PWR6 1
   3944 // PPCPWR6X:#define _ARCH_PWR6X 1
   3945 //
   3946 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power6x -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER6X %s
   3947 //
   3948 // PPCPOWER6X:#define _ARCH_PPC 1
   3949 // PPCPOWER6X:#define _ARCH_PPC64 1
   3950 // PPCPOWER6X:#define _ARCH_PPCGR 1
   3951 // PPCPOWER6X:#define _ARCH_PPCSQ 1
   3952 // PPCPOWER6X:#define _ARCH_PWR4 1
   3953 // PPCPOWER6X:#define _ARCH_PWR5 1
   3954 // PPCPOWER6X:#define _ARCH_PWR5X 1
   3955 // PPCPOWER6X:#define _ARCH_PWR6 1
   3956 // PPCPOWER6X:#define _ARCH_PWR6X 1
   3957 //
   3958 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR7 %s
   3959 //
   3960 // PPCPWR7:#define _ARCH_PPC 1
   3961 // PPCPWR7:#define _ARCH_PPC64 1
   3962 // PPCPWR7:#define _ARCH_PPCGR 1
   3963 // PPCPWR7:#define _ARCH_PPCSQ 1
   3964 // PPCPWR7:#define _ARCH_PWR4 1
   3965 // PPCPWR7:#define _ARCH_PWR5 1
   3966 // PPCPWR7:#define _ARCH_PWR5X 1
   3967 // PPCPWR7:#define _ARCH_PWR6 1
   3968 // PPCPWR7:#define _ARCH_PWR6X 1
   3969 // PPCPWR7:#define _ARCH_PWR7 1
   3970 //
   3971 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER7 %s
   3972 //
   3973 // PPCPOWER7:#define _ARCH_PPC 1
   3974 // PPCPOWER7:#define _ARCH_PPC64 1
   3975 // PPCPOWER7:#define _ARCH_PPCGR 1
   3976 // PPCPOWER7:#define _ARCH_PPCSQ 1
   3977 // PPCPOWER7:#define _ARCH_PWR4 1
   3978 // PPCPOWER7:#define _ARCH_PWR5 1
   3979 // PPCPOWER7:#define _ARCH_PWR5X 1
   3980 // PPCPOWER7:#define _ARCH_PWR6 1
   3981 // PPCPOWER7:#define _ARCH_PWR6X 1
   3982 // PPCPOWER7:#define _ARCH_PWR7 1
   3983 //
   3984 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr8 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR8 %s
   3985 //
   3986 // PPCPWR8:#define _ARCH_PPC 1
   3987 // PPCPWR8:#define _ARCH_PPC64 1
   3988 // PPCPWR8:#define _ARCH_PPCGR 1
   3989 // PPCPWR8:#define _ARCH_PPCSQ 1
   3990 // PPCPWR8:#define _ARCH_PWR4 1
   3991 // PPCPWR8:#define _ARCH_PWR5 1
   3992 // PPCPWR8:#define _ARCH_PWR5X 1
   3993 // PPCPWR8:#define _ARCH_PWR6 1
   3994 // PPCPWR8:#define _ARCH_PWR6X 1
   3995 // PPCPWR8:#define _ARCH_PWR7 1
   3996 // PPCPWR8:#define _ARCH_PWR8 1
   3997 //
   3998 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power8 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER8 %s
   3999 //
   4000 // PPCPOWER8:#define _ARCH_PPC 1
   4001 // PPCPOWER8:#define _ARCH_PPC64 1
   4002 // PPCPOWER8:#define _ARCH_PPCGR 1
   4003 // PPCPOWER8:#define _ARCH_PPCSQ 1
   4004 // PPCPOWER8:#define _ARCH_PWR4 1
   4005 // PPCPOWER8:#define _ARCH_PWR5 1
   4006 // PPCPOWER8:#define _ARCH_PWR5X 1
   4007 // PPCPOWER8:#define _ARCH_PWR6 1
   4008 // PPCPOWER8:#define _ARCH_PWR6X 1
   4009 // PPCPOWER8:#define _ARCH_PWR7 1
   4010 // PPCPOWER8:#define _ARCH_PWR8 1
   4011 //
   4012 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64-LINUX %s
   4013 //
   4014 // PPC64-LINUX:#define _ARCH_PPC 1
   4015 // PPC64-LINUX:#define _ARCH_PPC64 1
   4016 // PPC64-LINUX:#define _BIG_ENDIAN 1
   4017 // PPC64-LINUX:#define _LP64 1
   4018 // PPC64-LINUX:#define __BIG_ENDIAN__ 1
   4019 // PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   4020 // PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
   4021 // PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
   4022 // PPC64-LINUX:#define __CHAR_BIT__ 8
   4023 // PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
   4024 // PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   4025 // PPC64-LINUX:#define __DBL_DIG__ 15
   4026 // PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
   4027 // PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
   4028 // PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
   4029 // PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
   4030 // PPC64-LINUX:#define __DBL_MANT_DIG__ 53
   4031 // PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
   4032 // PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
   4033 // PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
   4034 // PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
   4035 // PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
   4036 // PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
   4037 // PPC64-LINUX:#define __DECIMAL_DIG__ 33
   4038 // PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   4039 // PPC64-LINUX:#define __FLT_DIG__ 6
   4040 // PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
   4041 // PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
   4042 // PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
   4043 // PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
   4044 // PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
   4045 // PPC64-LINUX:#define __FLT_MANT_DIG__ 24
   4046 // PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
   4047 // PPC64-LINUX:#define __FLT_MAX_EXP__ 128
   4048 // PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
   4049 // PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
   4050 // PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
   4051 // PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
   4052 // PPC64-LINUX:#define __FLT_RADIX__ 2
   4053 // PPC64-LINUX:#define __INT16_MAX__ 32767
   4054 // PPC64-LINUX:#define __INT16_TYPE__ short
   4055 // PPC64-LINUX:#define __INT32_MAX__ 2147483647
   4056 // PPC64-LINUX:#define __INT32_TYPE__ int
   4057 // PPC64-LINUX:#define __INT64_C_SUFFIX__ L
   4058 // PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
   4059 // PPC64-LINUX:#define __INT64_TYPE__ long int
   4060 // PPC64-LINUX:#define __INT8_MAX__ 127
   4061 // PPC64-LINUX:#define __INT8_TYPE__ char
   4062 // PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
   4063 // PPC64-LINUX:#define __INTMAX_TYPE__ long int
   4064 // PPC64-LINUX:#define __INTMAX_WIDTH__ 64
   4065 // PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
   4066 // PPC64-LINUX:#define __INTPTR_TYPE__ long int
   4067 // PPC64-LINUX:#define __INTPTR_WIDTH__ 64
   4068 // PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
   4069 // PPC64-LINUX:#define __INT_FAST16_TYPE__ short
   4070 // PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
   4071 // PPC64-LINUX:#define __INT_FAST32_TYPE__ int
   4072 // PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
   4073 // PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
   4074 // PPC64-LINUX:#define __INT_FAST8_MAX__ 127
   4075 // PPC64-LINUX:#define __INT_FAST8_TYPE__ char
   4076 // PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
   4077 // PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
   4078 // PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
   4079 // PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
   4080 // PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
   4081 // PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
   4082 // PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
   4083 // PPC64-LINUX:#define __INT_LEAST8_TYPE__ char
   4084 // PPC64-LINUX:#define __INT_MAX__ 2147483647
   4085 // PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
   4086 // PPC64-LINUX:#define __LDBL_DIG__ 31
   4087 // PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
   4088 // PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
   4089 // PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
   4090 // PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
   4091 // PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
   4092 // PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
   4093 // PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
   4094 // PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
   4095 // PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
   4096 // PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
   4097 // PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
   4098 // PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
   4099 // PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
   4100 // PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
   4101 // PPC64-LINUX:#define __LP64__ 1
   4102 // PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
   4103 // PPC64-LINUX:#define __POINTER_WIDTH__ 64
   4104 // PPC64-LINUX:#define __POWERPC__ 1
   4105 // PPC64-LINUX:#define __PPC64__ 1
   4106 // PPC64-LINUX:#define __PPC__ 1
   4107 // PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
   4108 // PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
   4109 // PPC64-LINUX:#define __REGISTER_PREFIX__
   4110 // PPC64-LINUX:#define __SCHAR_MAX__ 127
   4111 // PPC64-LINUX:#define __SHRT_MAX__ 32767
   4112 // PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
   4113 // PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
   4114 // PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
   4115 // PPC64-LINUX:#define __SIZEOF_INT__ 4
   4116 // PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
   4117 // PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
   4118 // PPC64-LINUX:#define __SIZEOF_LONG__ 8
   4119 // PPC64-LINUX:#define __SIZEOF_POINTER__ 8
   4120 // PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
   4121 // PPC64-LINUX:#define __SIZEOF_SHORT__ 2
   4122 // PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
   4123 // PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
   4124 // PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
   4125 // PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
   4126 // PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
   4127 // PPC64-LINUX:#define __SIZE_WIDTH__ 64
   4128 // PPC64-LINUX:#define __UINT16_C_SUFFIX__ U
   4129 // PPC64-LINUX:#define __UINT16_MAX__ 65535U
   4130 // PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
   4131 // PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
   4132 // PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
   4133 // PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
   4134 // PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
   4135 // PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
   4136 // PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
   4137 // PPC64-LINUX:#define __UINT8_C_SUFFIX__ U
   4138 // PPC64-LINUX:#define __UINT8_MAX__ 255U
   4139 // PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
   4140 // PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
   4141 // PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
   4142 // PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
   4143 // PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
   4144 // PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
   4145 // PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
   4146 // PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535U
   4147 // PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
   4148 // PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
   4149 // PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
   4150 // PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   4151 // PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
   4152 // PPC64-LINUX:#define __UINT_FAST8_MAX__ 255U
   4153 // PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
   4154 // PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535U
   4155 // PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
   4156 // PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
   4157 // PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
   4158 // PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   4159 // PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
   4160 // PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255U
   4161 // PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
   4162 // PPC64-LINUX:#define __USER_LABEL_PREFIX__
   4163 // PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
   4164 // PPC64-LINUX:#define __WCHAR_TYPE__ int
   4165 // PPC64-LINUX:#define __WCHAR_WIDTH__ 32
   4166 // PPC64-LINUX:#define __WINT_TYPE__ unsigned int
   4167 // PPC64-LINUX:#define __WINT_UNSIGNED__ 1
   4168 // PPC64-LINUX:#define __WINT_WIDTH__ 32
   4169 // PPC64-LINUX:#define __powerpc64__ 1
   4170 // PPC64-LINUX:#define __powerpc__ 1
   4171 // PPC64-LINUX:#define __ppc64__ 1
   4172 // PPC64-LINUX:#define __ppc__ 1
   4173 //
   4174 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix PPC %s
   4175 //
   4176 // PPC:#define _ARCH_PPC 1
   4177 // PPC:#define _BIG_ENDIAN 1
   4178 // PPC-NOT:#define _LP64
   4179 // PPC:#define __BIG_ENDIAN__ 1
   4180 // PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   4181 // PPC:#define __CHAR16_TYPE__ unsigned short
   4182 // PPC:#define __CHAR32_TYPE__ unsigned int
   4183 // PPC:#define __CHAR_BIT__ 8
   4184 // PPC:#define __CHAR_UNSIGNED__ 1
   4185 // PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   4186 // PPC:#define __DBL_DIG__ 15
   4187 // PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
   4188 // PPC:#define __DBL_HAS_DENORM__ 1
   4189 // PPC:#define __DBL_HAS_INFINITY__ 1
   4190 // PPC:#define __DBL_HAS_QUIET_NAN__ 1
   4191 // PPC:#define __DBL_MANT_DIG__ 53
   4192 // PPC:#define __DBL_MAX_10_EXP__ 308
   4193 // PPC:#define __DBL_MAX_EXP__ 1024
   4194 // PPC:#define __DBL_MAX__ 1.7976931348623157e+308
   4195 // PPC:#define __DBL_MIN_10_EXP__ (-307)
   4196 // PPC:#define __DBL_MIN_EXP__ (-1021)
   4197 // PPC:#define __DBL_MIN__ 2.2250738585072014e-308
   4198 // PPC:#define __DECIMAL_DIG__ 33
   4199 // PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   4200 // PPC:#define __FLT_DIG__ 6
   4201 // PPC:#define __FLT_EPSILON__ 1.19209290e-7F
   4202 // PPC:#define __FLT_EVAL_METHOD__ 0
   4203 // PPC:#define __FLT_HAS_DENORM__ 1
   4204 // PPC:#define __FLT_HAS_INFINITY__ 1
   4205 // PPC:#define __FLT_HAS_QUIET_NAN__ 1
   4206 // PPC:#define __FLT_MANT_DIG__ 24
   4207 // PPC:#define __FLT_MAX_10_EXP__ 38
   4208 // PPC:#define __FLT_MAX_EXP__ 128
   4209 // PPC:#define __FLT_MAX__ 3.40282347e+38F
   4210 // PPC:#define __FLT_MIN_10_EXP__ (-37)
   4211 // PPC:#define __FLT_MIN_EXP__ (-125)
   4212 // PPC:#define __FLT_MIN__ 1.17549435e-38F
   4213 // PPC:#define __FLT_RADIX__ 2
   4214 // PPC:#define __INT16_MAX__ 32767
   4215 // PPC:#define __INT16_TYPE__ short
   4216 // PPC:#define __INT32_MAX__ 2147483647
   4217 // PPC:#define __INT32_TYPE__ int
   4218 // PPC:#define __INT64_C_SUFFIX__ LL
   4219 // PPC:#define __INT64_MAX__ 9223372036854775807LL
   4220 // PPC:#define __INT64_TYPE__ long long int
   4221 // PPC:#define __INT8_MAX__ 127
   4222 // PPC:#define __INT8_TYPE__ char
   4223 // PPC:#define __INTMAX_MAX__ 9223372036854775807LL
   4224 // PPC:#define __INTMAX_TYPE__ long long int
   4225 // PPC:#define __INTMAX_WIDTH__ 64
   4226 // PPC:#define __INTPTR_MAX__ 2147483647L
   4227 // PPC:#define __INTPTR_TYPE__ long int
   4228 // PPC:#define __INTPTR_WIDTH__ 32
   4229 // PPC:#define __INT_FAST16_MAX__ 32767
   4230 // PPC:#define __INT_FAST16_TYPE__ short
   4231 // PPC:#define __INT_FAST32_MAX__ 2147483647
   4232 // PPC:#define __INT_FAST32_TYPE__ int
   4233 // PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
   4234 // PPC:#define __INT_FAST64_TYPE__ long long int
   4235 // PPC:#define __INT_FAST8_MAX__ 127
   4236 // PPC:#define __INT_FAST8_TYPE__ char
   4237 // PPC:#define __INT_LEAST16_MAX__ 32767
   4238 // PPC:#define __INT_LEAST16_TYPE__ short
   4239 // PPC:#define __INT_LEAST32_MAX__ 2147483647
   4240 // PPC:#define __INT_LEAST32_TYPE__ int
   4241 // PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   4242 // PPC:#define __INT_LEAST64_TYPE__ long long int
   4243 // PPC:#define __INT_LEAST8_MAX__ 127
   4244 // PPC:#define __INT_LEAST8_TYPE__ char
   4245 // PPC:#define __INT_MAX__ 2147483647
   4246 // PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
   4247 // PPC:#define __LDBL_DIG__ 31
   4248 // PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
   4249 // PPC:#define __LDBL_HAS_DENORM__ 1
   4250 // PPC:#define __LDBL_HAS_INFINITY__ 1
   4251 // PPC:#define __LDBL_HAS_QUIET_NAN__ 1
   4252 // PPC:#define __LDBL_MANT_DIG__ 106
   4253 // PPC:#define __LDBL_MAX_10_EXP__ 308
   4254 // PPC:#define __LDBL_MAX_EXP__ 1024
   4255 // PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
   4256 // PPC:#define __LDBL_MIN_10_EXP__ (-291)
   4257 // PPC:#define __LDBL_MIN_EXP__ (-968)
   4258 // PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
   4259 // PPC:#define __LONG_DOUBLE_128__ 1
   4260 // PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
   4261 // PPC:#define __LONG_MAX__ 2147483647L
   4262 // PPC-NOT:#define __LP64__
   4263 // PPC:#define __NATURAL_ALIGNMENT__ 1
   4264 // PPC:#define __POINTER_WIDTH__ 32
   4265 // PPC:#define __POWERPC__ 1
   4266 // PPC:#define __PPC__ 1
   4267 // PPC:#define __PTRDIFF_TYPE__ long int
   4268 // PPC:#define __PTRDIFF_WIDTH__ 32
   4269 // PPC:#define __REGISTER_PREFIX__
   4270 // PPC:#define __SCHAR_MAX__ 127
   4271 // PPC:#define __SHRT_MAX__ 32767
   4272 // PPC:#define __SIG_ATOMIC_WIDTH__ 32
   4273 // PPC:#define __SIZEOF_DOUBLE__ 8
   4274 // PPC:#define __SIZEOF_FLOAT__ 4
   4275 // PPC:#define __SIZEOF_INT__ 4
   4276 // PPC:#define __SIZEOF_LONG_DOUBLE__ 16
   4277 // PPC:#define __SIZEOF_LONG_LONG__ 8
   4278 // PPC:#define __SIZEOF_LONG__ 4
   4279 // PPC:#define __SIZEOF_POINTER__ 4
   4280 // PPC:#define __SIZEOF_PTRDIFF_T__ 4
   4281 // PPC:#define __SIZEOF_SHORT__ 2
   4282 // PPC:#define __SIZEOF_SIZE_T__ 4
   4283 // PPC:#define __SIZEOF_WCHAR_T__ 4
   4284 // PPC:#define __SIZEOF_WINT_T__ 4
   4285 // PPC:#define __SIZE_MAX__ 4294967295U
   4286 // PPC:#define __SIZE_TYPE__ long unsigned int
   4287 // PPC:#define __SIZE_WIDTH__ 32
   4288 // PPC:#define __UINT16_C_SUFFIX__ U
   4289 // PPC:#define __UINT16_MAX__ 65535U
   4290 // PPC:#define __UINT16_TYPE__ unsigned short
   4291 // PPC:#define __UINT32_C_SUFFIX__ U
   4292 // PPC:#define __UINT32_MAX__ 4294967295U
   4293 // PPC:#define __UINT32_TYPE__ unsigned int
   4294 // PPC:#define __UINT64_C_SUFFIX__ ULL
   4295 // PPC:#define __UINT64_MAX__ 18446744073709551615ULL
   4296 // PPC:#define __UINT64_TYPE__ long long unsigned int
   4297 // PPC:#define __UINT8_C_SUFFIX__ U
   4298 // PPC:#define __UINT8_MAX__ 255U
   4299 // PPC:#define __UINT8_TYPE__ unsigned char
   4300 // PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
   4301 // PPC:#define __UINTMAX_TYPE__ long long unsigned int
   4302 // PPC:#define __UINTMAX_WIDTH__ 64
   4303 // PPC:#define __UINTPTR_MAX__ 4294967295U
   4304 // PPC:#define __UINTPTR_TYPE__ unsigned int
   4305 // PPC:#define __UINTPTR_WIDTH__ 32
   4306 // PPC:#define __UINT_FAST16_MAX__ 65535U
   4307 // PPC:#define __UINT_FAST16_TYPE__ unsigned short
   4308 // PPC:#define __UINT_FAST32_MAX__ 4294967295U
   4309 // PPC:#define __UINT_FAST32_TYPE__ unsigned int
   4310 // PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   4311 // PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
   4312 // PPC:#define __UINT_FAST8_MAX__ 255U
   4313 // PPC:#define __UINT_FAST8_TYPE__ unsigned char
   4314 // PPC:#define __UINT_LEAST16_MAX__ 65535U
   4315 // PPC:#define __UINT_LEAST16_TYPE__ unsigned short
   4316 // PPC:#define __UINT_LEAST32_MAX__ 4294967295U
   4317 // PPC:#define __UINT_LEAST32_TYPE__ unsigned int
   4318 // PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   4319 // PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
   4320 // PPC:#define __UINT_LEAST8_MAX__ 255U
   4321 // PPC:#define __UINT_LEAST8_TYPE__ unsigned char
   4322 // PPC:#define __USER_LABEL_PREFIX__ _
   4323 // PPC:#define __WCHAR_MAX__ 2147483647
   4324 // PPC:#define __WCHAR_TYPE__ int
   4325 // PPC:#define __WCHAR_WIDTH__ 32
   4326 // PPC:#define __WINT_TYPE__ int
   4327 // PPC:#define __WINT_WIDTH__ 32
   4328 // PPC:#define __ppc__ 1
   4329 //
   4330 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-LINUX %s
   4331 //
   4332 // PPC-LINUX:#define _ARCH_PPC 1
   4333 // PPC-LINUX:#define _BIG_ENDIAN 1
   4334 // PPC-LINUX-NOT:#define _LP64
   4335 // PPC-LINUX:#define __BIG_ENDIAN__ 1
   4336 // PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   4337 // PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
   4338 // PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
   4339 // PPC-LINUX:#define __CHAR_BIT__ 8
   4340 // PPC-LINUX:#define __CHAR_UNSIGNED__ 1
   4341 // PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   4342 // PPC-LINUX:#define __DBL_DIG__ 15
   4343 // PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
   4344 // PPC-LINUX:#define __DBL_HAS_DENORM__ 1
   4345 // PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
   4346 // PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
   4347 // PPC-LINUX:#define __DBL_MANT_DIG__ 53
   4348 // PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
   4349 // PPC-LINUX:#define __DBL_MAX_EXP__ 1024
   4350 // PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
   4351 // PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
   4352 // PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
   4353 // PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
   4354 // PPC-LINUX:#define __DECIMAL_DIG__ 33
   4355 // PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   4356 // PPC-LINUX:#define __FLT_DIG__ 6
   4357 // PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
   4358 // PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
   4359 // PPC-LINUX:#define __FLT_HAS_DENORM__ 1
   4360 // PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
   4361 // PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
   4362 // PPC-LINUX:#define __FLT_MANT_DIG__ 24
   4363 // PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
   4364 // PPC-LINUX:#define __FLT_MAX_EXP__ 128
   4365 // PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
   4366 // PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
   4367 // PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
   4368 // PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
   4369 // PPC-LINUX:#define __FLT_RADIX__ 2
   4370 // PPC-LINUX:#define __INT16_MAX__ 32767
   4371 // PPC-LINUX:#define __INT16_TYPE__ short
   4372 // PPC-LINUX:#define __INT32_MAX__ 2147483647
   4373 // PPC-LINUX:#define __INT32_TYPE__ int
   4374 // PPC-LINUX:#define __INT64_C_SUFFIX__ LL
   4375 // PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
   4376 // PPC-LINUX:#define __INT64_TYPE__ long long int
   4377 // PPC-LINUX:#define __INT8_MAX__ 127
   4378 // PPC-LINUX:#define __INT8_TYPE__ char
   4379 // PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
   4380 // PPC-LINUX:#define __INTMAX_TYPE__ long long int
   4381 // PPC-LINUX:#define __INTMAX_WIDTH__ 64
   4382 // PPC-LINUX:#define __INTPTR_MAX__ 2147483647
   4383 // PPC-LINUX:#define __INTPTR_TYPE__ int
   4384 // PPC-LINUX:#define __INTPTR_WIDTH__ 32
   4385 // PPC-LINUX:#define __INT_FAST16_MAX__ 32767
   4386 // PPC-LINUX:#define __INT_FAST16_TYPE__ short
   4387 // PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
   4388 // PPC-LINUX:#define __INT_FAST32_TYPE__ int
   4389 // PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
   4390 // PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
   4391 // PPC-LINUX:#define __INT_FAST8_MAX__ 127
   4392 // PPC-LINUX:#define __INT_FAST8_TYPE__ char
   4393 // PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
   4394 // PPC-LINUX:#define __INT_LEAST16_TYPE__ short
   4395 // PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
   4396 // PPC-LINUX:#define __INT_LEAST32_TYPE__ int
   4397 // PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   4398 // PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
   4399 // PPC-LINUX:#define __INT_LEAST8_MAX__ 127
   4400 // PPC-LINUX:#define __INT_LEAST8_TYPE__ char
   4401 // PPC-LINUX:#define __INT_MAX__ 2147483647
   4402 // PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
   4403 // PPC-LINUX:#define __LDBL_DIG__ 31
   4404 // PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
   4405 // PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
   4406 // PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
   4407 // PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
   4408 // PPC-LINUX:#define __LDBL_MANT_DIG__ 106
   4409 // PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
   4410 // PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
   4411 // PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
   4412 // PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
   4413 // PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
   4414 // PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
   4415 // PPC-LINUX:#define __LONG_DOUBLE_128__ 1
   4416 // PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
   4417 // PPC-LINUX:#define __LONG_MAX__ 2147483647L
   4418 // PPC-LINUX-NOT:#define __LP64__
   4419 // PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
   4420 // PPC-LINUX:#define __POINTER_WIDTH__ 32
   4421 // PPC-LINUX:#define __POWERPC__ 1
   4422 // PPC-LINUX:#define __PPC__ 1
   4423 // PPC-LINUX:#define __PTRDIFF_TYPE__ int
   4424 // PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
   4425 // PPC-LINUX:#define __REGISTER_PREFIX__
   4426 // PPC-LINUX:#define __SCHAR_MAX__ 127
   4427 // PPC-LINUX:#define __SHRT_MAX__ 32767
   4428 // PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
   4429 // PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
   4430 // PPC-LINUX:#define __SIZEOF_FLOAT__ 4
   4431 // PPC-LINUX:#define __SIZEOF_INT__ 4
   4432 // PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
   4433 // PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
   4434 // PPC-LINUX:#define __SIZEOF_LONG__ 4
   4435 // PPC-LINUX:#define __SIZEOF_POINTER__ 4
   4436 // PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
   4437 // PPC-LINUX:#define __SIZEOF_SHORT__ 2
   4438 // PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
   4439 // PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
   4440 // PPC-LINUX:#define __SIZEOF_WINT_T__ 4
   4441 // PPC-LINUX:#define __SIZE_MAX__ 4294967295U
   4442 // PPC-LINUX:#define __SIZE_TYPE__ unsigned int
   4443 // PPC-LINUX:#define __SIZE_WIDTH__ 32
   4444 // PPC-LINUX:#define __UINT16_C_SUFFIX__ U
   4445 // PPC-LINUX:#define __UINT16_MAX__ 65535U
   4446 // PPC-LINUX:#define __UINT16_TYPE__ unsigned short
   4447 // PPC-LINUX:#define __UINT32_C_SUFFIX__ U
   4448 // PPC-LINUX:#define __UINT32_MAX__ 4294967295U
   4449 // PPC-LINUX:#define __UINT32_TYPE__ unsigned int
   4450 // PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
   4451 // PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
   4452 // PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
   4453 // PPC-LINUX:#define __UINT8_C_SUFFIX__ U
   4454 // PPC-LINUX:#define __UINT8_MAX__ 255U
   4455 // PPC-LINUX:#define __UINT8_TYPE__ unsigned char
   4456 // PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
   4457 // PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
   4458 // PPC-LINUX:#define __UINTMAX_WIDTH__ 64
   4459 // PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
   4460 // PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
   4461 // PPC-LINUX:#define __UINTPTR_WIDTH__ 32
   4462 // PPC-LINUX:#define __UINT_FAST16_MAX__ 65535U
   4463 // PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
   4464 // PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
   4465 // PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
   4466 // PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   4467 // PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
   4468 // PPC-LINUX:#define __UINT_FAST8_MAX__ 255U
   4469 // PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
   4470 // PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535U
   4471 // PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
   4472 // PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
   4473 // PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
   4474 // PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   4475 // PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
   4476 // PPC-LINUX:#define __UINT_LEAST8_MAX__ 255U
   4477 // PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
   4478 // PPC-LINUX:#define __USER_LABEL_PREFIX__
   4479 // PPC-LINUX:#define __WCHAR_MAX__ 2147483647
   4480 // PPC-LINUX:#define __WCHAR_TYPE__ int
   4481 // PPC-LINUX:#define __WCHAR_WIDTH__ 32
   4482 // PPC-LINUX:#define __WINT_TYPE__ unsigned int
   4483 // PPC-LINUX:#define __WINT_UNSIGNED__ 1
   4484 // PPC-LINUX:#define __WINT_WIDTH__ 32
   4485 // PPC-LINUX:#define __powerpc__ 1
   4486 // PPC-LINUX:#define __ppc__ 1
   4487 //
   4488 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-apple-darwin8 < /dev/null | FileCheck -check-prefix PPC-DARWIN %s
   4489 //
   4490 // PPC-DARWIN:#define _ARCH_PPC 1
   4491 // PPC-DARWIN:#define _BIG_ENDIAN 1
   4492 // PPC-DARWIN:#define __BIG_ENDIAN__ 1
   4493 // PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   4494 // PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
   4495 // PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
   4496 // PPC-DARWIN:#define __CHAR_BIT__ 8
   4497 // PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   4498 // PPC-DARWIN:#define __DBL_DIG__ 15
   4499 // PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
   4500 // PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
   4501 // PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
   4502 // PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
   4503 // PPC-DARWIN:#define __DBL_MANT_DIG__ 53
   4504 // PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
   4505 // PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
   4506 // PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
   4507 // PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
   4508 // PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
   4509 // PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
   4510 // PPC-DARWIN:#define __DECIMAL_DIG__ 33
   4511 // PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   4512 // PPC-DARWIN:#define __FLT_DIG__ 6
   4513 // PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
   4514 // PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
   4515 // PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
   4516 // PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
   4517 // PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
   4518 // PPC-DARWIN:#define __FLT_MANT_DIG__ 24
   4519 // PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
   4520 // PPC-DARWIN:#define __FLT_MAX_EXP__ 128
   4521 // PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
   4522 // PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
   4523 // PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
   4524 // PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
   4525 // PPC-DARWIN:#define __FLT_RADIX__ 2
   4526 // PPC-DARWIN:#define __INT16_MAX__ 32767
   4527 // PPC-DARWIN:#define __INT16_TYPE__ short
   4528 // PPC-DARWIN:#define __INT32_MAX__ 2147483647
   4529 // PPC-DARWIN:#define __INT32_TYPE__ int
   4530 // PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
   4531 // PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
   4532 // PPC-DARWIN:#define __INT64_TYPE__ long long int
   4533 // PPC-DARWIN:#define __INT8_MAX__ 127
   4534 // PPC-DARWIN:#define __INT8_TYPE__ char
   4535 // PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
   4536 // PPC-DARWIN:#define __INTMAX_TYPE__ long long int
   4537 // PPC-DARWIN:#define __INTMAX_WIDTH__ 64
   4538 // PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
   4539 // PPC-DARWIN:#define __INTPTR_TYPE__ long int
   4540 // PPC-DARWIN:#define __INTPTR_WIDTH__ 32
   4541 // PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
   4542 // PPC-DARWIN:#define __INT_FAST16_TYPE__ short
   4543 // PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
   4544 // PPC-DARWIN:#define __INT_FAST32_TYPE__ int
   4545 // PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
   4546 // PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
   4547 // PPC-DARWIN:#define __INT_FAST8_MAX__ 127
   4548 // PPC-DARWIN:#define __INT_FAST8_TYPE__ char
   4549 // PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
   4550 // PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
   4551 // PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
   4552 // PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
   4553 // PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   4554 // PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
   4555 // PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
   4556 // PPC-DARWIN:#define __INT_LEAST8_TYPE__ char
   4557 // PPC-DARWIN:#define __INT_MAX__ 2147483647
   4558 // PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
   4559 // PPC-DARWIN:#define __LDBL_DIG__ 31
   4560 // PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
   4561 // PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
   4562 // PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
   4563 // PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
   4564 // PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
   4565 // PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
   4566 // PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
   4567 // PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
   4568 // PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
   4569 // PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
   4570 // PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
   4571 // PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
   4572 // PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
   4573 // PPC-DARWIN:#define __LONG_MAX__ 2147483647L
   4574 // PPC-DARWIN:#define __MACH__ 1
   4575 // PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
   4576 // PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
   4577 // PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
   4578 // PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
   4579 // PPC-DARWIN:#define __POINTER_WIDTH__ 32
   4580 // PPC-DARWIN:#define __POWERPC__ 1
   4581 // PPC-DARWIN:#define __PPC__ 1
   4582 // PPC-DARWIN:#define __PTRDIFF_TYPE__ int
   4583 // PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
   4584 // PPC-DARWIN:#define __REGISTER_PREFIX__
   4585 // PPC-DARWIN:#define __SCHAR_MAX__ 127
   4586 // PPC-DARWIN:#define __SHRT_MAX__ 32767
   4587 // PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
   4588 // PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
   4589 // PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
   4590 // PPC-DARWIN:#define __SIZEOF_INT__ 4
   4591 // PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
   4592 // PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
   4593 // PPC-DARWIN:#define __SIZEOF_LONG__ 4
   4594 // PPC-DARWIN:#define __SIZEOF_POINTER__ 4
   4595 // PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
   4596 // PPC-DARWIN:#define __SIZEOF_SHORT__ 2
   4597 // PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
   4598 // PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
   4599 // PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
   4600 // PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
   4601 // PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
   4602 // PPC-DARWIN:#define __SIZE_WIDTH__ 32
   4603 // PPC-DARWIN:#define __STDC_HOSTED__ 0
   4604 // PPC-DARWIN:#define __STDC_VERSION__ 199901L
   4605 // PPC-DARWIN:#define __STDC__ 1
   4606 // PPC-DARWIN:#define __UINT16_C_SUFFIX__ U
   4607 // PPC-DARWIN:#define __UINT16_MAX__ 65535U
   4608 // PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
   4609 // PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
   4610 // PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
   4611 // PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
   4612 // PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
   4613 // PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
   4614 // PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
   4615 // PPC-DARWIN:#define __UINT8_C_SUFFIX__ U
   4616 // PPC-DARWIN:#define __UINT8_MAX__ 255U
   4617 // PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
   4618 // PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
   4619 // PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
   4620 // PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
   4621 // PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295U
   4622 // PPC-DARWIN:#define __UINTPTR_TYPE__ unsigned int
   4623 // PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
   4624 // PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535U
   4625 // PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
   4626 // PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
   4627 // PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
   4628 // PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   4629 // PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
   4630 // PPC-DARWIN:#define __UINT_FAST8_MAX__ 255U
   4631 // PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
   4632 // PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535U
   4633 // PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
   4634 // PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
   4635 // PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
   4636 // PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   4637 // PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
   4638 // PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255U
   4639 // PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
   4640 // PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
   4641 // PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
   4642 // PPC-DARWIN:#define __WCHAR_TYPE__ int
   4643 // PPC-DARWIN:#define __WCHAR_WIDTH__ 32
   4644 // PPC-DARWIN:#define __WINT_TYPE__ int
   4645 // PPC-DARWIN:#define __WINT_WIDTH__ 32
   4646 // PPC-DARWIN:#define __powerpc__ 1
   4647 // PPC-DARWIN:#define __ppc__ 1
   4648 //
   4649 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix S390X %s
   4650 //
   4651 // S390X:#define __CHAR16_TYPE__ unsigned short
   4652 // S390X:#define __CHAR32_TYPE__ unsigned int
   4653 // S390X:#define __CHAR_BIT__ 8
   4654 // S390X:#define __CHAR_UNSIGNED__ 1
   4655 // S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   4656 // S390X:#define __DBL_DIG__ 15
   4657 // S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
   4658 // S390X:#define __DBL_HAS_DENORM__ 1
   4659 // S390X:#define __DBL_HAS_INFINITY__ 1
   4660 // S390X:#define __DBL_HAS_QUIET_NAN__ 1
   4661 // S390X:#define __DBL_MANT_DIG__ 53
   4662 // S390X:#define __DBL_MAX_10_EXP__ 308
   4663 // S390X:#define __DBL_MAX_EXP__ 1024
   4664 // S390X:#define __DBL_MAX__ 1.7976931348623157e+308
   4665 // S390X:#define __DBL_MIN_10_EXP__ (-307)
   4666 // S390X:#define __DBL_MIN_EXP__ (-1021)
   4667 // S390X:#define __DBL_MIN__ 2.2250738585072014e-308
   4668 // S390X:#define __DECIMAL_DIG__ 36
   4669 // S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   4670 // S390X:#define __FLT_DIG__ 6
   4671 // S390X:#define __FLT_EPSILON__ 1.19209290e-7F
   4672 // S390X:#define __FLT_EVAL_METHOD__ 0
   4673 // S390X:#define __FLT_HAS_DENORM__ 1
   4674 // S390X:#define __FLT_HAS_INFINITY__ 1
   4675 // S390X:#define __FLT_HAS_QUIET_NAN__ 1
   4676 // S390X:#define __FLT_MANT_DIG__ 24
   4677 // S390X:#define __FLT_MAX_10_EXP__ 38
   4678 // S390X:#define __FLT_MAX_EXP__ 128
   4679 // S390X:#define __FLT_MAX__ 3.40282347e+38F
   4680 // S390X:#define __FLT_MIN_10_EXP__ (-37)
   4681 // S390X:#define __FLT_MIN_EXP__ (-125)
   4682 // S390X:#define __FLT_MIN__ 1.17549435e-38F
   4683 // S390X:#define __FLT_RADIX__ 2
   4684 // S390X:#define __INT16_MAX__ 32767
   4685 // S390X:#define __INT16_TYPE__ short
   4686 // S390X:#define __INT32_MAX__ 2147483647
   4687 // S390X:#define __INT32_TYPE__ int
   4688 // S390X:#define __INT64_C_SUFFIX__ LL
   4689 // S390X:#define __INT64_MAX__ 9223372036854775807LL
   4690 // S390X:#define __INT64_TYPE__ long long int
   4691 // S390X:#define __INT8_MAX__ 127
   4692 // S390X:#define __INT8_TYPE__ char
   4693 // S390X:#define __INTMAX_MAX__ 9223372036854775807LL
   4694 // S390X:#define __INTMAX_TYPE__ long long int
   4695 // S390X:#define __INTMAX_WIDTH__ 64
   4696 // S390X:#define __INTPTR_MAX__ 9223372036854775807L
   4697 // S390X:#define __INTPTR_TYPE__ long int
   4698 // S390X:#define __INTPTR_WIDTH__ 64
   4699 // S390X:#define __INT_FAST16_MAX__ 32767
   4700 // S390X:#define __INT_FAST16_TYPE__ short
   4701 // S390X:#define __INT_FAST32_MAX__ 2147483647
   4702 // S390X:#define __INT_FAST32_TYPE__ int
   4703 // S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
   4704 // S390X:#define __INT_FAST64_TYPE__ long int
   4705 // S390X:#define __INT_FAST8_MAX__ 127
   4706 // S390X:#define __INT_FAST8_TYPE__ char
   4707 // S390X:#define __INT_LEAST16_MAX__ 32767
   4708 // S390X:#define __INT_LEAST16_TYPE__ short
   4709 // S390X:#define __INT_LEAST32_MAX__ 2147483647
   4710 // S390X:#define __INT_LEAST32_TYPE__ int
   4711 // S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
   4712 // S390X:#define __INT_LEAST64_TYPE__ long int
   4713 // S390X:#define __INT_LEAST8_MAX__ 127
   4714 // S390X:#define __INT_LEAST8_TYPE__ char
   4715 // S390X:#define __INT_MAX__ 2147483647
   4716 // S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
   4717 // S390X:#define __LDBL_DIG__ 33
   4718 // S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
   4719 // S390X:#define __LDBL_HAS_DENORM__ 1
   4720 // S390X:#define __LDBL_HAS_INFINITY__ 1
   4721 // S390X:#define __LDBL_HAS_QUIET_NAN__ 1
   4722 // S390X:#define __LDBL_MANT_DIG__ 113
   4723 // S390X:#define __LDBL_MAX_10_EXP__ 4932
   4724 // S390X:#define __LDBL_MAX_EXP__ 16384
   4725 // S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
   4726 // S390X:#define __LDBL_MIN_10_EXP__ (-4931)
   4727 // S390X:#define __LDBL_MIN_EXP__ (-16381)
   4728 // S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
   4729 // S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
   4730 // S390X:#define __LONG_MAX__ 9223372036854775807L
   4731 // S390X:#define __NO_INLINE__ 1
   4732 // S390X:#define __POINTER_WIDTH__ 64
   4733 // S390X:#define __PTRDIFF_TYPE__ long int
   4734 // S390X:#define __PTRDIFF_WIDTH__ 64
   4735 // S390X:#define __SCHAR_MAX__ 127
   4736 // S390X:#define __SHRT_MAX__ 32767
   4737 // S390X:#define __SIG_ATOMIC_WIDTH__ 32
   4738 // S390X:#define __SIZEOF_DOUBLE__ 8
   4739 // S390X:#define __SIZEOF_FLOAT__ 4
   4740 // S390X:#define __SIZEOF_INT__ 4
   4741 // S390X:#define __SIZEOF_LONG_DOUBLE__ 16
   4742 // S390X:#define __SIZEOF_LONG_LONG__ 8
   4743 // S390X:#define __SIZEOF_LONG__ 8
   4744 // S390X:#define __SIZEOF_POINTER__ 8
   4745 // S390X:#define __SIZEOF_PTRDIFF_T__ 8
   4746 // S390X:#define __SIZEOF_SHORT__ 2
   4747 // S390X:#define __SIZEOF_SIZE_T__ 8
   4748 // S390X:#define __SIZEOF_WCHAR_T__ 4
   4749 // S390X:#define __SIZEOF_WINT_T__ 4
   4750 // S390X:#define __SIZE_TYPE__ long unsigned int
   4751 // S390X:#define __SIZE_WIDTH__ 64
   4752 // S390X:#define __UINT16_C_SUFFIX__ U
   4753 // S390X:#define __UINT16_MAX__ 65535U
   4754 // S390X:#define __UINT16_TYPE__ unsigned short
   4755 // S390X:#define __UINT32_C_SUFFIX__ U
   4756 // S390X:#define __UINT32_MAX__ 4294967295U
   4757 // S390X:#define __UINT32_TYPE__ unsigned int
   4758 // S390X:#define __UINT64_C_SUFFIX__ UL
   4759 // S390X:#define __UINT64_MAX__ 18446744073709551615UL
   4760 // S390X:#define __UINT64_TYPE__ long unsigned int
   4761 // S390X:#define __UINT8_C_SUFFIX__ U
   4762 // S390X:#define __UINT8_MAX__ 255U
   4763 // S390X:#define __UINT8_TYPE__ unsigned char
   4764 // S390X:#define __UINTMAX_MAX__ 18446744073709551615ULL
   4765 // S390X:#define __UINTMAX_TYPE__ long long unsigned int
   4766 // S390X:#define __UINTMAX_WIDTH__ 64
   4767 // S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
   4768 // S390X:#define __UINTPTR_TYPE__ long unsigned int
   4769 // S390X:#define __UINTPTR_WIDTH__ 64
   4770 // S390X:#define __UINT_FAST16_MAX__ 65535U
   4771 // S390X:#define __UINT_FAST16_TYPE__ unsigned short
   4772 // S390X:#define __UINT_FAST32_MAX__ 4294967295U
   4773 // S390X:#define __UINT_FAST32_TYPE__ unsigned int
   4774 // S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   4775 // S390X:#define __UINT_FAST64_TYPE__ long unsigned int
   4776 // S390X:#define __UINT_FAST8_MAX__ 255U
   4777 // S390X:#define __UINT_FAST8_TYPE__ unsigned char
   4778 // S390X:#define __UINT_LEAST16_MAX__ 65535U
   4779 // S390X:#define __UINT_LEAST16_TYPE__ unsigned short
   4780 // S390X:#define __UINT_LEAST32_MAX__ 4294967295U
   4781 // S390X:#define __UINT_LEAST32_TYPE__ unsigned int
   4782 // S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   4783 // S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
   4784 // S390X:#define __UINT_LEAST8_MAX__ 255U
   4785 // S390X:#define __UINT_LEAST8_TYPE__ unsigned char
   4786 // S390X:#define __USER_LABEL_PREFIX__ _
   4787 // S390X:#define __WCHAR_MAX__ 2147483647
   4788 // S390X:#define __WCHAR_TYPE__ int
   4789 // S390X:#define __WCHAR_WIDTH__ 32
   4790 // S390X:#define __WINT_TYPE__ int
   4791 // S390X:#define __WINT_WIDTH__ 32
   4792 // S390X:#define __s390__ 1
   4793 // S390X:#define __s390x__ 1
   4794 //
   4795 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -check-prefix SPARC %s
   4796 //
   4797 // SPARC-NOT:#define _LP64
   4798 // SPARC:#define __BIG_ENDIAN__ 1
   4799 // SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   4800 // SPARC:#define __CHAR16_TYPE__ unsigned short
   4801 // SPARC:#define __CHAR32_TYPE__ unsigned int
   4802 // SPARC:#define __CHAR_BIT__ 8
   4803 // SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   4804 // SPARC:#define __DBL_DIG__ 15
   4805 // SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
   4806 // SPARC:#define __DBL_HAS_DENORM__ 1
   4807 // SPARC:#define __DBL_HAS_INFINITY__ 1
   4808 // SPARC:#define __DBL_HAS_QUIET_NAN__ 1
   4809 // SPARC:#define __DBL_MANT_DIG__ 53
   4810 // SPARC:#define __DBL_MAX_10_EXP__ 308
   4811 // SPARC:#define __DBL_MAX_EXP__ 1024
   4812 // SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
   4813 // SPARC:#define __DBL_MIN_10_EXP__ (-307)
   4814 // SPARC:#define __DBL_MIN_EXP__ (-1021)
   4815 // SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
   4816 // SPARC:#define __DECIMAL_DIG__ 17
   4817 // SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   4818 // SPARC:#define __FLT_DIG__ 6
   4819 // SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
   4820 // SPARC:#define __FLT_EVAL_METHOD__ 0
   4821 // SPARC:#define __FLT_HAS_DENORM__ 1
   4822 // SPARC:#define __FLT_HAS_INFINITY__ 1
   4823 // SPARC:#define __FLT_HAS_QUIET_NAN__ 1
   4824 // SPARC:#define __FLT_MANT_DIG__ 24
   4825 // SPARC:#define __FLT_MAX_10_EXP__ 38
   4826 // SPARC:#define __FLT_MAX_EXP__ 128
   4827 // SPARC:#define __FLT_MAX__ 3.40282347e+38F
   4828 // SPARC:#define __FLT_MIN_10_EXP__ (-37)
   4829 // SPARC:#define __FLT_MIN_EXP__ (-125)
   4830 // SPARC:#define __FLT_MIN__ 1.17549435e-38F
   4831 // SPARC:#define __FLT_RADIX__ 2
   4832 // SPARC:#define __INT16_MAX__ 32767
   4833 // SPARC:#define __INT16_TYPE__ short
   4834 // SPARC:#define __INT32_MAX__ 2147483647
   4835 // SPARC:#define __INT32_TYPE__ int
   4836 // SPARC:#define __INT64_C_SUFFIX__ LL
   4837 // SPARC:#define __INT64_MAX__ 9223372036854775807LL
   4838 // SPARC:#define __INT64_TYPE__ long long int
   4839 // SPARC:#define __INT8_MAX__ 127
   4840 // SPARC:#define __INT8_TYPE__ char
   4841 // SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
   4842 // SPARC:#define __INTMAX_TYPE__ long long int
   4843 // SPARC:#define __INTMAX_WIDTH__ 64
   4844 // SPARC:#define __INTPTR_MAX__ 2147483647L
   4845 // SPARC:#define __INTPTR_TYPE__ long int
   4846 // SPARC:#define __INTPTR_WIDTH__ 32
   4847 // SPARC:#define __INT_FAST16_MAX__ 32767
   4848 // SPARC:#define __INT_FAST16_TYPE__ short
   4849 // SPARC:#define __INT_FAST32_MAX__ 2147483647
   4850 // SPARC:#define __INT_FAST32_TYPE__ int
   4851 // SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
   4852 // SPARC:#define __INT_FAST64_TYPE__ long long int
   4853 // SPARC:#define __INT_FAST8_MAX__ 127
   4854 // SPARC:#define __INT_FAST8_TYPE__ char
   4855 // SPARC:#define __INT_LEAST16_MAX__ 32767
   4856 // SPARC:#define __INT_LEAST16_TYPE__ short
   4857 // SPARC:#define __INT_LEAST32_MAX__ 2147483647
   4858 // SPARC:#define __INT_LEAST32_TYPE__ int
   4859 // SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
   4860 // SPARC:#define __INT_LEAST64_TYPE__ long long int
   4861 // SPARC:#define __INT_LEAST8_MAX__ 127
   4862 // SPARC:#define __INT_LEAST8_TYPE__ char
   4863 // SPARC:#define __INT_MAX__ 2147483647
   4864 // SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
   4865 // SPARC:#define __LDBL_DIG__ 15
   4866 // SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
   4867 // SPARC:#define __LDBL_HAS_DENORM__ 1
   4868 // SPARC:#define __LDBL_HAS_INFINITY__ 1
   4869 // SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
   4870 // SPARC:#define __LDBL_MANT_DIG__ 53
   4871 // SPARC:#define __LDBL_MAX_10_EXP__ 308
   4872 // SPARC:#define __LDBL_MAX_EXP__ 1024
   4873 // SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
   4874 // SPARC:#define __LDBL_MIN_10_EXP__ (-307)
   4875 // SPARC:#define __LDBL_MIN_EXP__ (-1021)
   4876 // SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
   4877 // SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
   4878 // SPARC:#define __LONG_MAX__ 2147483647L
   4879 // SPARC-NOT:#define __LP64__
   4880 // SPARC:#define __POINTER_WIDTH__ 32
   4881 // SPARC:#define __PTRDIFF_TYPE__ long int
   4882 // SPARC:#define __PTRDIFF_WIDTH__ 32
   4883 // SPARC:#define __REGISTER_PREFIX__
   4884 // SPARC:#define __SCHAR_MAX__ 127
   4885 // SPARC:#define __SHRT_MAX__ 32767
   4886 // SPARC:#define __SIG_ATOMIC_WIDTH__ 32
   4887 // SPARC:#define __SIZEOF_DOUBLE__ 8
   4888 // SPARC:#define __SIZEOF_FLOAT__ 4
   4889 // SPARC:#define __SIZEOF_INT__ 4
   4890 // SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
   4891 // SPARC:#define __SIZEOF_LONG_LONG__ 8
   4892 // SPARC:#define __SIZEOF_LONG__ 4
   4893 // SPARC:#define __SIZEOF_POINTER__ 4
   4894 // SPARC:#define __SIZEOF_PTRDIFF_T__ 4
   4895 // SPARC:#define __SIZEOF_SHORT__ 2
   4896 // SPARC:#define __SIZEOF_SIZE_T__ 4
   4897 // SPARC:#define __SIZEOF_WCHAR_T__ 4
   4898 // SPARC:#define __SIZEOF_WINT_T__ 4
   4899 // SPARC:#define __SIZE_MAX__ 4294967295U
   4900 // SPARC:#define __SIZE_TYPE__ long unsigned int
   4901 // SPARC:#define __SIZE_WIDTH__ 32
   4902 // SPARC:#define __UINT16_C_SUFFIX__ U
   4903 // SPARC:#define __UINT16_MAX__ 65535U
   4904 // SPARC:#define __UINT16_TYPE__ unsigned short
   4905 // SPARC:#define __UINT32_C_SUFFIX__ U
   4906 // SPARC:#define __UINT32_MAX__ 4294967295U
   4907 // SPARC:#define __UINT32_TYPE__ unsigned int
   4908 // SPARC:#define __UINT64_C_SUFFIX__ ULL
   4909 // SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
   4910 // SPARC:#define __UINT64_TYPE__ long long unsigned int
   4911 // SPARC:#define __UINT8_C_SUFFIX__ U
   4912 // SPARC:#define __UINT8_MAX__ 255U
   4913 // SPARC:#define __UINT8_TYPE__ unsigned char
   4914 // SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
   4915 // SPARC:#define __UINTMAX_TYPE__ long long unsigned int
   4916 // SPARC:#define __UINTMAX_WIDTH__ 64
   4917 // SPARC:#define __UINTPTR_MAX__ 4294967295U
   4918 // SPARC:#define __UINTPTR_TYPE__ unsigned int
   4919 // SPARC:#define __UINTPTR_WIDTH__ 32
   4920 // SPARC:#define __UINT_FAST16_MAX__ 65535U
   4921 // SPARC:#define __UINT_FAST16_TYPE__ unsigned short
   4922 // SPARC:#define __UINT_FAST32_MAX__ 4294967295U
   4923 // SPARC:#define __UINT_FAST32_TYPE__ unsigned int
   4924 // SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
   4925 // SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
   4926 // SPARC:#define __UINT_FAST8_MAX__ 255U
   4927 // SPARC:#define __UINT_FAST8_TYPE__ unsigned char
   4928 // SPARC:#define __UINT_LEAST16_MAX__ 65535U
   4929 // SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
   4930 // SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
   4931 // SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
   4932 // SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
   4933 // SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
   4934 // SPARC:#define __UINT_LEAST8_MAX__ 255U
   4935 // SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
   4936 // SPARC:#define __USER_LABEL_PREFIX__ _
   4937 // SPARC:#define __VERSION__ "4.2.1 Compatible
   4938 // SPARC:#define __WCHAR_MAX__ 2147483647
   4939 // SPARC:#define __WCHAR_TYPE__ int
   4940 // SPARC:#define __WCHAR_WIDTH__ 32
   4941 // SPARC:#define __WINT_TYPE__ int
   4942 // SPARC:#define __WINT_WIDTH__ 32
   4943 // SPARC:#define __sparc 1
   4944 // SPARC:#define __sparc__ 1
   4945 // SPARC:#define __sparcv8 1
   4946 // SPARC:#define sparc 1
   4947 //
   4948 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s
   4949 //
   4950 // TCE-NOT:#define _LP64
   4951 // TCE:#define __BIG_ENDIAN__ 1
   4952 // TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
   4953 // TCE:#define __CHAR16_TYPE__ unsigned short
   4954 // TCE:#define __CHAR32_TYPE__ unsigned int
   4955 // TCE:#define __CHAR_BIT__ 8
   4956 // TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
   4957 // TCE:#define __DBL_DIG__ 6
   4958 // TCE:#define __DBL_EPSILON__ 1.19209290e-7
   4959 // TCE:#define __DBL_HAS_DENORM__ 1
   4960 // TCE:#define __DBL_HAS_INFINITY__ 1
   4961 // TCE:#define __DBL_HAS_QUIET_NAN__ 1
   4962 // TCE:#define __DBL_MANT_DIG__ 24
   4963 // TCE:#define __DBL_MAX_10_EXP__ 38
   4964 // TCE:#define __DBL_MAX_EXP__ 128
   4965 // TCE:#define __DBL_MAX__ 3.40282347e+38
   4966 // TCE:#define __DBL_MIN_10_EXP__ (-37)
   4967 // TCE:#define __DBL_MIN_EXP__ (-125)
   4968 // TCE:#define __DBL_MIN__ 1.17549435e-38
   4969 // TCE:#define __DECIMAL_DIG__ -1
   4970 // TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   4971 // TCE:#define __FLT_DIG__ 6
   4972 // TCE:#define __FLT_EPSILON__ 1.19209290e-7F
   4973 // TCE:#define __FLT_EVAL_METHOD__ 0
   4974 // TCE:#define __FLT_HAS_DENORM__ 1
   4975 // TCE:#define __FLT_HAS_INFINITY__ 1
   4976 // TCE:#define __FLT_HAS_QUIET_NAN__ 1
   4977 // TCE:#define __FLT_MANT_DIG__ 24
   4978 // TCE:#define __FLT_MAX_10_EXP__ 38
   4979 // TCE:#define __FLT_MAX_EXP__ 128
   4980 // TCE:#define __FLT_MAX__ 3.40282347e+38F
   4981 // TCE:#define __FLT_MIN_10_EXP__ (-37)
   4982 // TCE:#define __FLT_MIN_EXP__ (-125)
   4983 // TCE:#define __FLT_MIN__ 1.17549435e-38F
   4984 // TCE:#define __FLT_RADIX__ 2
   4985 // TCE:#define __INT16_MAX__ 32767
   4986 // TCE:#define __INT16_TYPE__ short
   4987 // TCE:#define __INT32_MAX__ 2147483647
   4988 // TCE:#define __INT32_TYPE__ int
   4989 // TCE:#define __INT8_MAX__ 127
   4990 // TCE:#define __INT8_TYPE__ char
   4991 // TCE:#define __INTMAX_MAX__ 2147483647L
   4992 // TCE:#define __INTMAX_TYPE__ long int
   4993 // TCE:#define __INTMAX_WIDTH__ 32
   4994 // TCE:#define __INTPTR_MAX__ 2147483647
   4995 // TCE:#define __INTPTR_TYPE__ int
   4996 // TCE:#define __INTPTR_WIDTH__ 32
   4997 // TCE:#define __INT_FAST16_MAX__ 32767
   4998 // TCE:#define __INT_FAST16_TYPE__ short
   4999 // TCE:#define __INT_FAST32_MAX__ 2147483647
   5000 // TCE:#define __INT_FAST32_TYPE__ int
   5001 // TCE:#define __INT_FAST8_MAX__ 127
   5002 // TCE:#define __INT_FAST8_TYPE__ char
   5003 // TCE:#define __INT_LEAST16_MAX__ 32767
   5004 // TCE:#define __INT_LEAST16_TYPE__ short
   5005 // TCE:#define __INT_LEAST32_MAX__ 2147483647
   5006 // TCE:#define __INT_LEAST32_TYPE__ int
   5007 // TCE:#define __INT_LEAST8_MAX__ 127
   5008 // TCE:#define __INT_LEAST8_TYPE__ char
   5009 // TCE:#define __INT_MAX__ 2147483647
   5010 // TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
   5011 // TCE:#define __LDBL_DIG__ 6
   5012 // TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
   5013 // TCE:#define __LDBL_HAS_DENORM__ 1
   5014 // TCE:#define __LDBL_HAS_INFINITY__ 1
   5015 // TCE:#define __LDBL_HAS_QUIET_NAN__ 1
   5016 // TCE:#define __LDBL_MANT_DIG__ 24
   5017 // TCE:#define __LDBL_MAX_10_EXP__ 38
   5018 // TCE:#define __LDBL_MAX_EXP__ 128
   5019 // TCE:#define __LDBL_MAX__ 3.40282347e+38L
   5020 // TCE:#define __LDBL_MIN_10_EXP__ (-37)
   5021 // TCE:#define __LDBL_MIN_EXP__ (-125)
   5022 // TCE:#define __LDBL_MIN__ 1.17549435e-38L
   5023 // TCE:#define __LONG_LONG_MAX__ 2147483647LL
   5024 // TCE:#define __LONG_MAX__ 2147483647L
   5025 // TCE-NOT:#define __LP64__
   5026 // TCE:#define __POINTER_WIDTH__ 32
   5027 // TCE:#define __PTRDIFF_TYPE__ int
   5028 // TCE:#define __PTRDIFF_WIDTH__ 32
   5029 // TCE:#define __SCHAR_MAX__ 127
   5030 // TCE:#define __SHRT_MAX__ 32767
   5031 // TCE:#define __SIG_ATOMIC_WIDTH__ 32
   5032 // TCE:#define __SIZEOF_DOUBLE__ 4
   5033 // TCE:#define __SIZEOF_FLOAT__ 4
   5034 // TCE:#define __SIZEOF_INT__ 4
   5035 // TCE:#define __SIZEOF_LONG_DOUBLE__ 4
   5036 // TCE:#define __SIZEOF_LONG_LONG__ 4
   5037 // TCE:#define __SIZEOF_LONG__ 4
   5038 // TCE:#define __SIZEOF_POINTER__ 4
   5039 // TCE:#define __SIZEOF_PTRDIFF_T__ 4
   5040 // TCE:#define __SIZEOF_SHORT__ 2
   5041 // TCE:#define __SIZEOF_SIZE_T__ 4
   5042 // TCE:#define __SIZEOF_WCHAR_T__ 4
   5043 // TCE:#define __SIZEOF_WINT_T__ 4
   5044 // TCE:#define __SIZE_MAX__ 4294967295U
   5045 // TCE:#define __SIZE_TYPE__ unsigned int
   5046 // TCE:#define __SIZE_WIDTH__ 32
   5047 // TCE:#define __TCE_V1__ 1
   5048 // TCE:#define __TCE__ 1
   5049 // TCE:#define __UINT16_C_SUFFIX__ U
   5050 // TCE:#define __UINT16_MAX__ 65535U
   5051 // TCE:#define __UINT16_TYPE__ unsigned short
   5052 // TCE:#define __UINT32_C_SUFFIX__ U
   5053 // TCE:#define __UINT32_MAX__ 4294967295U
   5054 // TCE:#define __UINT32_TYPE__ unsigned int
   5055 // TCE:#define __UINT8_C_SUFFIX__ U
   5056 // TCE:#define __UINT8_MAX__ 255U
   5057 // TCE:#define __UINT8_TYPE__ unsigned char
   5058 // TCE:#define __UINTMAX_MAX__ 4294967295UL
   5059 // TCE:#define __UINTMAX_TYPE__ long unsigned int
   5060 // TCE:#define __UINTMAX_WIDTH__ 32
   5061 // TCE:#define __UINTPTR_MAX__ 4294967295U
   5062 // TCE:#define __UINTPTR_TYPE__ unsigned int
   5063 // TCE:#define __UINTPTR_WIDTH__ 32
   5064 // TCE:#define __UINT_FAST16_MAX__ 65535U
   5065 // TCE:#define __UINT_FAST16_TYPE__ unsigned short
   5066 // TCE:#define __UINT_FAST32_MAX__ 4294967295U
   5067 // TCE:#define __UINT_FAST32_TYPE__ unsigned int
   5068 // TCE:#define __UINT_FAST8_MAX__ 255U
   5069 // TCE:#define __UINT_FAST8_TYPE__ unsigned char
   5070 // TCE:#define __UINT_LEAST16_MAX__ 65535U
   5071 // TCE:#define __UINT_LEAST16_TYPE__ unsigned short
   5072 // TCE:#define __UINT_LEAST32_MAX__ 4294967295U
   5073 // TCE:#define __UINT_LEAST32_TYPE__ unsigned int
   5074 // TCE:#define __UINT_LEAST8_MAX__ 255U
   5075 // TCE:#define __UINT_LEAST8_TYPE__ unsigned char
   5076 // TCE:#define __USER_LABEL_PREFIX__ _
   5077 // TCE:#define __WCHAR_MAX__ 2147483647
   5078 // TCE:#define __WCHAR_TYPE__ int
   5079 // TCE:#define __WCHAR_WIDTH__ 32
   5080 // TCE:#define __WINT_TYPE__ int
   5081 // TCE:#define __WINT_WIDTH__ 32
   5082 // TCE:#define __tce 1
   5083 // TCE:#define __tce__ 1
   5084 // TCE:#define tce 1
   5085 //
   5086 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -check-prefix X86_64 %s
   5087 //
   5088 // X86_64:#define _LP64 1
   5089 // X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   5090 // X86_64:#define __CHAR16_TYPE__ unsigned short
   5091 // X86_64:#define __CHAR32_TYPE__ unsigned int
   5092 // X86_64:#define __CHAR_BIT__ 8
   5093 // X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   5094 // X86_64:#define __DBL_DIG__ 15
   5095 // X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
   5096 // X86_64:#define __DBL_HAS_DENORM__ 1
   5097 // X86_64:#define __DBL_HAS_INFINITY__ 1
   5098 // X86_64:#define __DBL_HAS_QUIET_NAN__ 1
   5099 // X86_64:#define __DBL_MANT_DIG__ 53
   5100 // X86_64:#define __DBL_MAX_10_EXP__ 308
   5101 // X86_64:#define __DBL_MAX_EXP__ 1024
   5102 // X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
   5103 // X86_64:#define __DBL_MIN_10_EXP__ (-307)
   5104 // X86_64:#define __DBL_MIN_EXP__ (-1021)
   5105 // X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
   5106 // X86_64:#define __DECIMAL_DIG__ 21
   5107 // X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   5108 // X86_64:#define __FLT_DIG__ 6
   5109 // X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
   5110 // X86_64:#define __FLT_EVAL_METHOD__ 0
   5111 // X86_64:#define __FLT_HAS_DENORM__ 1
   5112 // X86_64:#define __FLT_HAS_INFINITY__ 1
   5113 // X86_64:#define __FLT_HAS_QUIET_NAN__ 1
   5114 // X86_64:#define __FLT_MANT_DIG__ 24
   5115 // X86_64:#define __FLT_MAX_10_EXP__ 38
   5116 // X86_64:#define __FLT_MAX_EXP__ 128
   5117 // X86_64:#define __FLT_MAX__ 3.40282347e+38F
   5118 // X86_64:#define __FLT_MIN_10_EXP__ (-37)
   5119 // X86_64:#define __FLT_MIN_EXP__ (-125)
   5120 // X86_64:#define __FLT_MIN__ 1.17549435e-38F
   5121 // X86_64:#define __FLT_RADIX__ 2
   5122 // X86_64:#define __INT16_MAX__ 32767
   5123 // X86_64:#define __INT16_TYPE__ short
   5124 // X86_64:#define __INT32_MAX__ 2147483647
   5125 // X86_64:#define __INT32_TYPE__ int
   5126 // X86_64:#define __INT64_C_SUFFIX__ L
   5127 // X86_64:#define __INT64_MAX__ 9223372036854775807L
   5128 // X86_64:#define __INT64_TYPE__ long int
   5129 // X86_64:#define __INT8_MAX__ 127
   5130 // X86_64:#define __INT8_TYPE__ char
   5131 // X86_64:#define __INTMAX_MAX__ 9223372036854775807L
   5132 // X86_64:#define __INTMAX_TYPE__ long int
   5133 // X86_64:#define __INTMAX_WIDTH__ 64
   5134 // X86_64:#define __INTPTR_MAX__ 9223372036854775807L
   5135 // X86_64:#define __INTPTR_TYPE__ long int
   5136 // X86_64:#define __INTPTR_WIDTH__ 64
   5137 // X86_64:#define __INT_FAST16_MAX__ 32767
   5138 // X86_64:#define __INT_FAST16_TYPE__ short
   5139 // X86_64:#define __INT_FAST32_MAX__ 2147483647
   5140 // X86_64:#define __INT_FAST32_TYPE__ int
   5141 // X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
   5142 // X86_64:#define __INT_FAST64_TYPE__ long int
   5143 // X86_64:#define __INT_FAST8_MAX__ 127
   5144 // X86_64:#define __INT_FAST8_TYPE__ char
   5145 // X86_64:#define __INT_LEAST16_MAX__ 32767
   5146 // X86_64:#define __INT_LEAST16_TYPE__ short
   5147 // X86_64:#define __INT_LEAST32_MAX__ 2147483647
   5148 // X86_64:#define __INT_LEAST32_TYPE__ int
   5149 // X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
   5150 // X86_64:#define __INT_LEAST64_TYPE__ long int
   5151 // X86_64:#define __INT_LEAST8_MAX__ 127
   5152 // X86_64:#define __INT_LEAST8_TYPE__ char
   5153 // X86_64:#define __INT_MAX__ 2147483647
   5154 // X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
   5155 // X86_64:#define __LDBL_DIG__ 18
   5156 // X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
   5157 // X86_64:#define __LDBL_HAS_DENORM__ 1
   5158 // X86_64:#define __LDBL_HAS_INFINITY__ 1
   5159 // X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
   5160 // X86_64:#define __LDBL_MANT_DIG__ 64
   5161 // X86_64:#define __LDBL_MAX_10_EXP__ 4932
   5162 // X86_64:#define __LDBL_MAX_EXP__ 16384
   5163 // X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
   5164 // X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
   5165 // X86_64:#define __LDBL_MIN_EXP__ (-16381)
   5166 // X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
   5167 // X86_64:#define __LITTLE_ENDIAN__ 1
   5168 // X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
   5169 // X86_64:#define __LONG_MAX__ 9223372036854775807L
   5170 // X86_64:#define __LP64__ 1
   5171 // X86_64:#define __MMX__ 1
   5172 // X86_64:#define __NO_MATH_INLINES 1
   5173 // X86_64:#define __POINTER_WIDTH__ 64
   5174 // X86_64:#define __PTRDIFF_TYPE__ long int
   5175 // X86_64:#define __PTRDIFF_WIDTH__ 64
   5176 // X86_64:#define __REGISTER_PREFIX__
   5177 // X86_64:#define __SCHAR_MAX__ 127
   5178 // X86_64:#define __SHRT_MAX__ 32767
   5179 // X86_64:#define __SIG_ATOMIC_WIDTH__ 32
   5180 // X86_64:#define __SIZEOF_DOUBLE__ 8
   5181 // X86_64:#define __SIZEOF_FLOAT__ 4
   5182 // X86_64:#define __SIZEOF_INT__ 4
   5183 // X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
   5184 // X86_64:#define __SIZEOF_LONG_LONG__ 8
   5185 // X86_64:#define __SIZEOF_LONG__ 8
   5186 // X86_64:#define __SIZEOF_POINTER__ 8
   5187 // X86_64:#define __SIZEOF_PTRDIFF_T__ 8
   5188 // X86_64:#define __SIZEOF_SHORT__ 2
   5189 // X86_64:#define __SIZEOF_SIZE_T__ 8
   5190 // X86_64:#define __SIZEOF_WCHAR_T__ 4
   5191 // X86_64:#define __SIZEOF_WINT_T__ 4
   5192 // X86_64:#define __SIZE_MAX__ 18446744073709551615UL
   5193 // X86_64:#define __SIZE_TYPE__ long unsigned int
   5194 // X86_64:#define __SIZE_WIDTH__ 64
   5195 // X86_64:#define __SSE2_MATH__ 1
   5196 // X86_64:#define __SSE2__ 1
   5197 // X86_64:#define __SSE_MATH__ 1
   5198 // X86_64:#define __SSE__ 1
   5199 // X86_64:#define __UINT16_C_SUFFIX__ U
   5200 // X86_64:#define __UINT16_MAX__ 65535U
   5201 // X86_64:#define __UINT16_TYPE__ unsigned short
   5202 // X86_64:#define __UINT32_C_SUFFIX__ U
   5203 // X86_64:#define __UINT32_MAX__ 4294967295U
   5204 // X86_64:#define __UINT32_TYPE__ unsigned int
   5205 // X86_64:#define __UINT64_C_SUFFIX__ UL
   5206 // X86_64:#define __UINT64_MAX__ 18446744073709551615UL
   5207 // X86_64:#define __UINT64_TYPE__ long unsigned int
   5208 // X86_64:#define __UINT8_C_SUFFIX__ U
   5209 // X86_64:#define __UINT8_MAX__ 255U
   5210 // X86_64:#define __UINT8_TYPE__ unsigned char
   5211 // X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
   5212 // X86_64:#define __UINTMAX_TYPE__ long unsigned int
   5213 // X86_64:#define __UINTMAX_WIDTH__ 64
   5214 // X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
   5215 // X86_64:#define __UINTPTR_TYPE__ long unsigned int
   5216 // X86_64:#define __UINTPTR_WIDTH__ 64
   5217 // X86_64:#define __UINT_FAST16_MAX__ 65535U
   5218 // X86_64:#define __UINT_FAST16_TYPE__ unsigned short
   5219 // X86_64:#define __UINT_FAST32_MAX__ 4294967295U
   5220 // X86_64:#define __UINT_FAST32_TYPE__ unsigned int
   5221 // X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   5222 // X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
   5223 // X86_64:#define __UINT_FAST8_MAX__ 255U
   5224 // X86_64:#define __UINT_FAST8_TYPE__ unsigned char
   5225 // X86_64:#define __UINT_LEAST16_MAX__ 65535U
   5226 // X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
   5227 // X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
   5228 // X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
   5229 // X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   5230 // X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
   5231 // X86_64:#define __UINT_LEAST8_MAX__ 255U
   5232 // X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
   5233 // X86_64:#define __USER_LABEL_PREFIX__ _
   5234 // X86_64:#define __WCHAR_MAX__ 2147483647
   5235 // X86_64:#define __WCHAR_TYPE__ int
   5236 // X86_64:#define __WCHAR_WIDTH__ 32
   5237 // X86_64:#define __WINT_TYPE__ int
   5238 // X86_64:#define __WINT_WIDTH__ 32
   5239 // X86_64:#define __amd64 1
   5240 // X86_64:#define __amd64__ 1
   5241 // X86_64:#define __x86_64 1
   5242 // X86_64:#define __x86_64__ 1
   5243 //
   5244 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -check-prefix X86_64-LINUX %s
   5245 //
   5246 // X86_64-LINUX:#define _LP64 1
   5247 // X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   5248 // X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
   5249 // X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
   5250 // X86_64-LINUX:#define __CHAR_BIT__ 8
   5251 // X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   5252 // X86_64-LINUX:#define __DBL_DIG__ 15
   5253 // X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
   5254 // X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
   5255 // X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
   5256 // X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
   5257 // X86_64-LINUX:#define __DBL_MANT_DIG__ 53
   5258 // X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
   5259 // X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
   5260 // X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
   5261 // X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
   5262 // X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
   5263 // X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
   5264 // X86_64-LINUX:#define __DECIMAL_DIG__ 21
   5265 // X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   5266 // X86_64-LINUX:#define __FLT_DIG__ 6
   5267 // X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
   5268 // X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
   5269 // X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
   5270 // X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
   5271 // X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
   5272 // X86_64-LINUX:#define __FLT_MANT_DIG__ 24
   5273 // X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
   5274 // X86_64-LINUX:#define __FLT_MAX_EXP__ 128
   5275 // X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
   5276 // X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
   5277 // X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
   5278 // X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
   5279 // X86_64-LINUX:#define __FLT_RADIX__ 2
   5280 // X86_64-LINUX:#define __INT16_MAX__ 32767
   5281 // X86_64-LINUX:#define __INT16_TYPE__ short
   5282 // X86_64-LINUX:#define __INT32_MAX__ 2147483647
   5283 // X86_64-LINUX:#define __INT32_TYPE__ int
   5284 // X86_64-LINUX:#define __INT64_C_SUFFIX__ L
   5285 // X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
   5286 // X86_64-LINUX:#define __INT64_TYPE__ long int
   5287 // X86_64-LINUX:#define __INT8_MAX__ 127
   5288 // X86_64-LINUX:#define __INT8_TYPE__ char
   5289 // X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
   5290 // X86_64-LINUX:#define __INTMAX_TYPE__ long int
   5291 // X86_64-LINUX:#define __INTMAX_WIDTH__ 64
   5292 // X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
   5293 // X86_64-LINUX:#define __INTPTR_TYPE__ long int
   5294 // X86_64-LINUX:#define __INTPTR_WIDTH__ 64
   5295 // X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
   5296 // X86_64-LINUX:#define __INT_FAST16_TYPE__ short
   5297 // X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
   5298 // X86_64-LINUX:#define __INT_FAST32_TYPE__ int
   5299 // X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
   5300 // X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
   5301 // X86_64-LINUX:#define __INT_FAST8_MAX__ 127
   5302 // X86_64-LINUX:#define __INT_FAST8_TYPE__ char
   5303 // X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
   5304 // X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
   5305 // X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
   5306 // X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
   5307 // X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
   5308 // X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
   5309 // X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
   5310 // X86_64-LINUX:#define __INT_LEAST8_TYPE__ char
   5311 // X86_64-LINUX:#define __INT_MAX__ 2147483647
   5312 // X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
   5313 // X86_64-LINUX:#define __LDBL_DIG__ 18
   5314 // X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
   5315 // X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
   5316 // X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
   5317 // X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
   5318 // X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
   5319 // X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
   5320 // X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
   5321 // X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
   5322 // X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
   5323 // X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
   5324 // X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
   5325 // X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
   5326 // X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
   5327 // X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
   5328 // X86_64-LINUX:#define __LP64__ 1
   5329 // X86_64-LINUX:#define __MMX__ 1
   5330 // X86_64-LINUX:#define __NO_MATH_INLINES 1
   5331 // X86_64-LINUX:#define __POINTER_WIDTH__ 64
   5332 // X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
   5333 // X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
   5334 // X86_64-LINUX:#define __REGISTER_PREFIX__
   5335 // X86_64-LINUX:#define __SCHAR_MAX__ 127
   5336 // X86_64-LINUX:#define __SHRT_MAX__ 32767
   5337 // X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
   5338 // X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
   5339 // X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
   5340 // X86_64-LINUX:#define __SIZEOF_INT__ 4
   5341 // X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
   5342 // X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
   5343 // X86_64-LINUX:#define __SIZEOF_LONG__ 8
   5344 // X86_64-LINUX:#define __SIZEOF_POINTER__ 8
   5345 // X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
   5346 // X86_64-LINUX:#define __SIZEOF_SHORT__ 2
   5347 // X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
   5348 // X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
   5349 // X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
   5350 // X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
   5351 // X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
   5352 // X86_64-LINUX:#define __SIZE_WIDTH__ 64
   5353 // X86_64-LINUX:#define __SSE2_MATH__ 1
   5354 // X86_64-LINUX:#define __SSE2__ 1
   5355 // X86_64-LINUX:#define __SSE_MATH__ 1
   5356 // X86_64-LINUX:#define __SSE__ 1
   5357 // X86_64-LINUX:#define __UINT16_C_SUFFIX__ U
   5358 // X86_64-LINUX:#define __UINT16_MAX__ 65535U
   5359 // X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
   5360 // X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
   5361 // X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
   5362 // X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
   5363 // X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
   5364 // X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
   5365 // X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
   5366 // X86_64-LINUX:#define __UINT8_C_SUFFIX__ U
   5367 // X86_64-LINUX:#define __UINT8_MAX__ 255U
   5368 // X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
   5369 // X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
   5370 // X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
   5371 // X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
   5372 // X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
   5373 // X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
   5374 // X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
   5375 // X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535U
   5376 // X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
   5377 // X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
   5378 // X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
   5379 // X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   5380 // X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
   5381 // X86_64-LINUX:#define __UINT_FAST8_MAX__ 255U
   5382 // X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
   5383 // X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535U
   5384 // X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
   5385 // X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
   5386 // X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
   5387 // X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   5388 // X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
   5389 // X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255U
   5390 // X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
   5391 // X86_64-LINUX:#define __USER_LABEL_PREFIX__
   5392 // X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
   5393 // X86_64-LINUX:#define __WCHAR_TYPE__ int
   5394 // X86_64-LINUX:#define __WCHAR_WIDTH__ 32
   5395 // X86_64-LINUX:#define __WINT_TYPE__ unsigned int
   5396 // X86_64-LINUX:#define __WINT_WIDTH__ 32
   5397 // X86_64-LINUX:#define __amd64 1
   5398 // X86_64-LINUX:#define __amd64__ 1
   5399 // X86_64-LINUX:#define __x86_64 1
   5400 // X86_64-LINUX:#define __x86_64__ 1
   5401 //
   5402 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-unknown-freebsd9.1 < /dev/null | FileCheck -check-prefix X86_64-FREEBSD %s
   5403 //
   5404 // X86_64-FREEBSD:#define __FreeBSD__ 9
   5405 // X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
   5406 // X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
   5407 //
   5408 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-netbsd < /dev/null | FileCheck -check-prefix X86_64-NETBSD %s
   5409 //
   5410 // X86_64-NETBSD:#define _LP64 1
   5411 // X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   5412 // X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
   5413 // X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
   5414 // X86_64-NETBSD:#define __CHAR_BIT__ 8
   5415 // X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
   5416 // X86_64-NETBSD:#define __DBL_DIG__ 15
   5417 // X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
   5418 // X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
   5419 // X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
   5420 // X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
   5421 // X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
   5422 // X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
   5423 // X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
   5424 // X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
   5425 // X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
   5426 // X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
   5427 // X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
   5428 // X86_64-NETBSD:#define __DECIMAL_DIG__ 21
   5429 // X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
   5430 // X86_64-NETBSD:#define __FLT_DIG__ 6
   5431 // X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
   5432 // X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
   5433 // X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
   5434 // X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
   5435 // X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
   5436 // X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
   5437 // X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
   5438 // X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
   5439 // X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
   5440 // X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
   5441 // X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
   5442 // X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
   5443 // X86_64-NETBSD:#define __FLT_RADIX__ 2
   5444 // X86_64-NETBSD:#define __INT16_MAX__ 32767
   5445 // X86_64-NETBSD:#define __INT16_TYPE__ short
   5446 // X86_64-NETBSD:#define __INT32_MAX__ 2147483647
   5447 // X86_64-NETBSD:#define __INT32_TYPE__ int
   5448 // X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
   5449 // X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
   5450 // X86_64-NETBSD:#define __INT64_TYPE__ long int
   5451 // X86_64-NETBSD:#define __INT8_MAX__ 127
   5452 // X86_64-NETBSD:#define __INT8_TYPE__ char
   5453 // X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
   5454 // X86_64-NETBSD:#define __INTMAX_TYPE__ long int
   5455 // X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
   5456 // X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
   5457 // X86_64-NETBSD:#define __INTPTR_TYPE__ long int
   5458 // X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
   5459 // X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
   5460 // X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
   5461 // X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
   5462 // X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
   5463 // X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
   5464 // X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
   5465 // X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
   5466 // X86_64-NETBSD:#define __INT_FAST8_TYPE__ char
   5467 // X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
   5468 // X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
   5469 // X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
   5470 // X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
   5471 // X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
   5472 // X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
   5473 // X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
   5474 // X86_64-NETBSD:#define __INT_LEAST8_TYPE__ char
   5475 // X86_64-NETBSD:#define __INT_MAX__ 2147483647
   5476 // X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
   5477 // X86_64-NETBSD:#define __LDBL_DIG__ 18
   5478 // X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
   5479 // X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
   5480 // X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
   5481 // X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
   5482 // X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
   5483 // X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
   5484 // X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
   5485 // X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
   5486 // X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
   5487 // X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
   5488 // X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
   5489 // X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
   5490 // X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
   5491 // X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
   5492 // X86_64-NETBSD:#define __LP64__ 1
   5493 // X86_64-NETBSD:#define __MMX__ 1
   5494 // X86_64-NETBSD:#define __NO_MATH_INLINES 1
   5495 // X86_64-NETBSD:#define __POINTER_WIDTH__ 64
   5496 // X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
   5497 // X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
   5498 // X86_64-NETBSD:#define __REGISTER_PREFIX__
   5499 // X86_64-NETBSD:#define __SCHAR_MAX__ 127
   5500 // X86_64-NETBSD:#define __SHRT_MAX__ 32767
   5501 // X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
   5502 // X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
   5503 // X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
   5504 // X86_64-NETBSD:#define __SIZEOF_INT__ 4
   5505 // X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
   5506 // X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
   5507 // X86_64-NETBSD:#define __SIZEOF_LONG__ 8
   5508 // X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
   5509 // X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
   5510 // X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
   5511 // X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
   5512 // X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
   5513 // X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
   5514 // X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
   5515 // X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
   5516 // X86_64-NETBSD:#define __SIZE_WIDTH__ 64
   5517 // X86_64-NETBSD:#define __SSE2_MATH__ 1
   5518 // X86_64-NETBSD:#define __SSE2__ 1
   5519 // X86_64-NETBSD:#define __SSE_MATH__ 1
   5520 // X86_64-NETBSD:#define __SSE__ 1
   5521 // X86_64-NETBSD:#define __UINT16_C_SUFFIX__ U
   5522 // X86_64-NETBSD:#define __UINT16_MAX__ 65535U
   5523 // X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
   5524 // X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
   5525 // X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
   5526 // X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
   5527 // X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
   5528 // X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
   5529 // X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
   5530 // X86_64-NETBSD:#define __UINT8_C_SUFFIX__ U
   5531 // X86_64-NETBSD:#define __UINT8_MAX__ 255U
   5532 // X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
   5533 // X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
   5534 // X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
   5535 // X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
   5536 // X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
   5537 // X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
   5538 // X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
   5539 // X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535U
   5540 // X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
   5541 // X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
   5542 // X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
   5543 // X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
   5544 // X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
   5545 // X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255U
   5546 // X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
   5547 // X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535U
   5548 // X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
   5549 // X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
   5550 // X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
   5551 // X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
   5552 // X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
   5553 // X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255U
   5554 // X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
   5555 // X86_64-NETBSD:#define __USER_LABEL_PREFIX__
   5556 // X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
   5557 // X86_64-NETBSD:#define __WCHAR_TYPE__ int
   5558 // X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
   5559 // X86_64-NETBSD:#define __WINT_TYPE__ int
   5560 // X86_64-NETBSD:#define __WINT_WIDTH__ 32
   5561 // X86_64-NETBSD:#define __amd64 1
   5562 // X86_64-NETBSD:#define __amd64__ 1
   5563 // X86_64-NETBSD:#define __x86_64 1
   5564 // X86_64-NETBSD:#define __x86_64__ 1
   5565 //
   5566 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-none < /dev/null | FileCheck -check-prefix SPARCV9 %s
   5567 // SPARCV9:#define __INT64_TYPE__ long int
   5568 // SPARCV9:#define __INTMAX_TYPE__ long int
   5569 // SPARCV9:#define __INTPTR_TYPE__ long int
   5570 // SPARCV9:#define __LONG_MAX__ 9223372036854775807L
   5571 // SPARCV9:#define __LP64__ 1
   5572 // SPARCV9:#define __SIZEOF_LONG__ 8
   5573 // SPARCV9:#define __SIZEOF_POINTER__ 8
   5574 //
   5575 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-openbsd < /dev/null | FileCheck -check-prefix SPARC64-OBSD %s
   5576 // SPARC64-OBSD:#define __INT64_TYPE__ long long int
   5577 // SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
   5578 // SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
   5579 //
   5580 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-kfreebsd-gnu < /dev/null | FileCheck -check-prefix KFREEBSD-DEFINE %s
   5581 // KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
   5582 // KFREEBSD-DEFINE:#define __GLIBC__ 1
   5583 //
   5584 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i686-pc-kfreebsd-gnu < /dev/null | FileCheck -check-prefix KFREEBSDI686-DEFINE %s
   5585 // KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
   5586 // KFREEBSDI686-DEFINE:#define __GLIBC__ 1
   5587 //
   5588 // RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -check-prefix GNUSOURCE %s
   5589 // GNUSOURCE:#define _GNU_SOURCE 1
   5590 //
   5591 // RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -check-prefix NORTTI %s
   5592 // NORTTI: __GXX_ABI_VERSION
   5593 // NORTTI-NOT:#define __GXX_RTTI
   5594 // NORTTI: __STDC__
   5595 //
   5596 // RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -check-prefix ANDROID %s
   5597 // ANDROID: __ANDROID__ 1
   5598 //
   5599 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-freebsd < /dev/null | FileCheck -check-prefix PPC64-FREEBSD %s
   5600 // PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
   5601 //
   5602 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=xcore-none-none < /dev/null | FileCheck -check-prefix XCORE %s
   5603 // XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
   5604 // XCORE:#define __LITTLE_ENDIAN__ 1
   5605 // XCORE:#define __XS1B__ 1
   5606