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