1 // RUN: %clang_cc1 -E -dM -x assembler-with-cpp < /dev/null | FileCheck -match-full-lines -check-prefix ASM %s
3 // ASM:#define __ASSEMBLER__ 1
6 // RUN: %clang_cc1 -fblocks -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix BLOCKS %s
8 // BLOCKS:#define __BLOCKS__ 1
9 // BLOCKS:#define __block __attribute__((__blocks__(byref)))
12 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++2b -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX2B %s
14 // CXX2B:#define __GNUG__ 4
15 // CXX2B:#define __GXX_EXPERIMENTAL_CXX0X__ 1
16 // CXX2B:#define __GXX_RTTI 1
17 // CXX2B:#define __GXX_WEAK__ 1
18 // CXX2B:#define __cplusplus 202101L
19 // CXX2B:#define __private_extern__ extern
21 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX2A %s
22 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++2a -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX2A %s
24 // CXX2A:#define __GNUG__ 4
25 // CXX2A:#define __GXX_EXPERIMENTAL_CXX0X__ 1
26 // CXX2A:#define __GXX_RTTI 1
27 // CXX2A:#define __GXX_WEAK__ 1
28 // CXX2A:#define __cplusplus 202002L
29 // CXX2A:#define __private_extern__ extern
31 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++17 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Z %s
32 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++1z -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Z %s
34 // CXX1Z:#define __GNUG__ 4
35 // CXX1Z:#define __GXX_EXPERIMENTAL_CXX0X__ 1
36 // CXX1Z:#define __GXX_RTTI 1
37 // CXX1Z:#define __GXX_WEAK__ 1
38 // CXX1Z:#define __cplusplus 201703L
39 // CXX1Z:#define __private_extern__ extern
42 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++14 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Y %s
43 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++1y -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Y %s
45 // CXX1Y:#define __GNUG__ 4
46 // CXX1Y:#define __GXX_EXPERIMENTAL_CXX0X__ 1
47 // CXX1Y:#define __GXX_RTTI 1
48 // CXX1Y:#define __GXX_WEAK__ 1
49 // CXX1Y:#define __cplusplus 201402L
50 // CXX1Y:#define __private_extern__ extern
53 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX11 %s
55 // CXX11:#define __GNUG__ 4
56 // CXX11:#define __GXX_EXPERIMENTAL_CXX0X__ 1
57 // CXX11:#define __GXX_RTTI 1
58 // CXX11:#define __GXX_WEAK__ 1
59 // CXX11:#define __cplusplus 201103L
60 // CXX11:#define __private_extern__ extern
63 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++98 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX98 %s
65 // CXX98:#define __GNUG__ 4
66 // CXX98:#define __GXX_RTTI 1
67 // CXX98:#define __GXX_WEAK__ 1
68 // CXX98:#define __cplusplus 199711L
69 // CXX98:#define __private_extern__ extern
72 // RUN: %clang_cc1 -fdeprecated-macro -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix DEPRECATED %s
74 // DEPRECATED:#define __DEPRECATED 1
77 // RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C99 %s
79 // C99:#define __STDC_VERSION__ 199901L
80 // C99:#define __STRICT_ANSI__ 1
81 // C99-NOT: __GXX_EXPERIMENTAL_CXX0X__
82 // C99-NOT: __GXX_RTTI
83 // C99-NOT: __GXX_WEAK__
84 // C99-NOT: __cplusplus
87 // RUN: %clang_cc1 -std=c11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
88 // RUN: %clang_cc1 -std=c1x -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
89 // RUN: %clang_cc1 -std=iso9899:2011 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
90 // RUN: %clang_cc1 -std=iso9899:201x -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
92 // C11:#define __STDC_UTF_16__ 1
93 // C11:#define __STDC_UTF_32__ 1
94 // C11:#define __STDC_VERSION__ 201112L
95 // C11:#define __STRICT_ANSI__ 1
96 // C11-NOT: __GXX_EXPERIMENTAL_CXX0X__
97 // C11-NOT: __GXX_RTTI
98 // C11-NOT: __GXX_WEAK__
99 // C11-NOT: __cplusplus
102 // RUN: %clang_cc1 -fgnuc-version=4.2.1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix COMMON %s
104 // COMMON:#define __CONSTANT_CFSTRINGS__ 1
105 // COMMON:#define __FINITE_MATH_ONLY__ 0
106 // COMMON:#define __GNUC_MINOR__ {{.*}}
107 // COMMON:#define __GNUC_PATCHLEVEL__ {{.*}}
108 // COMMON:#define __GNUC_STDC_INLINE__ 1
109 // COMMON:#define __GNUC__ {{.*}}
110 // COMMON:#define __GXX_ABI_VERSION {{.*}}
111 // COMMON:#define __ORDER_BIG_ENDIAN__ 4321
112 // COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234
113 // COMMON:#define __ORDER_PDP_ENDIAN__ 3412
114 // COMMON:#define __STDC_HOSTED__ 1
115 // COMMON:#define __STDC__ 1
116 // COMMON:#define __VERSION__ {{.*}}
117 // COMMON:#define __clang__ 1
118 // COMMON:#define __clang_literal_encoding__ {{.*}}
119 // COMMON:#define __clang_major__ {{[0-9]+}}
120 // COMMON:#define __clang_minor__ {{[0-9]+}}
121 // COMMON:#define __clang_patchlevel__ {{[0-9]+}}
122 // COMMON:#define __clang_version__ {{.*}}
123 // COMMON:#define __clang_wide_literal_encoding__ {{.*}}
124 // COMMON:#define __llvm__ 1
126 // RUN: %clang_cc1 -E -dM -triple=x86_64-pc-win32 < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
127 // RUN: %clang_cc1 -E -dM -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
128 // RUN: %clang_cc1 -E -dM -triple=x86_64-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
129 // RUN: %clang_cc1 -E -dM -triple=armv7a-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
131 // C-DEFAULT:#define __STDC_VERSION__ 201710L
133 // RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix FREESTANDING %s
134 // FREESTANDING:#define __STDC_HOSTED__ 0
136 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++2b -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX2B %s
138 // GXX2B:#define __GNUG__ 4
139 // GXX2B:#define __GXX_WEAK__ 1
140 // GXX2B:#define __cplusplus 202101L
141 // GXX2B:#define __private_extern__ extern
143 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX2A %s
144 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++2a -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX2A %s
146 // GXX2A:#define __GNUG__ 4
147 // GXX2A:#define __GXX_WEAK__ 1
148 // GXX2A:#define __cplusplus 202002L
149 // GXX2A:#define __private_extern__ extern
152 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++17 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX1Z %s
153 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++1z -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX1Z %s
155 // GXX1Z:#define __GNUG__ 4
156 // GXX1Z:#define __GXX_WEAK__ 1
157 // GXX1Z:#define __cplusplus 201703L
158 // GXX1Z:#define __private_extern__ extern
161 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++14 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX1Y %s
162 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++1y -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX1Y %s
164 // GXX1Y:#define __GNUG__ 4
165 // GXX1Y:#define __GXX_WEAK__ 1
166 // GXX1Y:#define __cplusplus 201402L
167 // GXX1Y:#define __private_extern__ extern
170 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX11 %s
172 // GXX11:#define __GNUG__ 4
173 // GXX11:#define __GXX_WEAK__ 1
174 // GXX11:#define __cplusplus 201103L
175 // GXX11:#define __private_extern__ extern
178 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=gnu++98 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX98 %s
180 // GXX98:#define __GNUG__ 4
181 // GXX98:#define __GXX_WEAK__ 1
182 // GXX98:#define __cplusplus 199711L
183 // GXX98:#define __private_extern__ extern
186 // RUN: %clang_cc1 -std=iso9899:199409 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C94 %s
188 // C94:#define __STDC_VERSION__ 199409L
191 // RUN: %clang_cc1 -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix MSEXT %s
193 // MSEXT-NOT:#define __STDC__
194 // MSEXT:#define _INTEGRAL_MAX_BITS 64
195 // MSEXT-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
196 // MSEXT-NOT:#define _WCHAR_T_DEFINED 1
197 // MSEXT:#define _MSVC_EXECUTION_CHARACTER_SET 65001
198 // MSEXT:#define __STDC_NO_THREADS__ 1
201 // RUN: %clang_cc1 -x c++ -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix MSEXT-CXX %s
203 // MSEXT-CXX:#define _NATIVE_WCHAR_T_DEFINED 1
204 // MSEXT-CXX:#define _WCHAR_T_DEFINED 1
205 // MSEXT-CXX:#define __BOOL_DEFINED 1
208 // RUN: %clang_cc1 -x c++ -fno-wchar -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix MSEXT-CXX-NOWCHAR %s
210 // MSEXT-CXX-NOWCHAR-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
211 // MSEXT-CXX-NOWCHAR-NOT:#define _WCHAR_T_DEFINED 1
212 // MSEXT-CXX-NOWCHAR:#define __BOOL_DEFINED 1
215 // RUN: %clang_cc1 -x objective-c -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix OBJC %s
216 // RUN: %clang_cc1 -x objective-c++ -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix OBJC %s
218 // OBJC:#define OBJC_NEW_PROPERTIES 1
219 // OBJC:#define __NEXT_RUNTIME__ 1
220 // OBJC:#define __OBJC__ 1
223 // RUN: %clang_cc1 -x objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix OBJCGC %s
225 // OBJCGC:#define __OBJC_GC__ 1
228 // RUN: %clang_cc1 -x objective-c -fobjc-exceptions -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NONFRAGILE %s
230 // NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
231 // NONFRAGILE:#define __OBJC2__ 1
234 // RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O0 %s
236 // O0:#define __NO_INLINE__ 1
237 // O0-NOT:#define __OPTIMIZE_SIZE__
238 // O0-NOT:#define __OPTIMIZE__
241 // RUN: %clang_cc1 -fno-inline -O3 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NO_INLINE %s
243 // NO_INLINE:#define __NO_INLINE__ 1
244 // NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
245 // NO_INLINE:#define __OPTIMIZE__ 1
248 // RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O1 %s
250 // O1-NOT:#define __OPTIMIZE_SIZE__
251 // O1:#define __OPTIMIZE__ 1
254 // RUN: %clang_cc1 -Og -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Og %s
256 // Og-NOT:#define __OPTIMIZE_SIZE__
257 // Og:#define __OPTIMIZE__ 1
260 // RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Os %s
262 // Os:#define __OPTIMIZE_SIZE__ 1
263 // Os:#define __OPTIMIZE__ 1
266 // RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Oz %s
268 // Oz:#define __OPTIMIZE_SIZE__ 1
269 // Oz:#define __OPTIMIZE__ 1
272 // RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix PASCAL %s
274 // PASCAL:#define __PASCAL_STRINGS__ 1
277 // RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix SCHAR %s
279 // SCHAR:#define __STDC__ 1
280 // SCHAR-NOT:#define __UNSIGNED_CHAR__
281 // SCHAR:#define __clang__ 1
283 // RUN: %clang_cc1 -E -dM -fwchar-type=short -fno-signed-wchar < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
284 // wchar_t is u16 for targeting Win32.
285 // RUN: %clang_cc1 -E -dM -fwchar-type=short -fno-signed-wchar -triple=x86_64-w64-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
286 // RUN: %clang_cc1 -dM -fwchar-type=short -fno-signed-wchar -triple=x86_64-unknown-windows-cygnus -E /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
288 // SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
289 // SHORTWCHAR: #define __WCHAR_MAX__ 65535
290 // SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
291 // SHORTWCHAR: #define __WCHAR_WIDTH__ 16
293 // RUN: %clang_cc1 -E -dM -fwchar-type=int -triple=i686-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
294 // RUN: %clang_cc1 -E -dM -fwchar-type=int -triple=x86_64-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
296 // SHORTWCHAR2: #define __SIZEOF_WCHAR_T__ 4
297 // SHORTWCHAR2: #define __WCHAR_WIDTH__ 32
298 // Other definitions vary from platform to platform
301 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MSP430 %s
302 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MSP430 -check-prefix MSP430-CXX %s
304 // MSP430:#define MSP430 1
305 // MSP430-NOT:#define _LP64
306 // MSP430:#define __BIGGEST_ALIGNMENT__ 2
307 // MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
308 // MSP430:#define __CHAR16_TYPE__ unsigned short
309 // MSP430:#define __CHAR32_TYPE__ unsigned int
310 // MSP430:#define __CHAR_BIT__ 8
311 // MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
312 // MSP430:#define __DBL_DIG__ 15
313 // MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
314 // MSP430:#define __DBL_HAS_DENORM__ 1
315 // MSP430:#define __DBL_HAS_INFINITY__ 1
316 // MSP430:#define __DBL_HAS_QUIET_NAN__ 1
317 // MSP430:#define __DBL_MANT_DIG__ 53
318 // MSP430:#define __DBL_MAX_10_EXP__ 308
319 // MSP430:#define __DBL_MAX_EXP__ 1024
320 // MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
321 // MSP430:#define __DBL_MIN_10_EXP__ (-307)
322 // MSP430:#define __DBL_MIN_EXP__ (-1021)
323 // MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
324 // MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
325 // MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
326 // MSP430:#define __FLT_DIG__ 6
327 // MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
328 // MSP430:#define __FLT_HAS_DENORM__ 1
329 // MSP430:#define __FLT_HAS_INFINITY__ 1
330 // MSP430:#define __FLT_HAS_QUIET_NAN__ 1
331 // MSP430:#define __FLT_MANT_DIG__ 24
332 // MSP430:#define __FLT_MAX_10_EXP__ 38
333 // MSP430:#define __FLT_MAX_EXP__ 128
334 // MSP430:#define __FLT_MAX__ 3.40282347e+38F
335 // MSP430:#define __FLT_MIN_10_EXP__ (-37)
336 // MSP430:#define __FLT_MIN_EXP__ (-125)
337 // MSP430:#define __FLT_MIN__ 1.17549435e-38F
338 // MSP430:#define __FLT_RADIX__ 2
339 // MSP430:#define __INT16_C_SUFFIX__
340 // MSP430:#define __INT16_FMTd__ "hd"
341 // MSP430:#define __INT16_FMTi__ "hi"
342 // MSP430:#define __INT16_MAX__ 32767
343 // MSP430:#define __INT16_TYPE__ short
344 // MSP430:#define __INT32_C_SUFFIX__ L
345 // MSP430:#define __INT32_FMTd__ "ld"
346 // MSP430:#define __INT32_FMTi__ "li"
347 // MSP430:#define __INT32_MAX__ 2147483647L
348 // MSP430:#define __INT32_TYPE__ long int
349 // MSP430:#define __INT64_C_SUFFIX__ LL
350 // MSP430:#define __INT64_FMTd__ "lld"
351 // MSP430:#define __INT64_FMTi__ "lli"
352 // MSP430:#define __INT64_MAX__ 9223372036854775807LL
353 // MSP430:#define __INT64_TYPE__ long long int
354 // MSP430:#define __INT8_C_SUFFIX__
355 // MSP430:#define __INT8_FMTd__ "hhd"
356 // MSP430:#define __INT8_FMTi__ "hhi"
357 // MSP430:#define __INT8_MAX__ 127
358 // MSP430:#define __INT8_TYPE__ signed char
359 // MSP430:#define __INTMAX_C_SUFFIX__ LL
360 // MSP430:#define __INTMAX_FMTd__ "lld"
361 // MSP430:#define __INTMAX_FMTi__ "lli"
362 // MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
363 // MSP430:#define __INTMAX_TYPE__ long long int
364 // MSP430:#define __INTMAX_WIDTH__ 64
365 // MSP430:#define __INTPTR_FMTd__ "d"
366 // MSP430:#define __INTPTR_FMTi__ "i"
367 // MSP430:#define __INTPTR_MAX__ 32767
368 // MSP430:#define __INTPTR_TYPE__ int
369 // MSP430:#define __INTPTR_WIDTH__ 16
370 // MSP430:#define __INT_FAST16_FMTd__ "hd"
371 // MSP430:#define __INT_FAST16_FMTi__ "hi"
372 // MSP430:#define __INT_FAST16_MAX__ 32767
373 // MSP430:#define __INT_FAST16_TYPE__ short
374 // MSP430:#define __INT_FAST32_FMTd__ "ld"
375 // MSP430:#define __INT_FAST32_FMTi__ "li"
376 // MSP430:#define __INT_FAST32_MAX__ 2147483647L
377 // MSP430:#define __INT_FAST32_TYPE__ long int
378 // MSP430:#define __INT_FAST64_FMTd__ "lld"
379 // MSP430:#define __INT_FAST64_FMTi__ "lli"
380 // MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
381 // MSP430:#define __INT_FAST64_TYPE__ long long int
382 // MSP430:#define __INT_FAST8_FMTd__ "hhd"
383 // MSP430:#define __INT_FAST8_FMTi__ "hhi"
384 // MSP430:#define __INT_FAST8_MAX__ 127
385 // MSP430:#define __INT_FAST8_TYPE__ signed char
386 // MSP430:#define __INT_LEAST16_FMTd__ "hd"
387 // MSP430:#define __INT_LEAST16_FMTi__ "hi"
388 // MSP430:#define __INT_LEAST16_MAX__ 32767
389 // MSP430:#define __INT_LEAST16_TYPE__ short
390 // MSP430:#define __INT_LEAST32_FMTd__ "ld"
391 // MSP430:#define __INT_LEAST32_FMTi__ "li"
392 // MSP430:#define __INT_LEAST32_MAX__ 2147483647L
393 // MSP430:#define __INT_LEAST32_TYPE__ long int
394 // MSP430:#define __INT_LEAST64_FMTd__ "lld"
395 // MSP430:#define __INT_LEAST64_FMTi__ "lli"
396 // MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
397 // MSP430:#define __INT_LEAST64_TYPE__ long long int
398 // MSP430:#define __INT_LEAST8_FMTd__ "hhd"
399 // MSP430:#define __INT_LEAST8_FMTi__ "hhi"
400 // MSP430:#define __INT_LEAST8_MAX__ 127
401 // MSP430:#define __INT_LEAST8_TYPE__ signed char
402 // MSP430:#define __INT_MAX__ 32767
403 // MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
404 // MSP430:#define __LDBL_DIG__ 15
405 // MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
406 // MSP430:#define __LDBL_HAS_DENORM__ 1
407 // MSP430:#define __LDBL_HAS_INFINITY__ 1
408 // MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
409 // MSP430:#define __LDBL_MANT_DIG__ 53
410 // MSP430:#define __LDBL_MAX_10_EXP__ 308
411 // MSP430:#define __LDBL_MAX_EXP__ 1024
412 // MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
413 // MSP430:#define __LDBL_MIN_10_EXP__ (-307)
414 // MSP430:#define __LDBL_MIN_EXP__ (-1021)
415 // MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
416 // MSP430:#define __LITTLE_ENDIAN__ 1
417 // MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
418 // MSP430:#define __LONG_MAX__ 2147483647L
419 // MSP430-NOT:#define __LP64__
420 // MSP430:#define __MSP430__ 1
421 // MSP430:#define __POINTER_WIDTH__ 16
422 // MSP430:#define __PTRDIFF_TYPE__ int
423 // MSP430:#define __PTRDIFF_WIDTH__ 16
424 // MSP430:#define __SCHAR_MAX__ 127
425 // MSP430:#define __SHRT_MAX__ 32767
426 // MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
427 // MSP430:#define __SIG_ATOMIC_WIDTH__ 32
428 // MSP430:#define __SIZEOF_DOUBLE__ 8
429 // MSP430:#define __SIZEOF_FLOAT__ 4
430 // MSP430:#define __SIZEOF_INT__ 2
431 // MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
432 // MSP430:#define __SIZEOF_LONG_LONG__ 8
433 // MSP430:#define __SIZEOF_LONG__ 4
434 // MSP430:#define __SIZEOF_POINTER__ 2
435 // MSP430:#define __SIZEOF_PTRDIFF_T__ 2
436 // MSP430:#define __SIZEOF_SHORT__ 2
437 // MSP430:#define __SIZEOF_SIZE_T__ 2
438 // MSP430:#define __SIZEOF_WCHAR_T__ 2
439 // MSP430:#define __SIZEOF_WINT_T__ 2
440 // MSP430:#define __SIZE_MAX__ 65535U
441 // MSP430:#define __SIZE_TYPE__ unsigned int
442 // MSP430:#define __SIZE_WIDTH__ 16
443 // MSP430-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 2U
444 // MSP430:#define __UINT16_C_SUFFIX__ U
445 // MSP430:#define __UINT16_MAX__ 65535U
446 // MSP430:#define __UINT16_TYPE__ unsigned short
447 // MSP430:#define __UINT32_C_SUFFIX__ UL
448 // MSP430:#define __UINT32_MAX__ 4294967295UL
449 // MSP430:#define __UINT32_TYPE__ long unsigned int
450 // MSP430:#define __UINT64_C_SUFFIX__ ULL
451 // MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
452 // MSP430:#define __UINT64_TYPE__ long long unsigned int
453 // MSP430:#define __UINT8_C_SUFFIX__
454 // MSP430:#define __UINT8_MAX__ 255
455 // MSP430:#define __UINT8_TYPE__ unsigned char
456 // MSP430:#define __UINTMAX_C_SUFFIX__ ULL
457 // MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
458 // MSP430:#define __UINTMAX_TYPE__ long long unsigned int
459 // MSP430:#define __UINTMAX_WIDTH__ 64
460 // MSP430:#define __UINTPTR_MAX__ 65535U
461 // MSP430:#define __UINTPTR_TYPE__ unsigned int
462 // MSP430:#define __UINTPTR_WIDTH__ 16
463 // MSP430:#define __UINT_FAST16_MAX__ 65535U
464 // MSP430:#define __UINT_FAST16_TYPE__ unsigned short
465 // MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
466 // MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
467 // MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
468 // MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
469 // MSP430:#define __UINT_FAST8_MAX__ 255
470 // MSP430:#define __UINT_FAST8_TYPE__ unsigned char
471 // MSP430:#define __UINT_LEAST16_MAX__ 65535U
472 // MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
473 // MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
474 // MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
475 // MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
476 // MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
477 // MSP430:#define __UINT_LEAST8_MAX__ 255
478 // MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
479 // MSP430:#define __USER_LABEL_PREFIX__
480 // MSP430:#define __WCHAR_MAX__ 32767
481 // MSP430:#define __WCHAR_TYPE__ int
482 // MSP430:#define __WCHAR_WIDTH__ 16
483 // MSP430:#define __WINT_TYPE__ int
484 // MSP430:#define __WINT_WIDTH__ 16
485 // MSP430:#define __clang__ 1
487 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX32 %s
488 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX32 -check-prefix NVPTX32-CXX %s
490 // NVPTX32-NOT:#define _LP64
491 // NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
492 // NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
493 // NVPTX32:#define __CHAR16_TYPE__ unsigned short
494 // NVPTX32:#define __CHAR32_TYPE__ unsigned int
495 // NVPTX32:#define __CHAR_BIT__ 8
496 // NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
497 // NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
498 // NVPTX32:#define __DBL_DIG__ 15
499 // NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
500 // NVPTX32:#define __DBL_HAS_DENORM__ 1
501 // NVPTX32:#define __DBL_HAS_INFINITY__ 1
502 // NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
503 // NVPTX32:#define __DBL_MANT_DIG__ 53
504 // NVPTX32:#define __DBL_MAX_10_EXP__ 308
505 // NVPTX32:#define __DBL_MAX_EXP__ 1024
506 // NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
507 // NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
508 // NVPTX32:#define __DBL_MIN_EXP__ (-1021)
509 // NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
510 // NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
511 // NVPTX32:#define __FINITE_MATH_ONLY__ 0
512 // NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
513 // NVPTX32:#define __FLT_DIG__ 6
514 // NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
515 // NVPTX32:#define __FLT_HAS_DENORM__ 1
516 // NVPTX32:#define __FLT_HAS_INFINITY__ 1
517 // NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
518 // NVPTX32:#define __FLT_MANT_DIG__ 24
519 // NVPTX32:#define __FLT_MAX_10_EXP__ 38
520 // NVPTX32:#define __FLT_MAX_EXP__ 128
521 // NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
522 // NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
523 // NVPTX32:#define __FLT_MIN_EXP__ (-125)
524 // NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
525 // NVPTX32:#define __FLT_RADIX__ 2
526 // NVPTX32:#define __INT16_C_SUFFIX__
527 // NVPTX32:#define __INT16_FMTd__ "hd"
528 // NVPTX32:#define __INT16_FMTi__ "hi"
529 // NVPTX32:#define __INT16_MAX__ 32767
530 // NVPTX32:#define __INT16_TYPE__ short
531 // NVPTX32:#define __INT32_C_SUFFIX__
532 // NVPTX32:#define __INT32_FMTd__ "d"
533 // NVPTX32:#define __INT32_FMTi__ "i"
534 // NVPTX32:#define __INT32_MAX__ 2147483647
535 // NVPTX32:#define __INT32_TYPE__ int
536 // NVPTX32:#define __INT64_C_SUFFIX__ LL
537 // NVPTX32:#define __INT64_FMTd__ "lld"
538 // NVPTX32:#define __INT64_FMTi__ "lli"
539 // NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
540 // NVPTX32:#define __INT64_TYPE__ long long int
541 // NVPTX32:#define __INT8_C_SUFFIX__
542 // NVPTX32:#define __INT8_FMTd__ "hhd"
543 // NVPTX32:#define __INT8_FMTi__ "hhi"
544 // NVPTX32:#define __INT8_MAX__ 127
545 // NVPTX32:#define __INT8_TYPE__ signed char
546 // NVPTX32:#define __INTMAX_C_SUFFIX__ LL
547 // NVPTX32:#define __INTMAX_FMTd__ "lld"
548 // NVPTX32:#define __INTMAX_FMTi__ "lli"
549 // NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
550 // NVPTX32:#define __INTMAX_TYPE__ long long int
551 // NVPTX32:#define __INTMAX_WIDTH__ 64
552 // NVPTX32:#define __INTPTR_FMTd__ "d"
553 // NVPTX32:#define __INTPTR_FMTi__ "i"
554 // NVPTX32:#define __INTPTR_MAX__ 2147483647
555 // NVPTX32:#define __INTPTR_TYPE__ int
556 // NVPTX32:#define __INTPTR_WIDTH__ 32
557 // NVPTX32:#define __INT_FAST16_FMTd__ "hd"
558 // NVPTX32:#define __INT_FAST16_FMTi__ "hi"
559 // NVPTX32:#define __INT_FAST16_MAX__ 32767
560 // NVPTX32:#define __INT_FAST16_TYPE__ short
561 // NVPTX32:#define __INT_FAST32_FMTd__ "d"
562 // NVPTX32:#define __INT_FAST32_FMTi__ "i"
563 // NVPTX32:#define __INT_FAST32_MAX__ 2147483647
564 // NVPTX32:#define __INT_FAST32_TYPE__ int
565 // NVPTX32:#define __INT_FAST64_FMTd__ "lld"
566 // NVPTX32:#define __INT_FAST64_FMTi__ "lli"
567 // NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
568 // NVPTX32:#define __INT_FAST64_TYPE__ long long int
569 // NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
570 // NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
571 // NVPTX32:#define __INT_FAST8_MAX__ 127
572 // NVPTX32:#define __INT_FAST8_TYPE__ signed char
573 // NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
574 // NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
575 // NVPTX32:#define __INT_LEAST16_MAX__ 32767
576 // NVPTX32:#define __INT_LEAST16_TYPE__ short
577 // NVPTX32:#define __INT_LEAST32_FMTd__ "d"
578 // NVPTX32:#define __INT_LEAST32_FMTi__ "i"
579 // NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
580 // NVPTX32:#define __INT_LEAST32_TYPE__ int
581 // NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
582 // NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
583 // NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
584 // NVPTX32:#define __INT_LEAST64_TYPE__ long long int
585 // NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
586 // NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
587 // NVPTX32:#define __INT_LEAST8_MAX__ 127
588 // NVPTX32:#define __INT_LEAST8_TYPE__ signed char
589 // NVPTX32:#define __INT_MAX__ 2147483647
590 // NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
591 // NVPTX32:#define __LDBL_DIG__ 15
592 // NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
593 // NVPTX32:#define __LDBL_HAS_DENORM__ 1
594 // NVPTX32:#define __LDBL_HAS_INFINITY__ 1
595 // NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
596 // NVPTX32:#define __LDBL_MANT_DIG__ 53
597 // NVPTX32:#define __LDBL_MAX_10_EXP__ 308
598 // NVPTX32:#define __LDBL_MAX_EXP__ 1024
599 // NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
600 // NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
601 // NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
602 // NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
603 // NVPTX32:#define __LITTLE_ENDIAN__ 1
604 // NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
605 // NVPTX32:#define __LONG_MAX__ 2147483647L
606 // NVPTX32-NOT:#define __LP64__
607 // NVPTX32:#define __NVPTX__ 1
608 // NVPTX32:#define __POINTER_WIDTH__ 32
609 // NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
610 // NVPTX32:#define __PTRDIFF_TYPE__ int
611 // NVPTX32:#define __PTRDIFF_WIDTH__ 32
612 // NVPTX32:#define __PTX__ 1
613 // NVPTX32:#define __SCHAR_MAX__ 127
614 // NVPTX32:#define __SHRT_MAX__ 32767
615 // NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
616 // NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
617 // NVPTX32:#define __SIZEOF_DOUBLE__ 8
618 // NVPTX32:#define __SIZEOF_FLOAT__ 4
619 // NVPTX32:#define __SIZEOF_INT__ 4
620 // NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
621 // NVPTX32:#define __SIZEOF_LONG_LONG__ 8
622 // NVPTX32:#define __SIZEOF_LONG__ 4
623 // NVPTX32:#define __SIZEOF_POINTER__ 4
624 // NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
625 // NVPTX32:#define __SIZEOF_SHORT__ 2
626 // NVPTX32:#define __SIZEOF_SIZE_T__ 4
627 // NVPTX32:#define __SIZEOF_WCHAR_T__ 4
628 // NVPTX32:#define __SIZEOF_WINT_T__ 4
629 // NVPTX32:#define __SIZE_MAX__ 4294967295U
630 // NVPTX32:#define __SIZE_TYPE__ unsigned int
631 // NVPTX32:#define __SIZE_WIDTH__ 32
632 // NVPTX32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
633 // NVPTX32:#define __UINT16_C_SUFFIX__
634 // NVPTX32:#define __UINT16_MAX__ 65535
635 // NVPTX32:#define __UINT16_TYPE__ unsigned short
636 // NVPTX32:#define __UINT32_C_SUFFIX__ U
637 // NVPTX32:#define __UINT32_MAX__ 4294967295U
638 // NVPTX32:#define __UINT32_TYPE__ unsigned int
639 // NVPTX32:#define __UINT64_C_SUFFIX__ ULL
640 // NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
641 // NVPTX32:#define __UINT64_TYPE__ long long unsigned int
642 // NVPTX32:#define __UINT8_C_SUFFIX__
643 // NVPTX32:#define __UINT8_MAX__ 255
644 // NVPTX32:#define __UINT8_TYPE__ unsigned char
645 // NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
646 // NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
647 // NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
648 // NVPTX32:#define __UINTMAX_WIDTH__ 64
649 // NVPTX32:#define __UINTPTR_MAX__ 4294967295U
650 // NVPTX32:#define __UINTPTR_TYPE__ unsigned int
651 // NVPTX32:#define __UINTPTR_WIDTH__ 32
652 // NVPTX32:#define __UINT_FAST16_MAX__ 65535
653 // NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
654 // NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
655 // NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
656 // NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
657 // NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
658 // NVPTX32:#define __UINT_FAST8_MAX__ 255
659 // NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
660 // NVPTX32:#define __UINT_LEAST16_MAX__ 65535
661 // NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
662 // NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
663 // NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
664 // NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
665 // NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
666 // NVPTX32:#define __UINT_LEAST8_MAX__ 255
667 // NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
668 // NVPTX32:#define __USER_LABEL_PREFIX__
669 // NVPTX32:#define __WCHAR_MAX__ 2147483647
670 // NVPTX32:#define __WCHAR_TYPE__ int
671 // NVPTX32:#define __WCHAR_WIDTH__ 32
672 // NVPTX32:#define __WINT_TYPE__ int
673 // NVPTX32:#define __WINT_WIDTH__ 32
675 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX64 %s
676 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX64 -check-prefix NVPTX64-CXX %s
678 // NVPTX64:#define _LP64 1
679 // NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
680 // NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
681 // NVPTX64:#define __CHAR16_TYPE__ unsigned short
682 // NVPTX64:#define __CHAR32_TYPE__ unsigned int
683 // NVPTX64:#define __CHAR_BIT__ 8
684 // NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
685 // NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
686 // NVPTX64:#define __DBL_DIG__ 15
687 // NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
688 // NVPTX64:#define __DBL_HAS_DENORM__ 1
689 // NVPTX64:#define __DBL_HAS_INFINITY__ 1
690 // NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
691 // NVPTX64:#define __DBL_MANT_DIG__ 53
692 // NVPTX64:#define __DBL_MAX_10_EXP__ 308
693 // NVPTX64:#define __DBL_MAX_EXP__ 1024
694 // NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
695 // NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
696 // NVPTX64:#define __DBL_MIN_EXP__ (-1021)
697 // NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
698 // NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
699 // NVPTX64:#define __FINITE_MATH_ONLY__ 0
700 // NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
701 // NVPTX64:#define __FLT_DIG__ 6
702 // NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
703 // NVPTX64:#define __FLT_HAS_DENORM__ 1
704 // NVPTX64:#define __FLT_HAS_INFINITY__ 1
705 // NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
706 // NVPTX64:#define __FLT_MANT_DIG__ 24
707 // NVPTX64:#define __FLT_MAX_10_EXP__ 38
708 // NVPTX64:#define __FLT_MAX_EXP__ 128
709 // NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
710 // NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
711 // NVPTX64:#define __FLT_MIN_EXP__ (-125)
712 // NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
713 // NVPTX64:#define __FLT_RADIX__ 2
714 // NVPTX64:#define __INT16_C_SUFFIX__
715 // NVPTX64:#define __INT16_FMTd__ "hd"
716 // NVPTX64:#define __INT16_FMTi__ "hi"
717 // NVPTX64:#define __INT16_MAX__ 32767
718 // NVPTX64:#define __INT16_TYPE__ short
719 // NVPTX64:#define __INT32_C_SUFFIX__
720 // NVPTX64:#define __INT32_FMTd__ "d"
721 // NVPTX64:#define __INT32_FMTi__ "i"
722 // NVPTX64:#define __INT32_MAX__ 2147483647
723 // NVPTX64:#define __INT32_TYPE__ int
724 // NVPTX64:#define __INT64_C_SUFFIX__ LL
725 // NVPTX64:#define __INT64_FMTd__ "lld"
726 // NVPTX64:#define __INT64_FMTi__ "lli"
727 // NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
728 // NVPTX64:#define __INT64_TYPE__ long long int
729 // NVPTX64:#define __INT8_C_SUFFIX__
730 // NVPTX64:#define __INT8_FMTd__ "hhd"
731 // NVPTX64:#define __INT8_FMTi__ "hhi"
732 // NVPTX64:#define __INT8_MAX__ 127
733 // NVPTX64:#define __INT8_TYPE__ signed char
734 // NVPTX64:#define __INTMAX_C_SUFFIX__ LL
735 // NVPTX64:#define __INTMAX_FMTd__ "lld"
736 // NVPTX64:#define __INTMAX_FMTi__ "lli"
737 // NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
738 // NVPTX64:#define __INTMAX_TYPE__ long long int
739 // NVPTX64:#define __INTMAX_WIDTH__ 64
740 // NVPTX64:#define __INTPTR_FMTd__ "ld"
741 // NVPTX64:#define __INTPTR_FMTi__ "li"
742 // NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
743 // NVPTX64:#define __INTPTR_TYPE__ long int
744 // NVPTX64:#define __INTPTR_WIDTH__ 64
745 // NVPTX64:#define __INT_FAST16_FMTd__ "hd"
746 // NVPTX64:#define __INT_FAST16_FMTi__ "hi"
747 // NVPTX64:#define __INT_FAST16_MAX__ 32767
748 // NVPTX64:#define __INT_FAST16_TYPE__ short
749 // NVPTX64:#define __INT_FAST32_FMTd__ "d"
750 // NVPTX64:#define __INT_FAST32_FMTi__ "i"
751 // NVPTX64:#define __INT_FAST32_MAX__ 2147483647
752 // NVPTX64:#define __INT_FAST32_TYPE__ int
753 // NVPTX64:#define __INT_FAST64_FMTd__ "ld"
754 // NVPTX64:#define __INT_FAST64_FMTi__ "li"
755 // NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
756 // NVPTX64:#define __INT_FAST64_TYPE__ long int
757 // NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
758 // NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
759 // NVPTX64:#define __INT_FAST8_MAX__ 127
760 // NVPTX64:#define __INT_FAST8_TYPE__ signed char
761 // NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
762 // NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
763 // NVPTX64:#define __INT_LEAST16_MAX__ 32767
764 // NVPTX64:#define __INT_LEAST16_TYPE__ short
765 // NVPTX64:#define __INT_LEAST32_FMTd__ "d"
766 // NVPTX64:#define __INT_LEAST32_FMTi__ "i"
767 // NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
768 // NVPTX64:#define __INT_LEAST32_TYPE__ int
769 // NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
770 // NVPTX64:#define __INT_LEAST64_FMTi__ "li"
771 // NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
772 // NVPTX64:#define __INT_LEAST64_TYPE__ long int
773 // NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
774 // NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
775 // NVPTX64:#define __INT_LEAST8_MAX__ 127
776 // NVPTX64:#define __INT_LEAST8_TYPE__ signed char
777 // NVPTX64:#define __INT_MAX__ 2147483647
778 // NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
779 // NVPTX64:#define __LDBL_DIG__ 15
780 // NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
781 // NVPTX64:#define __LDBL_HAS_DENORM__ 1
782 // NVPTX64:#define __LDBL_HAS_INFINITY__ 1
783 // NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
784 // NVPTX64:#define __LDBL_MANT_DIG__ 53
785 // NVPTX64:#define __LDBL_MAX_10_EXP__ 308
786 // NVPTX64:#define __LDBL_MAX_EXP__ 1024
787 // NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
788 // NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
789 // NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
790 // NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
791 // NVPTX64:#define __LITTLE_ENDIAN__ 1
792 // NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
793 // NVPTX64:#define __LONG_MAX__ 9223372036854775807L
794 // NVPTX64:#define __LP64__ 1
795 // NVPTX64:#define __NVPTX__ 1
796 // NVPTX64:#define __POINTER_WIDTH__ 64
797 // NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
798 // NVPTX64:#define __PTRDIFF_TYPE__ long int
799 // NVPTX64:#define __PTRDIFF_WIDTH__ 64
800 // NVPTX64:#define __PTX__ 1
801 // NVPTX64:#define __SCHAR_MAX__ 127
802 // NVPTX64:#define __SHRT_MAX__ 32767
803 // NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
804 // NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
805 // NVPTX64:#define __SIZEOF_DOUBLE__ 8
806 // NVPTX64:#define __SIZEOF_FLOAT__ 4
807 // NVPTX64:#define __SIZEOF_INT__ 4
808 // NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
809 // NVPTX64:#define __SIZEOF_LONG_LONG__ 8
810 // NVPTX64:#define __SIZEOF_LONG__ 8
811 // NVPTX64:#define __SIZEOF_POINTER__ 8
812 // NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
813 // NVPTX64:#define __SIZEOF_SHORT__ 2
814 // NVPTX64:#define __SIZEOF_SIZE_T__ 8
815 // NVPTX64:#define __SIZEOF_WCHAR_T__ 4
816 // NVPTX64:#define __SIZEOF_WINT_T__ 4
817 // NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
818 // NVPTX64:#define __SIZE_TYPE__ long unsigned int
819 // NVPTX64:#define __SIZE_WIDTH__ 64
820 // NVPTX64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
821 // NVPTX64:#define __UINT16_C_SUFFIX__
822 // NVPTX64:#define __UINT16_MAX__ 65535
823 // NVPTX64:#define __UINT16_TYPE__ unsigned short
824 // NVPTX64:#define __UINT32_C_SUFFIX__ U
825 // NVPTX64:#define __UINT32_MAX__ 4294967295U
826 // NVPTX64:#define __UINT32_TYPE__ unsigned int
827 // NVPTX64:#define __UINT64_C_SUFFIX__ ULL
828 // NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
829 // NVPTX64:#define __UINT64_TYPE__ long long unsigned int
830 // NVPTX64:#define __UINT8_C_SUFFIX__
831 // NVPTX64:#define __UINT8_MAX__ 255
832 // NVPTX64:#define __UINT8_TYPE__ unsigned char
833 // NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
834 // NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
835 // NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
836 // NVPTX64:#define __UINTMAX_WIDTH__ 64
837 // NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
838 // NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
839 // NVPTX64:#define __UINTPTR_WIDTH__ 64
840 // NVPTX64:#define __UINT_FAST16_MAX__ 65535
841 // NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
842 // NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
843 // NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
844 // NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
845 // NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
846 // NVPTX64:#define __UINT_FAST8_MAX__ 255
847 // NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
848 // NVPTX64:#define __UINT_LEAST16_MAX__ 65535
849 // NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
850 // NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
851 // NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
852 // NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
853 // NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
854 // NVPTX64:#define __UINT_LEAST8_MAX__ 255
855 // NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
856 // NVPTX64:#define __USER_LABEL_PREFIX__
857 // NVPTX64:#define __WCHAR_MAX__ 2147483647
858 // NVPTX64:#define __WCHAR_TYPE__ int
859 // NVPTX64:#define __WCHAR_WIDTH__ 32
860 // NVPTX64:#define __WINT_TYPE__ int
861 // NVPTX64:#define __WINT_WIDTH__ 32
864 // RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
865 // RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=r600 -target-cpu caicos < /dev/null | FileCheck -match-full-lines --check-prefix AMDGPU %s
867 // AMDGPU:#define __ENDIAN_LITTLE__ 1
868 // AMDGPU:#define cl_khr_byte_addressable_store 1
869 // AMDGCN:#define cl_khr_fp64 1
870 // AMDGPU:#define cl_khr_global_int32_base_atomics 1
871 // AMDGPU:#define cl_khr_global_int32_extended_atomics 1
872 // AMDGPU:#define cl_khr_local_int32_base_atomics 1
873 // AMDGPU:#define cl_khr_local_int32_extended_atomics 1
875 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
876 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
877 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
878 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT -check-prefix SPARC-DEFAULT-CXX %s
880 // SPARC-NOT:#define _LP64
881 // SPARC:#define __BIGGEST_ALIGNMENT__ 8
882 // SPARC:#define __BIG_ENDIAN__ 1
883 // SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
884 // SPARC:#define __CHAR16_TYPE__ unsigned short
885 // SPARC:#define __CHAR32_TYPE__ unsigned int
886 // SPARC:#define __CHAR_BIT__ 8
887 // SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
888 // SPARC:#define __DBL_DIG__ 15
889 // SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
890 // SPARC:#define __DBL_HAS_DENORM__ 1
891 // SPARC:#define __DBL_HAS_INFINITY__ 1
892 // SPARC:#define __DBL_HAS_QUIET_NAN__ 1
893 // SPARC:#define __DBL_MANT_DIG__ 53
894 // SPARC:#define __DBL_MAX_10_EXP__ 308
895 // SPARC:#define __DBL_MAX_EXP__ 1024
896 // SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
897 // SPARC:#define __DBL_MIN_10_EXP__ (-307)
898 // SPARC:#define __DBL_MIN_EXP__ (-1021)
899 // SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
900 // SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
901 // SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
902 // SPARC:#define __FLT_DIG__ 6
903 // SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
904 // SPARC:#define __FLT_HAS_DENORM__ 1
905 // SPARC:#define __FLT_HAS_INFINITY__ 1
906 // SPARC:#define __FLT_HAS_QUIET_NAN__ 1
907 // SPARC:#define __FLT_MANT_DIG__ 24
908 // SPARC:#define __FLT_MAX_10_EXP__ 38
909 // SPARC:#define __FLT_MAX_EXP__ 128
910 // SPARC:#define __FLT_MAX__ 3.40282347e+38F
911 // SPARC:#define __FLT_MIN_10_EXP__ (-37)
912 // SPARC:#define __FLT_MIN_EXP__ (-125)
913 // SPARC:#define __FLT_MIN__ 1.17549435e-38F
914 // SPARC:#define __FLT_RADIX__ 2
915 // SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
916 // SPARC:#define __INT16_C_SUFFIX__
917 // SPARC:#define __INT16_FMTd__ "hd"
918 // SPARC:#define __INT16_FMTi__ "hi"
919 // SPARC:#define __INT16_MAX__ 32767
920 // SPARC:#define __INT16_TYPE__ short
921 // SPARC:#define __INT32_C_SUFFIX__
922 // SPARC:#define __INT32_FMTd__ "d"
923 // SPARC:#define __INT32_FMTi__ "i"
924 // SPARC:#define __INT32_MAX__ 2147483647
925 // SPARC:#define __INT32_TYPE__ int
926 // SPARC:#define __INT64_C_SUFFIX__ LL
927 // SPARC:#define __INT64_FMTd__ "lld"
928 // SPARC:#define __INT64_FMTi__ "lli"
929 // SPARC:#define __INT64_MAX__ 9223372036854775807LL
930 // SPARC:#define __INT64_TYPE__ long long int
931 // SPARC:#define __INT8_C_SUFFIX__
932 // SPARC:#define __INT8_FMTd__ "hhd"
933 // SPARC:#define __INT8_FMTi__ "hhi"
934 // SPARC:#define __INT8_MAX__ 127
935 // SPARC:#define __INT8_TYPE__ signed char
936 // SPARC:#define __INTMAX_C_SUFFIX__ LL
937 // SPARC:#define __INTMAX_FMTd__ "lld"
938 // SPARC:#define __INTMAX_FMTi__ "lli"
939 // SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
940 // SPARC:#define __INTMAX_TYPE__ long long int
941 // SPARC:#define __INTMAX_WIDTH__ 64
942 // SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
943 // SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
944 // SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
945 // SPARC-DEFAULT:#define __INTPTR_TYPE__ int
946 // SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
947 // SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
948 // SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
949 // SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
950 // SPARC:#define __INTPTR_WIDTH__ 32
951 // SPARC:#define __INT_FAST16_FMTd__ "hd"
952 // SPARC:#define __INT_FAST16_FMTi__ "hi"
953 // SPARC:#define __INT_FAST16_MAX__ 32767
954 // SPARC:#define __INT_FAST16_TYPE__ short
955 // SPARC:#define __INT_FAST32_FMTd__ "d"
956 // SPARC:#define __INT_FAST32_FMTi__ "i"
957 // SPARC:#define __INT_FAST32_MAX__ 2147483647
958 // SPARC:#define __INT_FAST32_TYPE__ int
959 // SPARC:#define __INT_FAST64_FMTd__ "lld"
960 // SPARC:#define __INT_FAST64_FMTi__ "lli"
961 // SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
962 // SPARC:#define __INT_FAST64_TYPE__ long long int
963 // SPARC:#define __INT_FAST8_FMTd__ "hhd"
964 // SPARC:#define __INT_FAST8_FMTi__ "hhi"
965 // SPARC:#define __INT_FAST8_MAX__ 127
966 // SPARC:#define __INT_FAST8_TYPE__ signed char
967 // SPARC:#define __INT_LEAST16_FMTd__ "hd"
968 // SPARC:#define __INT_LEAST16_FMTi__ "hi"
969 // SPARC:#define __INT_LEAST16_MAX__ 32767
970 // SPARC:#define __INT_LEAST16_TYPE__ short
971 // SPARC:#define __INT_LEAST32_FMTd__ "d"
972 // SPARC:#define __INT_LEAST32_FMTi__ "i"
973 // SPARC:#define __INT_LEAST32_MAX__ 2147483647
974 // SPARC:#define __INT_LEAST32_TYPE__ int
975 // SPARC:#define __INT_LEAST64_FMTd__ "lld"
976 // SPARC:#define __INT_LEAST64_FMTi__ "lli"
977 // SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
978 // SPARC:#define __INT_LEAST64_TYPE__ long long int
979 // SPARC:#define __INT_LEAST8_FMTd__ "hhd"
980 // SPARC:#define __INT_LEAST8_FMTi__ "hhi"
981 // SPARC:#define __INT_LEAST8_MAX__ 127
982 // SPARC:#define __INT_LEAST8_TYPE__ signed char
983 // SPARC:#define __INT_MAX__ 2147483647
984 // SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
985 // SPARC:#define __LDBL_DIG__ 15
986 // SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
987 // SPARC:#define __LDBL_HAS_DENORM__ 1
988 // SPARC:#define __LDBL_HAS_INFINITY__ 1
989 // SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
990 // SPARC:#define __LDBL_MANT_DIG__ 53
991 // SPARC:#define __LDBL_MAX_10_EXP__ 308
992 // SPARC:#define __LDBL_MAX_EXP__ 1024
993 // SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
994 // SPARC:#define __LDBL_MIN_10_EXP__ (-307)
995 // SPARC:#define __LDBL_MIN_EXP__ (-1021)
996 // SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
997 // SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
998 // SPARC:#define __LONG_MAX__ 2147483647L
999 // SPARC-NOT:#define __LP64__
1000 // SPARC:#define __POINTER_WIDTH__ 32
1001 // SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
1002 // SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
1003 // SPARC:#define __PTRDIFF_WIDTH__ 32
1004 // SPARC:#define __REGISTER_PREFIX__
1005 // SPARC:#define __SCHAR_MAX__ 127
1006 // SPARC:#define __SHRT_MAX__ 32767
1007 // SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
1008 // SPARC:#define __SIG_ATOMIC_WIDTH__ 32
1009 // SPARC:#define __SIZEOF_DOUBLE__ 8
1010 // SPARC:#define __SIZEOF_FLOAT__ 4
1011 // SPARC:#define __SIZEOF_INT__ 4
1012 // SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
1013 // SPARC:#define __SIZEOF_LONG_LONG__ 8
1014 // SPARC:#define __SIZEOF_LONG__ 4
1015 // SPARC:#define __SIZEOF_POINTER__ 4
1016 // SPARC:#define __SIZEOF_PTRDIFF_T__ 4
1017 // SPARC:#define __SIZEOF_SHORT__ 2
1018 // SPARC:#define __SIZEOF_SIZE_T__ 4
1019 // SPARC:#define __SIZEOF_WCHAR_T__ 4
1020 // SPARC:#define __SIZEOF_WINT_T__ 4
1021 // SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
1022 // SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
1023 // SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
1024 // SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
1025 // SPARC:#define __SIZE_WIDTH__ 32
1026 // SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
1027 // SPARC:#define __UINT16_C_SUFFIX__
1028 // SPARC:#define __UINT16_MAX__ 65535
1029 // SPARC:#define __UINT16_TYPE__ unsigned short
1030 // SPARC:#define __UINT32_C_SUFFIX__ U
1031 // SPARC:#define __UINT32_MAX__ 4294967295U
1032 // SPARC:#define __UINT32_TYPE__ unsigned int
1033 // SPARC:#define __UINT64_C_SUFFIX__ ULL
1034 // SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
1035 // SPARC:#define __UINT64_TYPE__ long long unsigned int
1036 // SPARC:#define __UINT8_C_SUFFIX__
1037 // SPARC:#define __UINT8_MAX__ 255
1038 // SPARC:#define __UINT8_TYPE__ unsigned char
1039 // SPARC:#define __UINTMAX_C_SUFFIX__ ULL
1040 // SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
1041 // SPARC:#define __UINTMAX_TYPE__ long long unsigned int
1042 // SPARC:#define __UINTMAX_WIDTH__ 64
1043 // SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
1044 // SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
1045 // SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
1046 // SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
1047 // SPARC:#define __UINTPTR_WIDTH__ 32
1048 // SPARC:#define __UINT_FAST16_MAX__ 65535
1049 // SPARC:#define __UINT_FAST16_TYPE__ unsigned short
1050 // SPARC:#define __UINT_FAST32_MAX__ 4294967295U
1051 // SPARC:#define __UINT_FAST32_TYPE__ unsigned int
1052 // SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1053 // SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
1054 // SPARC:#define __UINT_FAST8_MAX__ 255
1055 // SPARC:#define __UINT_FAST8_TYPE__ unsigned char
1056 // SPARC:#define __UINT_LEAST16_MAX__ 65535
1057 // SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
1058 // SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
1059 // SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
1060 // SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1061 // SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
1062 // SPARC:#define __UINT_LEAST8_MAX__ 255
1063 // SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
1064 // SPARC:#define __USER_LABEL_PREFIX__
1065 // SPARC:#define __VERSION__ "{{.*}}Clang{{.*}}
1066 // SPARC:#define __WCHAR_MAX__ 2147483647
1067 // SPARC:#define __WCHAR_TYPE__ int
1068 // SPARC:#define __WCHAR_WIDTH__ 32
1069 // SPARC:#define __WINT_TYPE__ int
1070 // SPARC:#define __WINT_WIDTH__ 32
1071 // SPARC:#define __sparc 1
1072 // SPARC:#define __sparc__ 1
1073 // SPARC:#define __sparcv8 1
1074 // SPARC:#define sparc 1
1076 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE %s
1077 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE -check-prefix TCE-CXX %s
1079 // TCE-NOT:#define _LP64
1080 // TCE:#define __BIGGEST_ALIGNMENT__ 4
1081 // TCE:#define __BIG_ENDIAN__ 1
1082 // TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1083 // TCE:#define __CHAR16_TYPE__ unsigned short
1084 // TCE:#define __CHAR32_TYPE__ unsigned int
1085 // TCE:#define __CHAR_BIT__ 8
1086 // TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
1087 // TCE:#define __DBL_DIG__ 6
1088 // TCE:#define __DBL_EPSILON__ 1.19209290e-7
1089 // TCE:#define __DBL_HAS_DENORM__ 1
1090 // TCE:#define __DBL_HAS_INFINITY__ 1
1091 // TCE:#define __DBL_HAS_QUIET_NAN__ 1
1092 // TCE:#define __DBL_MANT_DIG__ 24
1093 // TCE:#define __DBL_MAX_10_EXP__ 38
1094 // TCE:#define __DBL_MAX_EXP__ 128
1095 // TCE:#define __DBL_MAX__ 3.40282347e+38
1096 // TCE:#define __DBL_MIN_10_EXP__ (-37)
1097 // TCE:#define __DBL_MIN_EXP__ (-125)
1098 // TCE:#define __DBL_MIN__ 1.17549435e-38
1099 // TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1100 // TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1101 // TCE:#define __FLT_DIG__ 6
1102 // TCE:#define __FLT_EPSILON__ 1.19209290e-7F
1103 // TCE:#define __FLT_HAS_DENORM__ 1
1104 // TCE:#define __FLT_HAS_INFINITY__ 1
1105 // TCE:#define __FLT_HAS_QUIET_NAN__ 1
1106 // TCE:#define __FLT_MANT_DIG__ 24
1107 // TCE:#define __FLT_MAX_10_EXP__ 38
1108 // TCE:#define __FLT_MAX_EXP__ 128
1109 // TCE:#define __FLT_MAX__ 3.40282347e+38F
1110 // TCE:#define __FLT_MIN_10_EXP__ (-37)
1111 // TCE:#define __FLT_MIN_EXP__ (-125)
1112 // TCE:#define __FLT_MIN__ 1.17549435e-38F
1113 // TCE:#define __FLT_RADIX__ 2
1114 // TCE:#define __INT16_C_SUFFIX__
1115 // TCE:#define __INT16_FMTd__ "hd"
1116 // TCE:#define __INT16_FMTi__ "hi"
1117 // TCE:#define __INT16_MAX__ 32767
1118 // TCE:#define __INT16_TYPE__ short
1119 // TCE:#define __INT32_C_SUFFIX__
1120 // TCE:#define __INT32_FMTd__ "d"
1121 // TCE:#define __INT32_FMTi__ "i"
1122 // TCE:#define __INT32_MAX__ 2147483647
1123 // TCE:#define __INT32_TYPE__ int
1124 // TCE:#define __INT8_C_SUFFIX__
1125 // TCE:#define __INT8_FMTd__ "hhd"
1126 // TCE:#define __INT8_FMTi__ "hhi"
1127 // TCE:#define __INT8_MAX__ 127
1128 // TCE:#define __INT8_TYPE__ signed char
1129 // TCE:#define __INTMAX_C_SUFFIX__ L
1130 // TCE:#define __INTMAX_FMTd__ "ld"
1131 // TCE:#define __INTMAX_FMTi__ "li"
1132 // TCE:#define __INTMAX_MAX__ 2147483647L
1133 // TCE:#define __INTMAX_TYPE__ long int
1134 // TCE:#define __INTMAX_WIDTH__ 32
1135 // TCE:#define __INTPTR_FMTd__ "d"
1136 // TCE:#define __INTPTR_FMTi__ "i"
1137 // TCE:#define __INTPTR_MAX__ 2147483647
1138 // TCE:#define __INTPTR_TYPE__ int
1139 // TCE:#define __INTPTR_WIDTH__ 32
1140 // TCE:#define __INT_FAST16_FMTd__ "hd"
1141 // TCE:#define __INT_FAST16_FMTi__ "hi"
1142 // TCE:#define __INT_FAST16_MAX__ 32767
1143 // TCE:#define __INT_FAST16_TYPE__ short
1144 // TCE:#define __INT_FAST32_FMTd__ "d"
1145 // TCE:#define __INT_FAST32_FMTi__ "i"
1146 // TCE:#define __INT_FAST32_MAX__ 2147483647
1147 // TCE:#define __INT_FAST32_TYPE__ int
1148 // TCE:#define __INT_FAST8_FMTd__ "hhd"
1149 // TCE:#define __INT_FAST8_FMTi__ "hhi"
1150 // TCE:#define __INT_FAST8_MAX__ 127
1151 // TCE:#define __INT_FAST8_TYPE__ signed char
1152 // TCE:#define __INT_LEAST16_FMTd__ "hd"
1153 // TCE:#define __INT_LEAST16_FMTi__ "hi"
1154 // TCE:#define __INT_LEAST16_MAX__ 32767
1155 // TCE:#define __INT_LEAST16_TYPE__ short
1156 // TCE:#define __INT_LEAST32_FMTd__ "d"
1157 // TCE:#define __INT_LEAST32_FMTi__ "i"
1158 // TCE:#define __INT_LEAST32_MAX__ 2147483647
1159 // TCE:#define __INT_LEAST32_TYPE__ int
1160 // TCE:#define __INT_LEAST8_FMTd__ "hhd"
1161 // TCE:#define __INT_LEAST8_FMTi__ "hhi"
1162 // TCE:#define __INT_LEAST8_MAX__ 127
1163 // TCE:#define __INT_LEAST8_TYPE__ signed char
1164 // TCE:#define __INT_MAX__ 2147483647
1165 // TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
1166 // TCE:#define __LDBL_DIG__ 6
1167 // TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
1168 // TCE:#define __LDBL_HAS_DENORM__ 1
1169 // TCE:#define __LDBL_HAS_INFINITY__ 1
1170 // TCE:#define __LDBL_HAS_QUIET_NAN__ 1
1171 // TCE:#define __LDBL_MANT_DIG__ 24
1172 // TCE:#define __LDBL_MAX_10_EXP__ 38
1173 // TCE:#define __LDBL_MAX_EXP__ 128
1174 // TCE:#define __LDBL_MAX__ 3.40282347e+38L
1175 // TCE:#define __LDBL_MIN_10_EXP__ (-37)
1176 // TCE:#define __LDBL_MIN_EXP__ (-125)
1177 // TCE:#define __LDBL_MIN__ 1.17549435e-38L
1178 // TCE:#define __LONG_LONG_MAX__ 2147483647LL
1179 // TCE:#define __LONG_MAX__ 2147483647L
1180 // TCE-NOT:#define __LP64__
1181 // TCE:#define __POINTER_WIDTH__ 32
1182 // TCE:#define __PTRDIFF_TYPE__ int
1183 // TCE:#define __PTRDIFF_WIDTH__ 32
1184 // TCE:#define __SCHAR_MAX__ 127
1185 // TCE:#define __SHRT_MAX__ 32767
1186 // TCE:#define __SIG_ATOMIC_MAX__ 2147483647
1187 // TCE:#define __SIG_ATOMIC_WIDTH__ 32
1188 // TCE:#define __SIZEOF_DOUBLE__ 4
1189 // TCE:#define __SIZEOF_FLOAT__ 4
1190 // TCE:#define __SIZEOF_INT__ 4
1191 // TCE:#define __SIZEOF_LONG_DOUBLE__ 4
1192 // TCE:#define __SIZEOF_LONG_LONG__ 4
1193 // TCE:#define __SIZEOF_LONG__ 4
1194 // TCE:#define __SIZEOF_POINTER__ 4
1195 // TCE:#define __SIZEOF_PTRDIFF_T__ 4
1196 // TCE:#define __SIZEOF_SHORT__ 2
1197 // TCE:#define __SIZEOF_SIZE_T__ 4
1198 // TCE:#define __SIZEOF_WCHAR_T__ 4
1199 // TCE:#define __SIZEOF_WINT_T__ 4
1200 // TCE:#define __SIZE_MAX__ 4294967295U
1201 // TCE:#define __SIZE_TYPE__ unsigned int
1202 // TCE:#define __SIZE_WIDTH__ 32
1203 // TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
1204 // TCE:#define __TCE_V1__ 1
1205 // TCE:#define __TCE__ 1
1206 // TCE:#define __UINT16_C_SUFFIX__
1207 // TCE:#define __UINT16_MAX__ 65535
1208 // TCE:#define __UINT16_TYPE__ unsigned short
1209 // TCE:#define __UINT32_C_SUFFIX__ U
1210 // TCE:#define __UINT32_MAX__ 4294967295U
1211 // TCE:#define __UINT32_TYPE__ unsigned int
1212 // TCE:#define __UINT8_C_SUFFIX__
1213 // TCE:#define __UINT8_MAX__ 255
1214 // TCE:#define __UINT8_TYPE__ unsigned char
1215 // TCE:#define __UINTMAX_C_SUFFIX__ UL
1216 // TCE:#define __UINTMAX_MAX__ 4294967295UL
1217 // TCE:#define __UINTMAX_TYPE__ long unsigned int
1218 // TCE:#define __UINTMAX_WIDTH__ 32
1219 // TCE:#define __UINTPTR_MAX__ 4294967295U
1220 // TCE:#define __UINTPTR_TYPE__ unsigned int
1221 // TCE:#define __UINTPTR_WIDTH__ 32
1222 // TCE:#define __UINT_FAST16_MAX__ 65535
1223 // TCE:#define __UINT_FAST16_TYPE__ unsigned short
1224 // TCE:#define __UINT_FAST32_MAX__ 4294967295U
1225 // TCE:#define __UINT_FAST32_TYPE__ unsigned int
1226 // TCE:#define __UINT_FAST8_MAX__ 255
1227 // TCE:#define __UINT_FAST8_TYPE__ unsigned char
1228 // TCE:#define __UINT_LEAST16_MAX__ 65535
1229 // TCE:#define __UINT_LEAST16_TYPE__ unsigned short
1230 // TCE:#define __UINT_LEAST32_MAX__ 4294967295U
1231 // TCE:#define __UINT_LEAST32_TYPE__ unsigned int
1232 // TCE:#define __UINT_LEAST8_MAX__ 255
1233 // TCE:#define __UINT_LEAST8_TYPE__ unsigned char
1234 // TCE:#define __USER_LABEL_PREFIX__
1235 // TCE:#define __WCHAR_MAX__ 2147483647
1236 // TCE:#define __WCHAR_TYPE__ int
1237 // TCE:#define __WCHAR_WIDTH__ 32
1238 // TCE:#define __WINT_TYPE__ int
1239 // TCE:#define __WINT_WIDTH__ 32
1240 // TCE:#define __tce 1
1241 // TCE:#define __tce__ 1
1242 // TCE:#define tce 1
1244 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-scei-ps4 < /dev/null | FileCheck --match-full-lines --check-prefixes=PS4,PS4ONLY %s
1245 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-sie-ps5 < /dev/null | FileCheck --match-full-lines --check-prefixes=PS4,PS5ONLY %s
1247 // PS4:#define _LP64 1
1248 // PS4:#define __BIGGEST_ALIGNMENT__ 32
1249 // PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1250 // PS4:#define __CHAR16_TYPE__ unsigned short
1251 // PS4:#define __CHAR32_TYPE__ unsigned int
1252 // PS4:#define __CHAR_BIT__ 8
1253 // PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1254 // PS4:#define __DBL_DIG__ 15
1255 // PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
1256 // PS4:#define __DBL_HAS_DENORM__ 1
1257 // PS4:#define __DBL_HAS_INFINITY__ 1
1258 // PS4:#define __DBL_HAS_QUIET_NAN__ 1
1259 // PS4:#define __DBL_MANT_DIG__ 53
1260 // PS4:#define __DBL_MAX_10_EXP__ 308
1261 // PS4:#define __DBL_MAX_EXP__ 1024
1262 // PS4:#define __DBL_MAX__ 1.7976931348623157e+308
1263 // PS4:#define __DBL_MIN_10_EXP__ (-307)
1264 // PS4:#define __DBL_MIN_EXP__ (-1021)
1265 // PS4:#define __DBL_MIN__ 2.2250738585072014e-308
1266 // PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1267 // PS4:#define __ELF__ 1
1268 // PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1269 // PS4:#define __FLT_DIG__ 6
1270 // PS4:#define __FLT_EPSILON__ 1.19209290e-7F
1271 // PS4:#define __FLT_HAS_DENORM__ 1
1272 // PS4:#define __FLT_HAS_INFINITY__ 1
1273 // PS4:#define __FLT_HAS_QUIET_NAN__ 1
1274 // PS4:#define __FLT_MANT_DIG__ 24
1275 // PS4:#define __FLT_MAX_10_EXP__ 38
1276 // PS4:#define __FLT_MAX_EXP__ 128
1277 // PS4:#define __FLT_MAX__ 3.40282347e+38F
1278 // PS4:#define __FLT_MIN_10_EXP__ (-37)
1279 // PS4:#define __FLT_MIN_EXP__ (-125)
1280 // PS4:#define __FLT_MIN__ 1.17549435e-38F
1281 // PS4:#define __FLT_RADIX__ 2
1282 // PS4:#define __FreeBSD__ 9
1283 // PS4:#define __FreeBSD_cc_version 900001
1284 // PS4:#define __INT16_TYPE__ short
1285 // PS4:#define __INT32_TYPE__ int
1286 // PS4:#define __INT64_C_SUFFIX__ L
1287 // PS4:#define __INT64_TYPE__ long int
1288 // PS4:#define __INT8_TYPE__ signed char
1289 // PS4:#define __INTMAX_MAX__ 9223372036854775807L
1290 // PS4:#define __INTMAX_TYPE__ long int
1291 // PS4:#define __INTMAX_WIDTH__ 64
1292 // PS4:#define __INTPTR_TYPE__ long int
1293 // PS4:#define __INTPTR_WIDTH__ 64
1294 // PS4:#define __INT_MAX__ 2147483647
1295 // PS4:#define __KPRINTF_ATTRIBUTE__ 1
1296 // PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
1297 // PS4:#define __LDBL_DIG__ 18
1298 // PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
1299 // PS4:#define __LDBL_HAS_DENORM__ 1
1300 // PS4:#define __LDBL_HAS_INFINITY__ 1
1301 // PS4:#define __LDBL_HAS_QUIET_NAN__ 1
1302 // PS4:#define __LDBL_MANT_DIG__ 64
1303 // PS4:#define __LDBL_MAX_10_EXP__ 4932
1304 // PS4:#define __LDBL_MAX_EXP__ 16384
1305 // PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
1306 // PS4:#define __LDBL_MIN_10_EXP__ (-4931)
1307 // PS4:#define __LDBL_MIN_EXP__ (-16381)
1308 // PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
1309 // PS4:#define __LITTLE_ENDIAN__ 1
1310 // PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
1311 // PS4:#define __LONG_MAX__ 9223372036854775807L
1312 // PS4:#define __LP64__ 1
1313 // PS4:#define __MMX__ 1
1314 // PS4:#define __NO_MATH_INLINES 1
1315 // PS4ONLY:#define __ORBIS__ 1
1316 // PS4:#define __POINTER_WIDTH__ 64
1317 // PS5ONLY:#define __PROSPERO__ 1
1318 // PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
1319 // PS4:#define __PTRDIFF_TYPE__ long int
1320 // PS4:#define __PTRDIFF_WIDTH__ 64
1321 // PS4:#define __REGISTER_PREFIX__
1322 // PS4:#define __SCE__ 1
1323 // PS4:#define __SCHAR_MAX__ 127
1324 // PS4:#define __SHRT_MAX__ 32767
1325 // PS4:#define __SIG_ATOMIC_MAX__ 2147483647
1326 // PS4:#define __SIG_ATOMIC_WIDTH__ 32
1327 // PS4:#define __SIZEOF_DOUBLE__ 8
1328 // PS4:#define __SIZEOF_FLOAT__ 4
1329 // PS4:#define __SIZEOF_INT__ 4
1330 // PS4:#define __SIZEOF_LONG_DOUBLE__ 16
1331 // PS4:#define __SIZEOF_LONG_LONG__ 8
1332 // PS4:#define __SIZEOF_LONG__ 8
1333 // PS4:#define __SIZEOF_POINTER__ 8
1334 // PS4:#define __SIZEOF_PTRDIFF_T__ 8
1335 // PS4:#define __SIZEOF_SHORT__ 2
1336 // PS4:#define __SIZEOF_SIZE_T__ 8
1337 // PS4:#define __SIZEOF_WCHAR_T__ 2
1338 // PS4:#define __SIZEOF_WINT_T__ 4
1339 // PS4:#define __SIZE_TYPE__ long unsigned int
1340 // PS4:#define __SIZE_WIDTH__ 64
1341 // PS4:#define __SSE2_MATH__ 1
1342 // PS4:#define __SSE2__ 1
1343 // PS4:#define __SSE_MATH__ 1
1344 // PS4:#define __SSE__ 1
1345 // PS4ONLY:#define __STDC_VERSION__ 199901L
1346 // PS5ONLY:#define __STDC_VERSION__ 201710L
1347 // PS4:#define __UINTMAX_TYPE__ long unsigned int
1348 // PS4:#define __USER_LABEL_PREFIX__
1349 // PS4:#define __WCHAR_MAX__ 65535
1350 // PS4:#define __WCHAR_TYPE__ unsigned short
1351 // PS4:#define __WCHAR_UNSIGNED__ 1
1352 // PS4:#define __WCHAR_WIDTH__ 16
1353 // PS4:#define __WINT_TYPE__ int
1354 // PS4:#define __WINT_WIDTH__ 32
1355 // PS4:#define __amd64 1
1356 // PS4:#define __amd64__ 1
1357 // PS4:#define __unix 1
1358 // PS4:#define __unix__ 1
1359 // PS4:#define __x86_64 1
1360 // PS4:#define __x86_64__ 1
1361 // PS4:#define unix 1
1363 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-scei-ps4 < /dev/null | FileCheck --match-full-lines --check-prefix PS4-CXX %s
1364 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-sie-ps5 < /dev/null | FileCheck --match-full-lines --check-prefix PS4-CXX %s
1365 // PS4-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 32UL
1367 // RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC-GNU %s
1368 // X86-64-DECLSPEC-GNU: #define __declspec{{.*}} __attribute__{{.*}}
1370 // RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC-MS %s
1371 // RUN: %clang_cc1 -E -dM -fdeclspec -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC-MS %s
1372 // X86-64-DECLSPEC-MS: #define __declspec{{.*}} __declspec{{.*}}
1374 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARCV9 %s
1375 // SPARCV9:#define __BIGGEST_ALIGNMENT__ 16
1376 // SPARCV9:#define __INT64_TYPE__ long int
1377 // SPARCV9:#define __INTMAX_C_SUFFIX__ L
1378 // SPARCV9:#define __INTMAX_TYPE__ long int
1379 // SPARCV9:#define __INTPTR_TYPE__ long int
1380 // SPARCV9:#define __LONG_MAX__ 9223372036854775807L
1381 // SPARCV9:#define __LP64__ 1
1382 // SPARCV9:#define __SIZEOF_LONG__ 8
1383 // SPARCV9:#define __SIZEOF_POINTER__ 8
1384 // SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
1386 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC64-OBSD %s
1387 // SPARC64-OBSD:#define __INT64_TYPE__ long long int
1388 // SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
1389 // SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
1390 // SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
1391 // SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
1393 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-kfreebsd-gnu < /dev/null | FileCheck -match-full-lines -check-prefix KFREEBSD-DEF %s
1394 // KFREEBSD-DEF:#define __FreeBSD_kernel__ 1
1395 // KFREEBSD-DEF:#define __GLIBC__ 1
1397 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i686-pc-kfreebsd-gnu < /dev/null | FileCheck -match-full-lines -check-prefix KFREEBSDI686-DEF %s
1398 // KFREEBSDI686-DEF:#define __FreeBSD_kernel__ 1
1399 // KFREEBSDI686-DEF:#define __GLIBC__ 1
1401 // RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSOURCE %s
1402 // RUN: %clang_cc1 -x c++ -triple sparc-rtems-elf -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSOURCE %s
1403 // GNUSOURCE:#define _GNU_SOURCE 1
1405 // Check that the GNUstep Objective-C ABI defines exist and are clamped at the
1406 // highest supported version.
1407 // RUN: %clang_cc1 -x objective-c -triple i386-unknown-freebsd -fobjc-runtime=gnustep-1.9 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSTEP1 %s
1408 // GNUSTEP1:#define __OBJC_GNUSTEP_RUNTIME_ABI__ 18
1409 // RUN: %clang_cc1 -x objective-c -triple i386-unknown-freebsd -fobjc-runtime=gnustep-2.5 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSTEP2 %s
1410 // GNUSTEP2:#define __OBJC_GNUSTEP_RUNTIME_ABI__ 20
1412 // RUN: %clang_cc1 -x c++ -fgnuc-version=4.2.1 -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
1413 // NORTTI: #define __GXX_ABI_VERSION {{.*}}
1414 // NORTTI-NOT:#define __GXX_RTTI
1415 // NORTTI:#define __STDC__ 1
1417 // RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID %s
1418 // ANDROID-NOT:#define __ANDROID_API__
1419 // ANDROID-NOT:#define __ANDROID_MIN_SDK_VERSION__
1420 // ANDROID:#define __ANDROID__ 1
1421 // ANDROID-NOT:#define __gnu_linux__
1423 // RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
1424 // I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
1426 // RUN: %clang_cc1 -x c++ -triple x86_64-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-ANDROID-CXX %s
1427 // X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
1429 // RUN: %clang_cc1 -triple arm-linux-androideabi20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID20 %s
1430 // ANDROID20:#define __ANDROID_API__ __ANDROID_MIN_SDK_VERSION__
1431 // ANDROID20:#define __ANDROID_MIN_SDK_VERSION__ 20
1432 // ANDROID20:#define __ANDROID__ 1
1433 // ANDROID-NOT:#define __gnu_linux__
1435 // RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
1436 // LANAI: #define __lanai__ 1
1438 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=amd64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1439 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1440 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1441 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1442 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1443 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1444 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1445 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1446 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1447 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1448 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
1449 // OPENBSD:#define __ELF__ 1
1450 // OPENBSD:#define __INT16_TYPE__ short
1451 // OPENBSD:#define __INT32_TYPE__ int
1452 // OPENBSD:#define __INT64_TYPE__ long long int
1453 // OPENBSD:#define __INT8_TYPE__ signed char
1454 // OPENBSD:#define __INTMAX_TYPE__ long long int
1455 // OPENBSD:#define __INTPTR_TYPE__ long int
1456 // OPENBSD:#define __OpenBSD__ 1
1457 // OPENBSD:#define __PTRDIFF_TYPE__ long int
1458 // OPENBSD:#define __SIZE_TYPE__ long unsigned int
1459 // OPENBSD:#define __UINT16_TYPE__ unsigned short
1460 // OPENBSD:#define __UINT32_TYPE__ unsigned int
1461 // OPENBSD:#define __UINT64_TYPE__ long long unsigned int
1462 // OPENBSD:#define __UINT8_TYPE__ unsigned char
1463 // OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
1464 // OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
1465 // OPENBSD:#define __WCHAR_TYPE__ int
1466 // OPENBSD:#define __WINT_TYPE__ int
1468 // RUN: %clang_cc1 -x c -std=c11 -E -dM -ffreestanding -triple=amd64-unknown-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD-STDC %s
1469 // RUN: %clang_cc1 -x c -std=gnu11 -E -dM -ffreestanding -triple=amd64-unknown-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD-STDC %s
1470 // RUN: %clang_cc1 -x c -std=c17 -E -dM -ffreestanding -triple=amd64-unknown-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD-STDC %s
1471 // OPENBSD-STDC:#define __STDC_NO_THREADS__ 1
1473 // RUN: %clang_cc1 -x c -std=c99 -E -dM -ffreestanding -triple=amd64-unknown-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD-STDC-N %s
1474 // OPENBSD-STDC-N-NOT:#define __STDC_NO_THREADS__ 1
1476 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=xcore-none-none < /dev/null | FileCheck -match-full-lines -check-prefix XCORE %s
1477 // XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1478 // XCORE:#define __LITTLE_ENDIAN__ 1
1479 // XCORE:#define __XS1B__ 1
1480 // XCORE:#define __xcore__ 1
1482 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm32-unknown-unknown \
1483 // RUN: < /dev/null \
1484 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY32 %s
1485 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm64-unknown-unknown \
1486 // RUN: < /dev/null \
1487 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY64 %s
1488 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm32-emscripten \
1489 // RUN: < /dev/null \
1490 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY32,EMSCRIPTEN %s
1491 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm32-emscripten -pthread -target-feature +atomics -target-feature +bulk-memory \
1492 // RUN: < /dev/null \
1493 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY32,EMSCRIPTEN,EMSCRIPTEN-THREADS %s
1494 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm64-emscripten \
1495 // RUN: < /dev/null \
1496 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY64,EMSCRIPTEN %s
1497 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm32-wasi \
1498 // RUN: < /dev/null \
1499 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY32,WEBASSEMBLY-WASI %s
1500 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm64-wasi \
1501 // RUN: < /dev/null \
1502 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY64,WEBASSEMBLY-WASI %s
1503 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm32-unknown-unknown -x c++ \
1504 // RUN: < /dev/null \
1505 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY-CXX %s
1506 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=wasm32-unknown-unknown -x c++ -pthread -target-feature +atomics -target-feature +bulk-memory \
1507 // RUN: < /dev/null \
1508 // RUN: | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY-CXX-ATOMICS %s
1510 // WEBASSEMBLY32:#define _ILP32 1
1511 // WEBASSEMBLY32-NOT:#define _LP64
1512 // WEBASSEMBLY64-NOT:#define _ILP32
1513 // WEBASSEMBLY64:#define _LP64 1
1514 // EMSCRIPTEN-THREADS:#define _REENTRANT 1
1515 // WEBASSEMBLY-NEXT:#define __ATOMIC_ACQUIRE 2
1516 // WEBASSEMBLY-NEXT:#define __ATOMIC_ACQ_REL 4
1517 // WEBASSEMBLY-NEXT:#define __ATOMIC_CONSUME 1
1518 // WEBASSEMBLY-NEXT:#define __ATOMIC_RELAXED 0
1519 // WEBASSEMBLY-NEXT:#define __ATOMIC_RELEASE 3
1520 // WEBASSEMBLY-NEXT:#define __ATOMIC_SEQ_CST 5
1521 // WEBASSEMBLY-NEXT:#define __BIGGEST_ALIGNMENT__ 16
1522 // WEBASSEMBLY-NEXT:#define __BITINT_MAXWIDTH__ 128
1523 // WEBASSEMBLY-NEXT:#define __BOOL_WIDTH__ 8
1524 // WEBASSEMBLY-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1525 // WEBASSEMBLY-NEXT:#define __CHAR16_TYPE__ unsigned short
1526 // WEBASSEMBLY-NEXT:#define __CHAR32_TYPE__ unsigned int
1527 // WEBASSEMBLY-NEXT:#define __CHAR_BIT__ 8
1528 // WEBASSEMBLY-NOT:#define __CHAR_UNSIGNED__
1529 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
1530 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
1531 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
1532 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
1533 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
1534 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
1535 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
1536 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
1537 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
1538 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
1539 // WEBASSEMBLY-NEXT:#define __CONSTANT_CFSTRINGS__ 1
1540 // WEBASSEMBLY-NEXT:#define __DBL_DECIMAL_DIG__ 17
1541 // WEBASSEMBLY-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1542 // WEBASSEMBLY-NEXT:#define __DBL_DIG__ 15
1543 // WEBASSEMBLY-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
1544 // WEBASSEMBLY-NEXT:#define __DBL_HAS_DENORM__ 1
1545 // WEBASSEMBLY-NEXT:#define __DBL_HAS_INFINITY__ 1
1546 // WEBASSEMBLY-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
1547 // WEBASSEMBLY-NEXT:#define __DBL_MANT_DIG__ 53
1548 // WEBASSEMBLY-NEXT:#define __DBL_MAX_10_EXP__ 308
1549 // WEBASSEMBLY-NEXT:#define __DBL_MAX_EXP__ 1024
1550 // WEBASSEMBLY-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
1551 // WEBASSEMBLY-NEXT:#define __DBL_MIN_10_EXP__ (-307)
1552 // WEBASSEMBLY-NEXT:#define __DBL_MIN_EXP__ (-1021)
1553 // WEBASSEMBLY-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
1554 // WEBASSEMBLY-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1555 // WEBASSEMBLY-NOT:#define __ELF__
1556 // EMSCRIPTEN-THREADS-NEXT:#define __EMSCRIPTEN_PTHREADS__ 1
1557 // EMSCRIPTEN-NEXT:#define __EMSCRIPTEN__ 1
1558 // WEBASSEMBLY-NEXT:#define __FINITE_MATH_ONLY__ 0
1559 // WEBASSEMBLY-NEXT:#define __FLOAT128__ 1
1560 // WEBASSEMBLY-NOT:#define __FLT16_DECIMAL_DIG__
1561 // WEBASSEMBLY-NOT:#define __FLT16_DENORM_MIN__
1562 // WEBASSEMBLY-NOT:#define __FLT16_DIG__
1563 // WEBASSEMBLY-NOT:#define __FLT16_EPSILON__
1564 // WEBASSEMBLY-NOT:#define __FLT16_HAS_DENORM__
1565 // WEBASSEMBLY-NOT:#define __FLT16_HAS_INFINITY__
1566 // WEBASSEMBLY-NOT:#define __FLT16_HAS_QUIET_NAN__
1567 // WEBASSEMBLY-NOT:#define __FLT16_MANT_DIG__
1568 // WEBASSEMBLY-NOT:#define __FLT16_MAX_10_EXP__
1569 // WEBASSEMBLY-NOT:#define __FLT16_MAX_EXP__
1570 // WEBASSEMBLY-NOT:#define __FLT16_MAX__
1571 // WEBASSEMBLY-NOT:#define __FLT16_MIN_10_EXP__
1572 // WEBASSEMBLY-NOT:#define __FLT16_MIN_EXP__
1573 // WEBASSEMBLY-NOT:#define __FLT16_MIN__
1574 // WEBASSEMBLY-NEXT:#define __FLT_DECIMAL_DIG__ 9
1575 // WEBASSEMBLY-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1576 // WEBASSEMBLY-NEXT:#define __FLT_DIG__ 6
1577 // WEBASSEMBLY-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
1578 // WEBASSEMBLY-NEXT:#define __FLT_HAS_DENORM__ 1
1579 // WEBASSEMBLY-NEXT:#define __FLT_HAS_INFINITY__ 1
1580 // WEBASSEMBLY-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
1581 // WEBASSEMBLY-NEXT:#define __FLT_MANT_DIG__ 24
1582 // WEBASSEMBLY-NEXT:#define __FLT_MAX_10_EXP__ 38
1583 // WEBASSEMBLY-NEXT:#define __FLT_MAX_EXP__ 128
1584 // WEBASSEMBLY-NEXT:#define __FLT_MAX__ 3.40282347e+38F
1585 // WEBASSEMBLY-NEXT:#define __FLT_MIN_10_EXP__ (-37)
1586 // WEBASSEMBLY-NEXT:#define __FLT_MIN_EXP__ (-125)
1587 // WEBASSEMBLY-NEXT:#define __FLT_MIN__ 1.17549435e-38F
1588 // WEBASSEMBLY-NEXT:#define __FLT_RADIX__ 2
1589 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
1590 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
1591 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
1592 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
1593 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
1594 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
1595 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
1596 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
1597 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
1598 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
1599 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
1600 // WEBASSEMBLY-NEXT:#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
1601 // WEBASSEMBLY-NEXT:#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
1602 // WEBASSEMBLY-NEXT:#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
1603 // WEBASSEMBLY-NEXT:#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1
1604 // WEBASSEMBLY-NEXT:#define __GNUC_MINOR__ {{.*}}
1605 // WEBASSEMBLY-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
1606 // WEBASSEMBLY-NEXT:#define __GNUC_STDC_INLINE__ 1
1607 // WEBASSEMBLY-NEXT:#define __GNUC__ {{.*}}
1608 // WEBASSEMBLY-NEXT:#define __GXX_ABI_VERSION 1002
1609 // WEBASSEMBLY32-NEXT:#define __ILP32__ 1
1610 // WEBASSEMBLY64-NOT:#define __ILP32__
1611 // WEBASSEMBLY-NEXT:#define __INT16_C_SUFFIX__
1612 // WEBASSEMBLY-NEXT:#define __INT16_FMTd__ "hd"
1613 // WEBASSEMBLY-NEXT:#define __INT16_FMTi__ "hi"
1614 // WEBASSEMBLY-NEXT:#define __INT16_MAX__ 32767
1615 // WEBASSEMBLY-NEXT:#define __INT16_TYPE__ short
1616 // WEBASSEMBLY-NEXT:#define __INT32_C_SUFFIX__
1617 // WEBASSEMBLY-NEXT:#define __INT32_FMTd__ "d"
1618 // WEBASSEMBLY-NEXT:#define __INT32_FMTi__ "i"
1619 // WEBASSEMBLY-NEXT:#define __INT32_MAX__ 2147483647
1620 // WEBASSEMBLY-NEXT:#define __INT32_TYPE__ int
1621 // WEBASSEMBLY-NEXT:#define __INT64_C_SUFFIX__ LL
1622 // WEBASSEMBLY-NEXT:#define __INT64_FMTd__ "lld"
1623 // WEBASSEMBLY-NEXT:#define __INT64_FMTi__ "lli"
1624 // WEBASSEMBLY-NEXT:#define __INT64_MAX__ 9223372036854775807LL
1625 // WEBASSEMBLY-NEXT:#define __INT64_TYPE__ long long int
1626 // WEBASSEMBLY-NEXT:#define __INT8_C_SUFFIX__
1627 // WEBASSEMBLY-NEXT:#define __INT8_FMTd__ "hhd"
1628 // WEBASSEMBLY-NEXT:#define __INT8_FMTi__ "hhi"
1629 // WEBASSEMBLY-NEXT:#define __INT8_MAX__ 127
1630 // WEBASSEMBLY-NEXT:#define __INT8_TYPE__ signed char
1631 // WEBASSEMBLY-NEXT:#define __INTMAX_C_SUFFIX__ LL
1632 // WEBASSEMBLY-NEXT:#define __INTMAX_FMTd__ "lld"
1633 // WEBASSEMBLY-NEXT:#define __INTMAX_FMTi__ "lli"
1634 // WEBASSEMBLY-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
1635 // WEBASSEMBLY-NEXT:#define __INTMAX_TYPE__ long long int
1636 // WEBASSEMBLY-NEXT:#define __INTMAX_WIDTH__ 64
1637 // WEBASSEMBLY-NEXT:#define __INTPTR_FMTd__ "ld"
1638 // WEBASSEMBLY-NEXT:#define __INTPTR_FMTi__ "li"
1639 // WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647L
1640 // WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
1641 // WEBASSEMBLY-NEXT:#define __INTPTR_TYPE__ long int
1642 // WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
1643 // WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
1644 // WEBASSEMBLY-NEXT:#define __INT_FAST16_FMTd__ "hd"
1645 // WEBASSEMBLY-NEXT:#define __INT_FAST16_FMTi__ "hi"
1646 // WEBASSEMBLY-NEXT:#define __INT_FAST16_MAX__ 32767
1647 // WEBASSEMBLY-NEXT:#define __INT_FAST16_TYPE__ short
1648 // WEBASSEMBLY-NEXT:#define __INT_FAST16_WIDTH__ 16
1649 // WEBASSEMBLY-NEXT:#define __INT_FAST32_FMTd__ "d"
1650 // WEBASSEMBLY-NEXT:#define __INT_FAST32_FMTi__ "i"
1651 // WEBASSEMBLY-NEXT:#define __INT_FAST32_MAX__ 2147483647
1652 // WEBASSEMBLY-NEXT:#define __INT_FAST32_TYPE__ int
1653 // WEBASSEMBLY-NEXT:#define __INT_FAST32_WIDTH__ 32
1654 // WEBASSEMBLY-NEXT:#define __INT_FAST64_FMTd__ "lld"
1655 // WEBASSEMBLY-NEXT:#define __INT_FAST64_FMTi__ "lli"
1656 // WEBASSEMBLY-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
1657 // WEBASSEMBLY-NEXT:#define __INT_FAST64_TYPE__ long long int
1658 // WEBASSEMBLY-NEXT:#define __INT_FAST64_WIDTH__ 64
1659 // WEBASSEMBLY-NEXT:#define __INT_FAST8_FMTd__ "hhd"
1660 // WEBASSEMBLY-NEXT:#define __INT_FAST8_FMTi__ "hhi"
1661 // WEBASSEMBLY-NEXT:#define __INT_FAST8_MAX__ 127
1662 // WEBASSEMBLY-NEXT:#define __INT_FAST8_TYPE__ signed char
1663 // WEBASSEMBLY-NEXT:#define __INT_FAST8_WIDTH__ 8
1664 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_FMTd__ "hd"
1665 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_FMTi__ "hi"
1666 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_MAX__ 32767
1667 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_TYPE__ short
1668 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_WIDTH__ 16
1669 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_FMTd__ "d"
1670 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_FMTi__ "i"
1671 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_MAX__ 2147483647
1672 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_TYPE__ int
1673 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_WIDTH__ 32
1674 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_FMTd__ "lld"
1675 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_FMTi__ "lli"
1676 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1677 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_TYPE__ long long int
1678 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_WIDTH__ 64
1679 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
1680 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
1681 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_MAX__ 127
1682 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_TYPE__ signed char
1683 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_WIDTH__ 8
1684 // WEBASSEMBLY-NEXT:#define __INT_MAX__ 2147483647
1685 // WEBASSEMBLY-NEXT:#define __INT_WIDTH__ 32
1686 // WEBASSEMBLY-NEXT:#define __LDBL_DECIMAL_DIG__ 36
1687 // WEBASSEMBLY-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1688 // WEBASSEMBLY-NEXT:#define __LDBL_DIG__ 33
1689 // WEBASSEMBLY-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1690 // WEBASSEMBLY-NEXT:#define __LDBL_HAS_DENORM__ 1
1691 // WEBASSEMBLY-NEXT:#define __LDBL_HAS_INFINITY__ 1
1692 // WEBASSEMBLY-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
1693 // WEBASSEMBLY-NEXT:#define __LDBL_MANT_DIG__ 113
1694 // WEBASSEMBLY-NEXT:#define __LDBL_MAX_10_EXP__ 4932
1695 // WEBASSEMBLY-NEXT:#define __LDBL_MAX_EXP__ 16384
1696 // WEBASSEMBLY-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1697 // WEBASSEMBLY-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
1698 // WEBASSEMBLY-NEXT:#define __LDBL_MIN_EXP__ (-16381)
1699 // WEBASSEMBLY-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1700 // WEBASSEMBLY-NEXT:#define __LITTLE_ENDIAN__ 1
1701 // WEBASSEMBLY-NEXT:#define __LLONG_WIDTH__ 64
1702 // WEBASSEMBLY-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
1703 // WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
1704 // WEBASSEMBLY32-NOT:#define __LP64__
1705 // WEBASSEMBLY32-NEXT:#define __LONG_WIDTH__ 32
1706 // WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
1707 // WEBASSEMBLY64-NEXT:#define __LONG_WIDTH__ 64
1708 // WEBASSEMBLY64-NEXT:#define __LP64__ 1
1709 // WEBASSEMBLY-NEXT:#define __NO_INLINE__ 1
1710 // WEBASSEMBLY-NEXT:#define __NO_MATH_ERRNO__ 1
1711 // WEBASSEMBLY-NEXT:#define __OBJC_BOOL_IS_BOOL 0
1712 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES 3
1713 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_DEVICE 2
1714 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_SUB_GROUP 4
1715 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_GROUP 1
1716 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_ITEM 0
1717 // WEBASSEMBLY-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
1718 // WEBASSEMBLY-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
1719 // WEBASSEMBLY-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
1720 // WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
1721 // WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
1722 // WEBASSEMBLY-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
1723 // WEBASSEMBLY-NEXT:#define __PTRDIFF_FMTd__ "ld"
1724 // WEBASSEMBLY-NEXT:#define __PTRDIFF_FMTi__ "li"
1725 // WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647L
1726 // WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
1727 // WEBASSEMBLY-NEXT:#define __PTRDIFF_TYPE__ long int
1728 // WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
1729 // WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
1730 // WEBASSEMBLY-NOT:#define __REGISTER_PREFIX__
1731 // WEBASSEMBLY-NEXT:#define __SCHAR_MAX__ 127
1732 // WEBASSEMBLY-NEXT:#define __SHRT_MAX__ 32767
1733 // WEBASSEMBLY-NEXT:#define __SHRT_WIDTH__ 16
1734 // WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
1735 // WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
1736 // WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
1737 // WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
1738 // WEBASSEMBLY-NEXT:#define __SIZEOF_DOUBLE__ 8
1739 // WEBASSEMBLY-NEXT:#define __SIZEOF_FLOAT__ 4
1740 // WEBASSEMBLY-NEXT:#define __SIZEOF_INT128__ 16
1741 // WEBASSEMBLY-NEXT:#define __SIZEOF_INT__ 4
1742 // WEBASSEMBLY-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
1743 // WEBASSEMBLY-NEXT:#define __SIZEOF_LONG_LONG__ 8
1744 // WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
1745 // WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
1746 // WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
1747 // WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
1748 // WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
1749 // WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
1750 // WEBASSEMBLY-NEXT:#define __SIZEOF_SHORT__ 2
1751 // WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
1752 // WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
1753 // WEBASSEMBLY-NEXT:#define __SIZEOF_WCHAR_T__ 4
1754 // WEBASSEMBLY-NEXT:#define __SIZEOF_WINT_T__ 4
1755 // WEBASSEMBLY-NEXT:#define __SIZE_FMTX__ "lX"
1756 // WEBASSEMBLY-NEXT:#define __SIZE_FMTo__ "lo"
1757 // WEBASSEMBLY-NEXT:#define __SIZE_FMTu__ "lu"
1758 // WEBASSEMBLY-NEXT:#define __SIZE_FMTx__ "lx"
1759 // WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295UL
1760 // WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
1761 // WEBASSEMBLY-NEXT:#define __SIZE_TYPE__ long unsigned int
1762 // WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
1763 // WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
1764 // WEBASSEMBLY-NEXT:#define __STDC_HOSTED__ 0
1765 // WEBASSEMBLY-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
1766 // WEBASSEMBLY-NOT:#define __STDC_NO_ATOMICS__
1767 // WEBASSEMBLY-NOT:#define __STDC_NO_COMPLEX__
1768 // WEBASSEMBLY-NOT:#define __STDC_NO_VLA__
1769 // WEBASSEMBLY-NOT:#define __STDC_NO_THREADS__
1770 // WEBASSEMBLY-NEXT:#define __STDC_UTF_16__ 1
1771 // WEBASSEMBLY-NEXT:#define __STDC_UTF_32__ 1
1772 // WEBASSEMBLY-NEXT:#define __STDC_VERSION__ 201710L
1773 // WEBASSEMBLY-NEXT:#define __STDC__ 1
1774 // WEBASSEMBLY-NEXT:#define __UINT16_C_SUFFIX__
1775 // WEBASSEMBLY-NEXT:#define __UINT16_FMTX__ "hX"
1776 // WEBASSEMBLY-NEXT:#define __UINT16_FMTo__ "ho"
1777 // WEBASSEMBLY-NEXT:#define __UINT16_FMTu__ "hu"
1778 // WEBASSEMBLY-NEXT:#define __UINT16_FMTx__ "hx"
1779 // WEBASSEMBLY-NEXT:#define __UINT16_MAX__ 65535
1780 // WEBASSEMBLY-NEXT:#define __UINT16_TYPE__ unsigned short
1781 // WEBASSEMBLY-NEXT:#define __UINT32_C_SUFFIX__ U
1782 // WEBASSEMBLY-NEXT:#define __UINT32_FMTX__ "X"
1783 // WEBASSEMBLY-NEXT:#define __UINT32_FMTo__ "o"
1784 // WEBASSEMBLY-NEXT:#define __UINT32_FMTu__ "u"
1785 // WEBASSEMBLY-NEXT:#define __UINT32_FMTx__ "x"
1786 // WEBASSEMBLY-NEXT:#define __UINT32_MAX__ 4294967295U
1787 // WEBASSEMBLY-NEXT:#define __UINT32_TYPE__ unsigned int
1788 // WEBASSEMBLY-NEXT:#define __UINT64_C_SUFFIX__ ULL
1789 // WEBASSEMBLY-NEXT:#define __UINT64_FMTX__ "llX"
1790 // WEBASSEMBLY-NEXT:#define __UINT64_FMTo__ "llo"
1791 // WEBASSEMBLY-NEXT:#define __UINT64_FMTu__ "llu"
1792 // WEBASSEMBLY-NEXT:#define __UINT64_FMTx__ "llx"
1793 // WEBASSEMBLY-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
1794 // WEBASSEMBLY-NEXT:#define __UINT64_TYPE__ long long unsigned int
1795 // WEBASSEMBLY-NEXT:#define __UINT8_C_SUFFIX__
1796 // WEBASSEMBLY-NEXT:#define __UINT8_FMTX__ "hhX"
1797 // WEBASSEMBLY-NEXT:#define __UINT8_FMTo__ "hho"
1798 // WEBASSEMBLY-NEXT:#define __UINT8_FMTu__ "hhu"
1799 // WEBASSEMBLY-NEXT:#define __UINT8_FMTx__ "hhx"
1800 // WEBASSEMBLY-NEXT:#define __UINT8_MAX__ 255
1801 // WEBASSEMBLY-NEXT:#define __UINT8_TYPE__ unsigned char
1802 // WEBASSEMBLY-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
1803 // WEBASSEMBLY-NEXT:#define __UINTMAX_FMTX__ "llX"
1804 // WEBASSEMBLY-NEXT:#define __UINTMAX_FMTo__ "llo"
1805 // WEBASSEMBLY-NEXT:#define __UINTMAX_FMTu__ "llu"
1806 // WEBASSEMBLY-NEXT:#define __UINTMAX_FMTx__ "llx"
1807 // WEBASSEMBLY-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
1808 // WEBASSEMBLY-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
1809 // WEBASSEMBLY-NEXT:#define __UINTMAX_WIDTH__ 64
1810 // WEBASSEMBLY-NEXT:#define __UINTPTR_FMTX__ "lX"
1811 // WEBASSEMBLY-NEXT:#define __UINTPTR_FMTo__ "lo"
1812 // WEBASSEMBLY-NEXT:#define __UINTPTR_FMTu__ "lu"
1813 // WEBASSEMBLY-NEXT:#define __UINTPTR_FMTx__ "lx"
1814 // WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295UL
1815 // WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
1816 // WEBASSEMBLY-NEXT:#define __UINTPTR_TYPE__ long unsigned int
1817 // WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
1818 // WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
1819 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTX__ "hX"
1820 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTo__ "ho"
1821 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTu__ "hu"
1822 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTx__ "hx"
1823 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_MAX__ 65535
1824 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
1825 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTX__ "X"
1826 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTo__ "o"
1827 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTu__ "u"
1828 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTx__ "x"
1829 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
1830 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
1831 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTX__ "llX"
1832 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTo__ "llo"
1833 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTu__ "llu"
1834 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTx__ "llx"
1835 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1836 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
1837 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
1838 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTo__ "hho"
1839 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
1840 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
1841 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_MAX__ 255
1842 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
1843 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
1844 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
1845 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
1846 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
1847 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_MAX__ 65535
1848 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
1849 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTX__ "X"
1850 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTo__ "o"
1851 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTu__ "u"
1852 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTx__ "x"
1853 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
1854 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
1855 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
1856 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
1857 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
1858 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
1859 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1860 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
1861 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
1862 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
1863 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
1864 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
1865 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_MAX__ 255
1866 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
1867 // WEBASSEMBLY-NEXT:#define __USER_LABEL_PREFIX__
1868 // WEBASSEMBLY-NEXT:#define __VERSION__ "{{.*}}"
1869 // WEBASSEMBLY-NEXT:#define __WCHAR_MAX__ 2147483647
1870 // WEBASSEMBLY-NEXT:#define __WCHAR_TYPE__ int
1871 // WEBASSEMBLY-NOT:#define __WCHAR_UNSIGNED__
1872 // WEBASSEMBLY-NEXT:#define __WCHAR_WIDTH__ 32
1873 // WEBASSEMBLY-NEXT:#define __WINT_MAX__ 2147483647
1874 // WEBASSEMBLY-NEXT:#define __WINT_TYPE__ int
1875 // WEBASSEMBLY-NOT:#define __WINT_UNSIGNED__
1876 // WEBASSEMBLY-NEXT:#define __WINT_WIDTH__ 32
1877 // WEBASSEMBLY-NEXT:#define __clang__ 1
1878 // WEBASSEMBLY-NEXT:#define __clang_literal_encoding__ {{.*}}
1879 // WEBASSEMBLY-NEXT:#define __clang_major__ {{.*}}
1880 // WEBASSEMBLY-NEXT:#define __clang_minor__ {{.*}}
1881 // WEBASSEMBLY-NEXT:#define __clang_patchlevel__ {{.*}}
1882 // WEBASSEMBLY-NEXT:#define __clang_version__ "{{.*}}"
1883 // WEBASSEMBLY-NEXT:#define __clang_wide_literal_encoding__ {{.*}}
1884 // WEBASSEMBLY-NEXT:#define __llvm__ 1
1885 // WEBASSEMBLY-WASI-NOT:#define __unix
1886 // WEBASSEMBLY-WASI-NOT:#define __unix__
1887 // EMSCRIPTEN-NEXT:#define __unix 1
1888 // EMSCRIPTEN-NEXT:#define __unix__ 1
1889 // WEBASSEMBLY-WASI-NEXT:#define __wasi__ 1
1890 // WEBASSEMBLY-NOT:#define __wasm_simd128__
1891 // WEBASSEMBLY-NOT:#define __wasm_simd256__
1892 // WEBASSEMBLY-NOT:#define __wasm_simd512__
1893 // WEBASSEMBLY-NEXT:#define __wasm 1
1894 // WEBASSEMBLY32-NEXT:#define __wasm32 1
1895 // WEBASSEMBLY64-NOT:#define __wasm32
1896 // WEBASSEMBLY32-NEXT:#define __wasm32__ 1
1897 // WEBASSEMBLY64-NOT:#define __wasm32__
1898 // WEBASSEMBLY32-NOT:#define __wasm64__
1899 // WEBASSEMBLY32-NOT:#define __wasm64
1900 // WEBASSEMBLY64-NEXT:#define __wasm64 1
1901 // WEBASSEMBLY64-NEXT:#define __wasm64__ 1
1902 // WEBASSEMBLY-NEXT:#define __wasm__ 1
1903 // EMSCRIPTEN:#define unix 1
1904 // WEBASSEMBLY-WASI-NOT:#define unix 1
1905 // WEBASSEMBLY-CXX-NOT:_REENTRANT
1906 // WEBASSEMBLY-CXX-NOT:__STDCPP_THREADS__
1907 // WEBASSEMBLY-CXX-ATOMICS:#define _REENTRANT 1
1908 // WEBASSEMBLY-CXX-ATOMICS:#define __STDCPP_THREADS__ 1
1910 // RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
1911 // CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
1913 // RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
1914 // CYGWIN-X64: #define __USER_LABEL_PREFIX__
1916 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=avr \
1917 // RUN: < /dev/null \
1918 // RUN: | FileCheck -match-full-lines -check-prefix=AVR %s
1920 // AVR:#define __ATOMIC_ACQUIRE 2
1921 // AVR:#define __ATOMIC_ACQ_REL 4
1922 // AVR:#define __ATOMIC_CONSUME 1
1923 // AVR:#define __ATOMIC_RELAXED 0
1924 // AVR:#define __ATOMIC_RELEASE 3
1925 // AVR:#define __ATOMIC_SEQ_CST 5
1926 // AVR:#define __AVR__ 1
1927 // AVR:#define __BIGGEST_ALIGNMENT__ 1
1928 // AVR:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1929 // AVR:#define __CHAR16_TYPE__ unsigned int
1930 // AVR:#define __CHAR32_TYPE__ long unsigned int
1931 // AVR:#define __CHAR_BIT__ 8
1932 // AVR:#define __DBL_DECIMAL_DIG__ 9
1933 // AVR:#define __DBL_DENORM_MIN__ 1.40129846e-45
1934 // AVR:#define __DBL_DIG__ 6
1935 // AVR:#define __DBL_EPSILON__ 1.19209290e-7
1936 // AVR:#define __DBL_HAS_DENORM__ 1
1937 // AVR:#define __DBL_HAS_INFINITY__ 1
1938 // AVR:#define __DBL_HAS_QUIET_NAN__ 1
1939 // AVR:#define __DBL_MANT_DIG__ 24
1940 // AVR:#define __DBL_MAX_10_EXP__ 38
1941 // AVR:#define __DBL_MAX_EXP__ 128
1942 // AVR:#define __DBL_MAX__ 3.40282347e+38
1943 // AVR:#define __DBL_MIN_10_EXP__ (-37)
1944 // AVR:#define __DBL_MIN_EXP__ (-125)
1945 // AVR:#define __DBL_MIN__ 1.17549435e-38
1946 // AVR:#define __FINITE_MATH_ONLY__ 0
1947 // AVR:#define __FLT_DECIMAL_DIG__ 9
1948 // AVR:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1949 // AVR:#define __FLT_DIG__ 6
1950 // AVR:#define __FLT_EPSILON__ 1.19209290e-7F
1951 // AVR:#define __FLT_HAS_DENORM__ 1
1952 // AVR:#define __FLT_HAS_INFINITY__ 1
1953 // AVR:#define __FLT_HAS_QUIET_NAN__ 1
1954 // AVR:#define __FLT_MANT_DIG__ 24
1955 // AVR:#define __FLT_MAX_10_EXP__ 38
1956 // AVR:#define __FLT_MAX_EXP__ 128
1957 // AVR:#define __FLT_MAX__ 3.40282347e+38F
1958 // AVR:#define __FLT_MIN_10_EXP__ (-37)
1959 // AVR:#define __FLT_MIN_EXP__ (-125)
1960 // AVR:#define __FLT_MIN__ 1.17549435e-38F
1961 // AVR:#define __FLT_RADIX__ 2
1962 // AVR:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1
1963 // AVR:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
1964 // AVR:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
1965 // AVR:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1
1966 // AVR:#define __GCC_ATOMIC_INT_LOCK_FREE 1
1967 // AVR:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
1968 // AVR:#define __GCC_ATOMIC_LONG_LOCK_FREE 1
1969 // AVR:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1
1970 // AVR:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1
1971 // AVR:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
1972 // AVR:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
1973 // AVR:#define __GXX_ABI_VERSION 1002
1974 // AVR:#define __INT16_C_SUFFIX__
1975 // AVR:#define __INT16_MAX__ 32767
1976 // AVR:#define __INT16_TYPE__ int
1977 // AVR:#define __INT32_C_SUFFIX__ L
1978 // AVR:#define __INT32_MAX__ 2147483647L
1979 // AVR:#define __INT32_TYPE__ long int
1980 // AVR:#define __INT64_C_SUFFIX__ LL
1981 // AVR:#define __INT64_MAX__ 9223372036854775807LL
1982 // AVR:#define __INT64_TYPE__ long long int
1983 // AVR:#define __INT8_C_SUFFIX__
1984 // AVR:#define __INT8_MAX__ 127
1985 // AVR:#define __INT8_TYPE__ signed char
1986 // AVR:#define __INTMAX_C_SUFFIX__ LL
1987 // AVR:#define __INTMAX_MAX__ 9223372036854775807LL
1988 // AVR:#define __INTMAX_TYPE__ long long int
1989 // AVR:#define __INTPTR_MAX__ 32767
1990 // AVR:#define __INTPTR_TYPE__ int
1991 // AVR:#define __INT_FAST16_MAX__ 32767
1992 // AVR:#define __INT_FAST16_TYPE__ int
1993 // AVR:#define __INT_FAST32_MAX__ 2147483647L
1994 // AVR:#define __INT_FAST32_TYPE__ long int
1995 // AVR:#define __INT_FAST64_MAX__ 9223372036854775807LL
1996 // AVR:#define __INT_FAST64_TYPE__ long long int
1997 // AVR:#define __INT_FAST8_MAX__ 127
1998 // AVR:#define __INT_FAST8_TYPE__ signed char
1999 // AVR:#define __INT_LEAST16_MAX__ 32767
2000 // AVR:#define __INT_LEAST16_TYPE__ int
2001 // AVR:#define __INT_LEAST32_MAX__ 2147483647L
2002 // AVR:#define __INT_LEAST32_TYPE__ long int
2003 // AVR:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2004 // AVR:#define __INT_LEAST64_TYPE__ long long int
2005 // AVR:#define __INT_LEAST8_MAX__ 127
2006 // AVR:#define __INT_LEAST8_TYPE__ signed char
2007 // AVR:#define __INT_MAX__ 32767
2008 // AVR:#define __LDBL_DECIMAL_DIG__ 9
2009 // AVR:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
2010 // AVR:#define __LDBL_DIG__ 6
2011 // AVR:#define __LDBL_EPSILON__ 1.19209290e-7L
2012 // AVR:#define __LDBL_HAS_DENORM__ 1
2013 // AVR:#define __LDBL_HAS_INFINITY__ 1
2014 // AVR:#define __LDBL_HAS_QUIET_NAN__ 1
2015 // AVR:#define __LDBL_MANT_DIG__ 24
2016 // AVR:#define __LDBL_MAX_10_EXP__ 38
2017 // AVR:#define __LDBL_MAX_EXP__ 128
2018 // AVR:#define __LDBL_MAX__ 3.40282347e+38L
2019 // AVR:#define __LDBL_MIN_10_EXP__ (-37)
2020 // AVR:#define __LDBL_MIN_EXP__ (-125)
2021 // AVR:#define __LDBL_MIN__ 1.17549435e-38L
2022 // AVR:#define __LONG_LONG_MAX__ 9223372036854775807LL
2023 // AVR:#define __LONG_MAX__ 2147483647L
2024 // AVR:#define __NO_INLINE__ 1
2025 // AVR:#define __ORDER_BIG_ENDIAN__ 4321
2026 // AVR:#define __ORDER_LITTLE_ENDIAN__ 1234
2027 // AVR:#define __ORDER_PDP_ENDIAN__ 3412
2028 // AVR:#define __PRAGMA_REDEFINE_EXTNAME 1
2029 // AVR:#define __PTRDIFF_MAX__ 32767
2030 // AVR:#define __PTRDIFF_TYPE__ int
2031 // AVR:#define __SCHAR_MAX__ 127
2032 // AVR:#define __SHRT_MAX__ 32767
2033 // AVR:#define __SIG_ATOMIC_MAX__ 127
2034 // AVR:#define __SIG_ATOMIC_WIDTH__ 8
2035 // AVR:#define __SIZEOF_DOUBLE__ 4
2036 // AVR:#define __SIZEOF_FLOAT__ 4
2037 // AVR:#define __SIZEOF_INT__ 2
2038 // AVR:#define __SIZEOF_LONG_DOUBLE__ 4
2039 // AVR:#define __SIZEOF_LONG_LONG__ 8
2040 // AVR:#define __SIZEOF_LONG__ 4
2041 // AVR:#define __SIZEOF_POINTER__ 2
2042 // AVR:#define __SIZEOF_PTRDIFF_T__ 2
2043 // AVR:#define __SIZEOF_SHORT__ 2
2044 // AVR:#define __SIZEOF_SIZE_T__ 2
2045 // AVR:#define __SIZEOF_WCHAR_T__ 2
2046 // AVR:#define __SIZEOF_WINT_T__ 2
2047 // AVR:#define __SIZE_MAX__ 65535U
2048 // AVR:#define __SIZE_TYPE__ unsigned int
2049 // AVR:#define __STDC__ 1
2050 // AVR:#define __UINT16_MAX__ 65535U
2051 // AVR:#define __UINT16_TYPE__ unsigned int
2052 // AVR:#define __UINT32_C_SUFFIX__ UL
2053 // AVR:#define __UINT32_MAX__ 4294967295UL
2054 // AVR:#define __UINT32_TYPE__ long unsigned int
2055 // AVR:#define __UINT64_C_SUFFIX__ ULL
2056 // AVR:#define __UINT64_MAX__ 18446744073709551615ULL
2057 // AVR:#define __UINT64_TYPE__ long long unsigned int
2058 // AVR:#define __UINT8_C_SUFFIX__
2059 // AVR:#define __UINT8_MAX__ 255
2060 // AVR:#define __UINT8_TYPE__ unsigned char
2061 // AVR:#define __UINTMAX_C_SUFFIX__ ULL
2062 // AVR:#define __UINTMAX_MAX__ 18446744073709551615ULL
2063 // AVR:#define __UINTMAX_TYPE__ long long unsigned int
2064 // AVR:#define __UINTPTR_MAX__ 65535U
2065 // AVR:#define __UINTPTR_TYPE__ unsigned int
2066 // AVR:#define __UINT_FAST16_MAX__ 65535U
2067 // AVR:#define __UINT_FAST16_TYPE__ unsigned int
2068 // AVR:#define __UINT_FAST32_MAX__ 4294967295UL
2069 // AVR:#define __UINT_FAST32_TYPE__ long unsigned int
2070 // AVR:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2071 // AVR:#define __UINT_FAST64_TYPE__ long long unsigned int
2072 // AVR:#define __UINT_FAST8_MAX__ 255
2073 // AVR:#define __UINT_FAST8_TYPE__ unsigned char
2074 // AVR:#define __UINT_LEAST16_MAX__ 65535U
2075 // AVR:#define __UINT_LEAST16_TYPE__ unsigned int
2076 // AVR:#define __UINT_LEAST32_MAX__ 4294967295UL
2077 // AVR:#define __UINT_LEAST32_TYPE__ long unsigned int
2078 // AVR:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2079 // AVR:#define __UINT_LEAST64_TYPE__ long long unsigned int
2080 // AVR:#define __UINT_LEAST8_MAX__ 255
2081 // AVR:#define __UINT_LEAST8_TYPE__ unsigned char
2082 // AVR:#define __USER_LABEL_PREFIX__
2083 // AVR:#define __WCHAR_MAX__ 32767
2084 // AVR:#define __WCHAR_TYPE__ int
2085 // AVR:#define __WINT_TYPE__ int
2087 // RUN: %clang_cc1 -E -dM -ffreestanding \
2088 // RUN: -triple i686-windows-msvc -fms-compatibility -x c++ < /dev/null \
2089 // RUN: | FileCheck -match-full-lines -check-prefix MSVC-X32 %s
2091 // RUN: %clang_cc1 -E -dM -ffreestanding \
2092 // RUN: -triple x86_64-windows-msvc -fms-compatibility -x c++ < /dev/null \
2093 // RUN: | FileCheck -match-full-lines -check-prefix MSVC-X64 %s
2095 // MSVC-X32:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
2096 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
2097 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
2098 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
2099 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
2100 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
2101 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
2102 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
2103 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
2104 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
2105 // MSVC-X32-NOT:#define __GCC_ATOMIC{{.*}}
2106 // MSVC-X32:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
2108 // MSVC-X64:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
2109 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
2110 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
2111 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
2112 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
2113 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
2114 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
2115 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
2116 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
2117 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
2118 // MSVC-X64-NOT:#define __GCC_ATOMIC{{.*}}
2119 // MSVC-X64:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16ULL
2121 // RUN: %clang_cc1 -E -dM -ffreestanding \
2122 // RUN: -fgnuc-version=4.2.1 -triple=aarch64-apple-ios9 < /dev/null \
2123 // RUN: | FileCheck -check-prefix=DARWIN %s
2124 // RUN: %clang_cc1 -E -dM -ffreestanding \
2125 // RUN: -fgnuc-version=4.2.1 -triple=aarch64-apple-macosx10.12 < /dev/null \
2126 // RUN: | FileCheck -check-prefix=DARWIN %s
2128 // DARWIN-NOT: OBJC_NEW_PROPERTIES
2129 // DARWIN:#define __STDC_NO_THREADS__ 1
2131 // RUN: %clang_cc1 -triple i386-apple-macosx -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix MACOS-32 %s
2132 // RUN: %clang_cc1 -triple x86_64-apple-macosx -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix MACOS-64 %s
2134 // MACOS-32: #define __INTPTR_TYPE__ long int
2135 // MACOS-32: #define __PTRDIFF_TYPE__ int
2136 // MACOS-32: #define __SIZE_TYPE__ long unsigned int
2138 // MACOS-64: #define __INTPTR_TYPE__ long int
2139 // MACOS-64: #define __PTRDIFF_TYPE__ long int
2140 // MACOS-64: #define __SIZE_TYPE__ long unsigned int
2142 // RUN: %clang_cc1 -triple i386-apple-ios-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-32 %s
2143 // RUN: %clang_cc1 -triple armv7-apple-ios -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-32 %s
2144 // RUN: %clang_cc1 -triple x86_64-apple-ios-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-64 %s
2145 // RUN: %clang_cc1 -triple arm64-apple-ios -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-64 %s
2147 // IOS-32: #define __INTPTR_TYPE__ long int
2148 // IOS-32: #define __PTRDIFF_TYPE__ int
2149 // IOS-32: #define __SIZE_TYPE__ long unsigned int
2151 // IOS-64: #define __INTPTR_TYPE__ long int
2152 // IOS-64: #define __PTRDIFF_TYPE__ long int
2153 // IOS-64: #define __SIZE_TYPE__ long unsigned int
2155 // RUN: %clang_cc1 -triple i386-apple-tvos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-32 %s
2156 // RUN: %clang_cc1 -triple armv7-apple-tvos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-32 %s
2157 // RUN: %clang_cc1 -triple x86_64-apple-tvos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-64 %s
2158 // RUN: %clang_cc1 -triple arm64-apple-tvos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-64 %s
2160 // TVOS-32: #define __INTPTR_TYPE__ long int
2161 // TVOS-32: #define __PTRDIFF_TYPE__ int
2162 // TVOS-32: #define __SIZE_TYPE__ long unsigned int
2164 // TVOS-64: #define __INTPTR_TYPE__ long int
2165 // TVOS-64: #define __PTRDIFF_TYPE__ long int
2166 // TVOS-64: #define __SIZE_TYPE__ long unsigned int
2168 // RUN: %clang_cc1 -triple i386-apple-watchos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-32 %s
2169 // RUN: %clang_cc1 -triple armv7k-apple-watchos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
2170 // RUN: %clang_cc1 -triple x86_64-apple-watchos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
2171 // RUN: %clang_cc1 -triple arm64-apple-watchos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
2173 // WATCHOS-32: #define __INTPTR_TYPE__ long int
2174 // WATCHOS-32: #define __PTRDIFF_TYPE__ int
2175 // WATCHOS-32: #define __SIZE_TYPE__ long unsigned int
2177 // WATCHOS-64: #define __INTPTR_TYPE__ long int
2178 // WATCHOS-64: #define __PTRDIFF_TYPE__ long int
2179 // WATCHOS-64: #define __SIZE_TYPE__ long unsigned int
2181 // RUN: %clang_cc1 -triple armv7-apple-none-macho -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix ARM-DARWIN-BAREMETAL-32 %s
2182 // RUN: %clang_cc1 -triple arm64-apple-none-macho -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix ARM-DARWIN-BAREMETAL-64 %s
2184 // ARM-DARWIN-BAREMETAL-32: #define __INTPTR_TYPE__ long int
2185 // ARM-DARWIN-BAREMETAL-32: #define __PTRDIFF_TYPE__ int
2186 // ARM-DARWIN-BAREMETAL-32: #define __SIZE_TYPE__ long unsigned int
2188 // ARM-DARWIN-BAREMETAL-64: #define __INTPTR_TYPE__ long int
2189 // ARM-DARWIN-BAREMETAL-64: #define __PTRDIFF_TYPE__ long int
2190 // ARM-DARWIN-BAREMETAL-64: #define __SIZE_TYPE__ long unsigned int
2192 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=riscv32 < /dev/null \
2193 // RUN: | FileCheck -match-full-lines -check-prefix=RISCV32 %s
2194 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=riscv32-unknown-linux < /dev/null \
2195 // RUN: | FileCheck -match-full-lines -check-prefixes=RISCV32,RISCV32-LINUX %s
2196 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=riscv32 \
2197 // RUN: -fforce-enable-int128 < /dev/null | FileCheck -match-full-lines \
2198 // RUN: -check-prefixes=RISCV32,RISCV32-INT128 %s
2199 // RISCV32: #define _ILP32 1
2200 // RISCV32: #define __ATOMIC_ACQUIRE 2
2201 // RISCV32: #define __ATOMIC_ACQ_REL 4
2202 // RISCV32: #define __ATOMIC_CONSUME 1
2203 // RISCV32: #define __ATOMIC_RELAXED 0
2204 // RISCV32: #define __ATOMIC_RELEASE 3
2205 // RISCV32: #define __ATOMIC_SEQ_CST 5
2206 // RISCV32: #define __BIGGEST_ALIGNMENT__ 16
2207 // RISCV32: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2208 // RISCV32: #define __CHAR16_TYPE__ unsigned short
2209 // RISCV32: #define __CHAR32_TYPE__ unsigned int
2210 // RISCV32: #define __CHAR_BIT__ 8
2211 // RISCV32: #define __DBL_DECIMAL_DIG__ 17
2212 // RISCV32: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2213 // RISCV32: #define __DBL_DIG__ 15
2214 // RISCV32: #define __DBL_EPSILON__ 2.2204460492503131e-16
2215 // RISCV32: #define __DBL_HAS_DENORM__ 1
2216 // RISCV32: #define __DBL_HAS_INFINITY__ 1
2217 // RISCV32: #define __DBL_HAS_QUIET_NAN__ 1
2218 // RISCV32: #define __DBL_MANT_DIG__ 53
2219 // RISCV32: #define __DBL_MAX_10_EXP__ 308
2220 // RISCV32: #define __DBL_MAX_EXP__ 1024
2221 // RISCV32: #define __DBL_MAX__ 1.7976931348623157e+308
2222 // RISCV32: #define __DBL_MIN_10_EXP__ (-307)
2223 // RISCV32: #define __DBL_MIN_EXP__ (-1021)
2224 // RISCV32: #define __DBL_MIN__ 2.2250738585072014e-308
2225 // RISCV32: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
2226 // RISCV32: #define __ELF__ 1
2227 // RISCV32: #define __FINITE_MATH_ONLY__ 0
2228 // RISCV32: #define __FLT_DECIMAL_DIG__ 9
2229 // RISCV32: #define __FLT_DENORM_MIN__ 1.40129846e-45F
2230 // RISCV32: #define __FLT_DIG__ 6
2231 // RISCV32: #define __FLT_EPSILON__ 1.19209290e-7F
2232 // RISCV32: #define __FLT_HAS_DENORM__ 1
2233 // RISCV32: #define __FLT_HAS_INFINITY__ 1
2234 // RISCV32: #define __FLT_HAS_QUIET_NAN__ 1
2235 // RISCV32: #define __FLT_MANT_DIG__ 24
2236 // RISCV32: #define __FLT_MAX_10_EXP__ 38
2237 // RISCV32: #define __FLT_MAX_EXP__ 128
2238 // RISCV32: #define __FLT_MAX__ 3.40282347e+38F
2239 // RISCV32: #define __FLT_MIN_10_EXP__ (-37)
2240 // RISCV32: #define __FLT_MIN_EXP__ (-125)
2241 // RISCV32: #define __FLT_MIN__ 1.17549435e-38F
2242 // RISCV32: #define __FLT_RADIX__ 2
2243 // RISCV32: #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
2244 // RISCV32: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
2245 // RISCV32: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
2246 // RISCV32: #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
2247 // RISCV32: #define __GCC_ATOMIC_INT_LOCK_FREE 1
2248 // RISCV32: #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
2249 // RISCV32: #define __GCC_ATOMIC_LONG_LOCK_FREE 1
2250 // RISCV32: #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
2251 // RISCV32: #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
2252 // RISCV32: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
2253 // RISCV32: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
2254 // RISCV32: #define __GNUC_MINOR__ {{.*}}
2255 // RISCV32: #define __GNUC_PATCHLEVEL__ {{.*}}
2256 // RISCV32: #define __GNUC_STDC_INLINE__ 1
2257 // RISCV32: #define __GNUC__ {{.*}}
2258 // RISCV32: #define __GXX_ABI_VERSION {{.*}}
2259 // RISCV32: #define __ILP32__ 1
2260 // RISCV32: #define __INT16_C_SUFFIX__
2261 // RISCV32: #define __INT16_MAX__ 32767
2262 // RISCV32: #define __INT16_TYPE__ short
2263 // RISCV32: #define __INT32_C_SUFFIX__
2264 // RISCV32: #define __INT32_MAX__ 2147483647
2265 // RISCV32: #define __INT32_TYPE__ int
2266 // RISCV32: #define __INT64_C_SUFFIX__ LL
2267 // RISCV32: #define __INT64_MAX__ 9223372036854775807LL
2268 // RISCV32: #define __INT64_TYPE__ long long int
2269 // RISCV32: #define __INT8_C_SUFFIX__
2270 // RISCV32: #define __INT8_MAX__ 127
2271 // RISCV32: #define __INT8_TYPE__ signed char
2272 // RISCV32: #define __INTMAX_C_SUFFIX__ LL
2273 // RISCV32: #define __INTMAX_MAX__ 9223372036854775807LL
2274 // RISCV32: #define __INTMAX_TYPE__ long long int
2275 // RISCV32: #define __INTMAX_WIDTH__ 64
2276 // RISCV32: #define __INTPTR_MAX__ 2147483647
2277 // RISCV32: #define __INTPTR_TYPE__ int
2278 // RISCV32: #define __INTPTR_WIDTH__ 32
2279 // TODO: RISC-V GCC defines INT_FAST16 as int
2280 // RISCV32: #define __INT_FAST16_MAX__ 32767
2281 // RISCV32: #define __INT_FAST16_TYPE__ short
2282 // RISCV32: #define __INT_FAST32_MAX__ 2147483647
2283 // RISCV32: #define __INT_FAST32_TYPE__ int
2284 // RISCV32: #define __INT_FAST64_MAX__ 9223372036854775807LL
2285 // RISCV32: #define __INT_FAST64_TYPE__ long long int
2286 // TODO: RISC-V GCC defines INT_FAST8 as int
2287 // RISCV32: #define __INT_FAST8_MAX__ 127
2288 // RISCV32: #define __INT_FAST8_TYPE__ signed char
2289 // RISCV32: #define __INT_LEAST16_MAX__ 32767
2290 // RISCV32: #define __INT_LEAST16_TYPE__ short
2291 // RISCV32: #define __INT_LEAST32_MAX__ 2147483647
2292 // RISCV32: #define __INT_LEAST32_TYPE__ int
2293 // RISCV32: #define __INT_LEAST64_MAX__ 9223372036854775807LL
2294 // RISCV32: #define __INT_LEAST64_TYPE__ long long int
2295 // RISCV32: #define __INT_LEAST8_MAX__ 127
2296 // RISCV32: #define __INT_LEAST8_TYPE__ signed char
2297 // RISCV32: #define __INT_MAX__ 2147483647
2298 // RISCV32: #define __LDBL_DECIMAL_DIG__ 36
2299 // RISCV32: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
2300 // RISCV32: #define __LDBL_DIG__ 33
2301 // RISCV32: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
2302 // RISCV32: #define __LDBL_HAS_DENORM__ 1
2303 // RISCV32: #define __LDBL_HAS_INFINITY__ 1
2304 // RISCV32: #define __LDBL_HAS_QUIET_NAN__ 1
2305 // RISCV32: #define __LDBL_MANT_DIG__ 113
2306 // RISCV32: #define __LDBL_MAX_10_EXP__ 4932
2307 // RISCV32: #define __LDBL_MAX_EXP__ 16384
2308 // RISCV32: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
2309 // RISCV32: #define __LDBL_MIN_10_EXP__ (-4931)
2310 // RISCV32: #define __LDBL_MIN_EXP__ (-16381)
2311 // RISCV32: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
2312 // RISCV32: #define __LITTLE_ENDIAN__ 1
2313 // RISCV32: #define __LONG_LONG_MAX__ 9223372036854775807LL
2314 // RISCV32: #define __LONG_MAX__ 2147483647L
2315 // RISCV32: #define __NO_INLINE__ 1
2316 // RISCV32: #define __POINTER_WIDTH__ 32
2317 // RISCV32: #define __PRAGMA_REDEFINE_EXTNAME 1
2318 // RISCV32: #define __PTRDIFF_MAX__ 2147483647
2319 // RISCV32: #define __PTRDIFF_TYPE__ int
2320 // RISCV32: #define __PTRDIFF_WIDTH__ 32
2321 // RISCV32: #define __SCHAR_MAX__ 127
2322 // RISCV32: #define __SHRT_MAX__ 32767
2323 // RISCV32: #define __SIG_ATOMIC_MAX__ 2147483647
2324 // RISCV32: #define __SIG_ATOMIC_WIDTH__ 32
2325 // RISCV32: #define __SIZEOF_DOUBLE__ 8
2326 // RISCV32: #define __SIZEOF_FLOAT__ 4
2327 // RISCV32-INT128: #define __SIZEOF_INT128__ 16
2328 // RISCV32: #define __SIZEOF_INT__ 4
2329 // RISCV32: #define __SIZEOF_LONG_DOUBLE__ 16
2330 // RISCV32: #define __SIZEOF_LONG_LONG__ 8
2331 // RISCV32: #define __SIZEOF_LONG__ 4
2332 // RISCV32: #define __SIZEOF_POINTER__ 4
2333 // RISCV32: #define __SIZEOF_PTRDIFF_T__ 4
2334 // RISCV32: #define __SIZEOF_SHORT__ 2
2335 // RISCV32: #define __SIZEOF_SIZE_T__ 4
2336 // RISCV32: #define __SIZEOF_WCHAR_T__ 4
2337 // RISCV32: #define __SIZEOF_WINT_T__ 4
2338 // RISCV32: #define __SIZE_MAX__ 4294967295U
2339 // RISCV32: #define __SIZE_TYPE__ unsigned int
2340 // RISCV32: #define __SIZE_WIDTH__ 32
2341 // RISCV32: #define __STDC_HOSTED__ 0
2342 // RISCV32: #define __STDC_UTF_16__ 1
2343 // RISCV32: #define __STDC_UTF_32__ 1
2344 // RISCV32: #define __STDC_VERSION__ 201710L
2345 // RISCV32: #define __STDC__ 1
2346 // RISCV32: #define __UINT16_C_SUFFIX__
2347 // RISCV32: #define __UINT16_MAX__ 65535
2348 // RISCV32: #define __UINT16_TYPE__ unsigned short
2349 // RISCV32: #define __UINT32_C_SUFFIX__ U
2350 // RISCV32: #define __UINT32_MAX__ 4294967295U
2351 // RISCV32: #define __UINT32_TYPE__ unsigned int
2352 // RISCV32: #define __UINT64_C_SUFFIX__ ULL
2353 // RISCV32: #define __UINT64_MAX__ 18446744073709551615ULL
2354 // RISCV32: #define __UINT64_TYPE__ long long unsigned int
2355 // RISCV32: #define __UINT8_C_SUFFIX__
2356 // RISCV32: #define __UINT8_MAX__ 255
2357 // RISCV32: #define __UINT8_TYPE__ unsigned char
2358 // RISCV32: #define __UINTMAX_C_SUFFIX__ ULL
2359 // RISCV32: #define __UINTMAX_MAX__ 18446744073709551615ULL
2360 // RISCV32: #define __UINTMAX_TYPE__ long long unsigned int
2361 // RISCV32: #define __UINTMAX_WIDTH__ 64
2362 // RISCV32: #define __UINTPTR_MAX__ 4294967295U
2363 // RISCV32: #define __UINTPTR_TYPE__ unsigned int
2364 // RISCV32: #define __UINTPTR_WIDTH__ 32
2365 // TODO: RISC-V GCC defines UINT_FAST16 to be unsigned int
2366 // RISCV32: #define __UINT_FAST16_MAX__ 65535
2367 // RISCV32: #define __UINT_FAST16_TYPE__ unsigned short
2368 // RISCV32: #define __UINT_FAST32_MAX__ 4294967295U
2369 // RISCV32: #define __UINT_FAST32_TYPE__ unsigned int
2370 // RISCV32: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
2371 // RISCV32: #define __UINT_FAST64_TYPE__ long long unsigned int
2372 // TODO: RISC-V GCC defines UINT_FAST8 to be unsigned int
2373 // RISCV32: #define __UINT_FAST8_MAX__ 255
2374 // RISCV32: #define __UINT_FAST8_TYPE__ unsigned char
2375 // RISCV32: #define __UINT_LEAST16_MAX__ 65535
2376 // RISCV32: #define __UINT_LEAST16_TYPE__ unsigned short
2377 // RISCV32: #define __UINT_LEAST32_MAX__ 4294967295U
2378 // RISCV32: #define __UINT_LEAST32_TYPE__ unsigned int
2379 // RISCV32: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2380 // RISCV32: #define __UINT_LEAST64_TYPE__ long long unsigned int
2381 // RISCV32: #define __UINT_LEAST8_MAX__ 255
2382 // RISCV32: #define __UINT_LEAST8_TYPE__ unsigned char
2383 // RISCV32: #define __USER_LABEL_PREFIX__
2384 // RISCV32: #define __WCHAR_MAX__ 2147483647
2385 // RISCV32: #define __WCHAR_TYPE__ int
2386 // RISCV32: #define __WCHAR_WIDTH__ 32
2387 // RISCV32: #define __WINT_TYPE__ unsigned int
2388 // RISCV32: #define __WINT_UNSIGNED__ 1
2389 // RISCV32: #define __WINT_WIDTH__ 32
2390 // RISCV32-LINUX: #define __gnu_linux__ 1
2391 // RISCV32-LINUX: #define __linux 1
2392 // RISCV32-LINUX: #define __linux__ 1
2393 // RISCV32: #define __riscv 1
2394 // RISCV32: #define __riscv_cmodel_medlow 1
2395 // RISCV32: #define __riscv_float_abi_soft 1
2396 // RISCV32: #define __riscv_xlen 32
2397 // RISCV32-LINUX: #define __unix 1
2398 // RISCV32-LINUX: #define __unix__ 1
2399 // RISCV32-LINUX: #define linux 1
2400 // RISCV32-LINUX: #define unix 1
2402 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=riscv64 < /dev/null \
2403 // RUN: | FileCheck -match-full-lines -check-prefix=RISCV64 %s
2404 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=riscv64-unknown-linux < /dev/null \
2405 // RUN: | FileCheck -match-full-lines -check-prefixes=RISCV64,RISCV64-LINUX %s
2406 // RISCV64: #define _LP64 1
2407 // RISCV64: #define __ATOMIC_ACQUIRE 2
2408 // RISCV64: #define __ATOMIC_ACQ_REL 4
2409 // RISCV64: #define __ATOMIC_CONSUME 1
2410 // RISCV64: #define __ATOMIC_RELAXED 0
2411 // RISCV64: #define __ATOMIC_RELEASE 3
2412 // RISCV64: #define __ATOMIC_SEQ_CST 5
2413 // RISCV64: #define __BIGGEST_ALIGNMENT__ 16
2414 // RISCV64: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2415 // RISCV64: #define __CHAR16_TYPE__ unsigned short
2416 // RISCV64: #define __CHAR32_TYPE__ unsigned int
2417 // RISCV64: #define __CHAR_BIT__ 8
2418 // RISCV64: #define __DBL_DECIMAL_DIG__ 17
2419 // RISCV64: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2420 // RISCV64: #define __DBL_DIG__ 15
2421 // RISCV64: #define __DBL_EPSILON__ 2.2204460492503131e-16
2422 // RISCV64: #define __DBL_HAS_DENORM__ 1
2423 // RISCV64: #define __DBL_HAS_INFINITY__ 1
2424 // RISCV64: #define __DBL_HAS_QUIET_NAN__ 1
2425 // RISCV64: #define __DBL_MANT_DIG__ 53
2426 // RISCV64: #define __DBL_MAX_10_EXP__ 308
2427 // RISCV64: #define __DBL_MAX_EXP__ 1024
2428 // RISCV64: #define __DBL_MAX__ 1.7976931348623157e+308
2429 // RISCV64: #define __DBL_MIN_10_EXP__ (-307)
2430 // RISCV64: #define __DBL_MIN_EXP__ (-1021)
2431 // RISCV64: #define __DBL_MIN__ 2.2250738585072014e-308
2432 // RISCV64: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
2433 // RISCV64: #define __ELF__ 1
2434 // RISCV64: #define __FINITE_MATH_ONLY__ 0
2435 // RISCV64: #define __FLT_DECIMAL_DIG__ 9
2436 // RISCV64: #define __FLT_DENORM_MIN__ 1.40129846e-45F
2437 // RISCV64: #define __FLT_DIG__ 6
2438 // RISCV64: #define __FLT_EPSILON__ 1.19209290e-7F
2439 // RISCV64: #define __FLT_HAS_DENORM__ 1
2440 // RISCV64: #define __FLT_HAS_INFINITY__ 1
2441 // RISCV64: #define __FLT_HAS_QUIET_NAN__ 1
2442 // RISCV64: #define __FLT_MANT_DIG__ 24
2443 // RISCV64: #define __FLT_MAX_10_EXP__ 38
2444 // RISCV64: #define __FLT_MAX_EXP__ 128
2445 // RISCV64: #define __FLT_MAX__ 3.40282347e+38F
2446 // RISCV64: #define __FLT_MIN_10_EXP__ (-37)
2447 // RISCV64: #define __FLT_MIN_EXP__ (-125)
2448 // RISCV64: #define __FLT_MIN__ 1.17549435e-38F
2449 // RISCV64: #define __FLT_RADIX__ 2
2450 // RISCV64: #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
2451 // RISCV64: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
2452 // RISCV64: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
2453 // RISCV64: #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
2454 // RISCV64: #define __GCC_ATOMIC_INT_LOCK_FREE 1
2455 // RISCV64: #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
2456 // RISCV64: #define __GCC_ATOMIC_LONG_LOCK_FREE 1
2457 // RISCV64: #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
2458 // RISCV64: #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
2459 // RISCV64: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
2460 // RISCV64: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
2461 // RISCV64: #define __GNUC_MINOR__ {{.*}}
2462 // RISCV64: #define __GNUC_PATCHLEVEL__ {{.*}}
2463 // RISCV64: #define __GNUC_STDC_INLINE__ 1
2464 // RISCV64: #define __GNUC__ {{.*}}
2465 // RISCV64: #define __GXX_ABI_VERSION {{.*}}
2466 // RISCV64: #define __INT16_C_SUFFIX__
2467 // RISCV64: #define __INT16_MAX__ 32767
2468 // RISCV64: #define __INT16_TYPE__ short
2469 // RISCV64: #define __INT32_C_SUFFIX__
2470 // RISCV64: #define __INT32_MAX__ 2147483647
2471 // RISCV64: #define __INT32_TYPE__ int
2472 // RISCV64: #define __INT64_C_SUFFIX__ L
2473 // RISCV64: #define __INT64_MAX__ 9223372036854775807L
2474 // RISCV64: #define __INT64_TYPE__ long int
2475 // RISCV64: #define __INT8_C_SUFFIX__
2476 // RISCV64: #define __INT8_MAX__ 127
2477 // RISCV64: #define __INT8_TYPE__ signed char
2478 // RISCV64: #define __INTMAX_C_SUFFIX__ L
2479 // RISCV64: #define __INTMAX_MAX__ 9223372036854775807L
2480 // RISCV64: #define __INTMAX_TYPE__ long int
2481 // RISCV64: #define __INTMAX_WIDTH__ 64
2482 // RISCV64: #define __INTPTR_MAX__ 9223372036854775807L
2483 // RISCV64: #define __INTPTR_TYPE__ long int
2484 // RISCV64: #define __INTPTR_WIDTH__ 64
2485 // TODO: RISC-V GCC defines INT_FAST16 as int
2486 // RISCV64: #define __INT_FAST16_MAX__ 32767
2487 // RISCV64: #define __INT_FAST16_TYPE__ short
2488 // RISCV64: #define __INT_FAST32_MAX__ 2147483647
2489 // RISCV64: #define __INT_FAST32_TYPE__ int
2490 // RISCV64: #define __INT_FAST64_MAX__ 9223372036854775807L
2491 // RISCV64: #define __INT_FAST64_TYPE__ long int
2492 // TODO: RISC-V GCC defines INT_FAST8 as int
2493 // RISCV64: #define __INT_FAST8_MAX__ 127
2494 // RISCV64: #define __INT_FAST8_TYPE__ signed char
2495 // RISCV64: #define __INT_LEAST16_MAX__ 32767
2496 // RISCV64: #define __INT_LEAST16_TYPE__ short
2497 // RISCV64: #define __INT_LEAST32_MAX__ 2147483647
2498 // RISCV64: #define __INT_LEAST32_TYPE__ int
2499 // RISCV64: #define __INT_LEAST64_MAX__ 9223372036854775807L
2500 // RISCV64: #define __INT_LEAST64_TYPE__ long int
2501 // RISCV64: #define __INT_LEAST8_MAX__ 127
2502 // RISCV64: #define __INT_LEAST8_TYPE__ signed char
2503 // RISCV64: #define __INT_MAX__ 2147483647
2504 // RISCV64: #define __LDBL_DECIMAL_DIG__ 36
2505 // RISCV64: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
2506 // RISCV64: #define __LDBL_DIG__ 33
2507 // RISCV64: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
2508 // RISCV64: #define __LDBL_HAS_DENORM__ 1
2509 // RISCV64: #define __LDBL_HAS_INFINITY__ 1
2510 // RISCV64: #define __LDBL_HAS_QUIET_NAN__ 1
2511 // RISCV64: #define __LDBL_MANT_DIG__ 113
2512 // RISCV64: #define __LDBL_MAX_10_EXP__ 4932
2513 // RISCV64: #define __LDBL_MAX_EXP__ 16384
2514 // RISCV64: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
2515 // RISCV64: #define __LDBL_MIN_10_EXP__ (-4931)
2516 // RISCV64: #define __LDBL_MIN_EXP__ (-16381)
2517 // RISCV64: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
2518 // RISCV64: #define __LITTLE_ENDIAN__ 1
2519 // RISCV64: #define __LONG_LONG_MAX__ 9223372036854775807LL
2520 // RISCV64: #define __LONG_MAX__ 9223372036854775807L
2521 // RISCV64: #define __LP64__ 1
2522 // RISCV64: #define __NO_INLINE__ 1
2523 // RISCV64: #define __POINTER_WIDTH__ 64
2524 // RISCV64: #define __PRAGMA_REDEFINE_EXTNAME 1
2525 // RISCV64: #define __PTRDIFF_MAX__ 9223372036854775807L
2526 // RISCV64: #define __PTRDIFF_TYPE__ long int
2527 // RISCV64: #define __PTRDIFF_WIDTH__ 64
2528 // RISCV64: #define __SCHAR_MAX__ 127
2529 // RISCV64: #define __SHRT_MAX__ 32767
2530 // RISCV64: #define __SIG_ATOMIC_MAX__ 2147483647
2531 // RISCV64: #define __SIG_ATOMIC_WIDTH__ 32
2532 // RISCV64: #define __SIZEOF_DOUBLE__ 8
2533 // RISCV64: #define __SIZEOF_FLOAT__ 4
2534 // RISCV64: #define __SIZEOF_INT__ 4
2535 // RISCV64: #define __SIZEOF_LONG_DOUBLE__ 16
2536 // RISCV64: #define __SIZEOF_LONG_LONG__ 8
2537 // RISCV64: #define __SIZEOF_LONG__ 8
2538 // RISCV64: #define __SIZEOF_POINTER__ 8
2539 // RISCV64: #define __SIZEOF_PTRDIFF_T__ 8
2540 // RISCV64: #define __SIZEOF_SHORT__ 2
2541 // RISCV64: #define __SIZEOF_SIZE_T__ 8
2542 // RISCV64: #define __SIZEOF_WCHAR_T__ 4
2543 // RISCV64: #define __SIZEOF_WINT_T__ 4
2544 // RISCV64: #define __SIZE_MAX__ 18446744073709551615UL
2545 // RISCV64: #define __SIZE_TYPE__ long unsigned int
2546 // RISCV64: #define __SIZE_WIDTH__ 64
2547 // RISCV64: #define __STDC_HOSTED__ 0
2548 // RISCV64: #define __STDC_UTF_16__ 1
2549 // RISCV64: #define __STDC_UTF_32__ 1
2550 // RISCV64: #define __STDC_VERSION__ 201710L
2551 // RISCV64: #define __STDC__ 1
2552 // RISCV64: #define __UINT16_C_SUFFIX__
2553 // RISCV64: #define __UINT16_MAX__ 65535
2554 // RISCV64: #define __UINT16_TYPE__ unsigned short
2555 // RISCV64: #define __UINT32_C_SUFFIX__ U
2556 // RISCV64: #define __UINT32_MAX__ 4294967295U
2557 // RISCV64: #define __UINT32_TYPE__ unsigned int
2558 // RISCV64: #define __UINT64_C_SUFFIX__ UL
2559 // RISCV64: #define __UINT64_MAX__ 18446744073709551615UL
2560 // RISCV64: #define __UINT64_TYPE__ long unsigned int
2561 // RISCV64: #define __UINT8_C_SUFFIX__
2562 // RISCV64: #define __UINT8_MAX__ 255
2563 // RISCV64: #define __UINT8_TYPE__ unsigned char
2564 // RISCV64: #define __UINTMAX_C_SUFFIX__ UL
2565 // RISCV64: #define __UINTMAX_MAX__ 18446744073709551615UL
2566 // RISCV64: #define __UINTMAX_TYPE__ long unsigned int
2567 // RISCV64: #define __UINTMAX_WIDTH__ 64
2568 // RISCV64: #define __UINTPTR_MAX__ 18446744073709551615UL
2569 // RISCV64: #define __UINTPTR_TYPE__ long unsigned int
2570 // RISCV64: #define __UINTPTR_WIDTH__ 64
2571 // TODO: RISC-V GCC defines UINT_FAST16 to be unsigned int
2572 // RISCV64: #define __UINT_FAST16_MAX__ 65535
2573 // RISCV64: #define __UINT_FAST16_TYPE__ unsigned short
2574 // RISCV64: #define __UINT_FAST32_MAX__ 4294967295U
2575 // RISCV64: #define __UINT_FAST32_TYPE__ unsigned int
2576 // RISCV64: #define __UINT_FAST64_MAX__ 18446744073709551615UL
2577 // RISCV64: #define __UINT_FAST64_TYPE__ long unsigned int
2578 // TODO: RISC-V GCC defines UINT_FAST8 to be unsigned int
2579 // RISCV64: #define __UINT_FAST8_MAX__ 255
2580 // RISCV64: #define __UINT_FAST8_TYPE__ unsigned char
2581 // RISCV64: #define __UINT_LEAST16_MAX__ 65535
2582 // RISCV64: #define __UINT_LEAST16_TYPE__ unsigned short
2583 // RISCV64: #define __UINT_LEAST32_MAX__ 4294967295U
2584 // RISCV64: #define __UINT_LEAST32_TYPE__ unsigned int
2585 // RISCV64: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
2586 // RISCV64: #define __UINT_LEAST64_TYPE__ long unsigned int
2587 // RISCV64: #define __UINT_LEAST8_MAX__ 255
2588 // RISCV64: #define __UINT_LEAST8_TYPE__ unsigned char
2589 // RISCV64: #define __USER_LABEL_PREFIX__
2590 // RISCV64: #define __WCHAR_MAX__ 2147483647
2591 // RISCV64: #define __WCHAR_TYPE__ int
2592 // RISCV64: #define __WCHAR_WIDTH__ 32
2593 // RISCV64: #define __WINT_TYPE__ unsigned int
2594 // RISCV64: #define __WINT_UNSIGNED__ 1
2595 // RISCV64: #define __WINT_WIDTH__ 32
2596 // RISCV64-LINUX: #define __gnu_linux__ 1
2597 // RISCV64-LINUX: #define __linux 1
2598 // RISCV64-LINUX: #define __linux__ 1
2599 // RISCV64: #define __riscv 1
2600 // RISCV64: #define __riscv_cmodel_medlow 1
2601 // RISCV64: #define __riscv_float_abi_soft 1
2602 // RISCV64: #define __riscv_xlen 64
2603 // RISCV64-LINUX: #define __unix 1
2604 // RISCV64-LINUX: #define __unix__ 1
2605 // RISCV64-LINUX: #define linux 1
2606 // RISCV64-LINUX: #define unix 1