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