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++ -std=c++2a -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX2A %s
13 //
14 // CXX2A:#define __GNUG__ {{.*}}
15 // CXX2A:#define __GXX_EXPERIMENTAL_CXX0X__ 1
16 // CXX2A:#define __GXX_RTTI 1
17 // CXX2A:#define __GXX_WEAK__ 1
18 // CXX2A:#define __cplusplus 201707L
19 // CXX2A:#define __private_extern__ extern
20 //
21 // RUN: %clang_cc1 -x c++ -std=c++1z -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Z %s
22 //
23 // CXX1Z:#define __GNUG__ {{.*}}
24 // CXX1Z:#define __GXX_EXPERIMENTAL_CXX0X__ 1
25 // CXX1Z:#define __GXX_RTTI 1
26 // CXX1Z:#define __GXX_WEAK__ 1
27 // CXX1Z:#define __cplusplus 201703L
28 // CXX1Z:#define __private_extern__ extern
29 //
30 //
31 // RUN: %clang_cc1 -x c++ -std=c++1y -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Y %s
32 //
33 // CXX1Y:#define __GNUG__ {{.*}}
34 // CXX1Y:#define __GXX_EXPERIMENTAL_CXX0X__ 1
35 // CXX1Y:#define __GXX_RTTI 1
36 // CXX1Y:#define __GXX_WEAK__ 1
37 // CXX1Y:#define __cplusplus 201402L
38 // CXX1Y:#define __private_extern__ extern
39 //
40 //
41 // RUN: %clang_cc1 -x c++ -std=c++11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX11 %s
42 //
43 // CXX11:#define __GNUG__ {{.*}}
44 // CXX11:#define __GXX_EXPERIMENTAL_CXX0X__ 1
45 // CXX11:#define __GXX_RTTI 1
46 // CXX11:#define __GXX_WEAK__ 1
47 // CXX11:#define __cplusplus 201103L
48 // CXX11:#define __private_extern__ extern
49 //
50 //
51 // RUN: %clang_cc1 -x c++ -std=c++98 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX98 %s
52 //
53 // CXX98:#define __GNUG__ {{.*}}
54 // CXX98:#define __GXX_RTTI 1
55 // CXX98:#define __GXX_WEAK__ 1
56 // CXX98:#define __cplusplus 199711L
57 // CXX98:#define __private_extern__ extern
58 //
59 //
60 // RUN: %clang_cc1 -fdeprecated-macro -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix DEPRECATED %s
61 //
62 // DEPRECATED:#define __DEPRECATED 1
63 //
64 //
65 // RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C99 %s
66 //
67 // C99:#define __STDC_VERSION__ 199901L
68 // C99:#define __STRICT_ANSI__ 1
69 // C99-NOT: __GXX_EXPERIMENTAL_CXX0X__
70 // C99-NOT: __GXX_RTTI
71 // C99-NOT: __GXX_WEAK__
72 // C99-NOT: __cplusplus
73 //
74 //
75 // RUN: %clang_cc1 -std=c11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
76 // RUN: %clang_cc1 -std=c1x -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
77 // RUN: %clang_cc1 -std=iso9899:2011 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
78 // RUN: %clang_cc1 -std=iso9899:201x -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
79 //
80 // C11:#define __STDC_UTF_16__ 1
81 // C11:#define __STDC_UTF_32__ 1
82 // C11:#define __STDC_VERSION__ 201112L
83 // C11:#define __STRICT_ANSI__ 1
84 // C11-NOT: __GXX_EXPERIMENTAL_CXX0X__
85 // C11-NOT: __GXX_RTTI
86 // C11-NOT: __GXX_WEAK__
87 // C11-NOT: __cplusplus
88 //
89 //
90 // RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix COMMON %s
91 //
92 // COMMON:#define __CONSTANT_CFSTRINGS__ 1
93 // COMMON:#define __FINITE_MATH_ONLY__ 0
94 // COMMON:#define __GNUC_MINOR__ {{.*}}
95 // COMMON:#define __GNUC_PATCHLEVEL__ {{.*}}
96 // COMMON:#define __GNUC_STDC_INLINE__ 1
97 // COMMON:#define __GNUC__ {{.*}}
98 // COMMON:#define __GXX_ABI_VERSION {{.*}}
99 // COMMON:#define __ORDER_BIG_ENDIAN__ 4321
100 // COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234
101 // COMMON:#define __ORDER_PDP_ENDIAN__ 3412
102 // COMMON:#define __STDC_HOSTED__ 1
103 // COMMON:#define __STDC__ 1
104 // COMMON:#define __VERSION__ {{.*}}
105 // COMMON:#define __clang__ 1
106 // COMMON:#define __clang_major__ {{[0-9]+}}
107 // COMMON:#define __clang_minor__ {{[0-9]+}}
108 // COMMON:#define __clang_patchlevel__ {{[0-9]+}}
109 // COMMON:#define __clang_version__ {{.*}}
110 // COMMON:#define __llvm__ 1
111 //
112 // RUN: %clang_cc1 -E -dM -triple=x86_64-pc-win32 < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
113 // RUN: %clang_cc1 -E -dM -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
114 // RUN: %clang_cc1 -E -dM -triple=x86_64-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
115 // RUN: %clang_cc1 -E -dM -triple=armv7a-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
116 //
117 // C-DEFAULT:#define __STDC_VERSION__ 201112L
118 //
119 // RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix FREESTANDING %s
120 // FREESTANDING:#define __STDC_HOSTED__ 0
121 //
122 // RUN: %clang_cc1 -x c++ -std=gnu++2a -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX2A %s
123 //
124 // GXX2A:#define __GNUG__ {{.*}}
125 // GXX2A:#define __GXX_WEAK__ 1
126 // GXX2A:#define __cplusplus 201707L
127 // GXX2A:#define __private_extern__ extern
128 //
129 //
130 // RUN: %clang_cc1 -x c++ -std=gnu++1z -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX1Z %s
131 //
132 // GXX1Z:#define __GNUG__ {{.*}}
133 // GXX1Z:#define __GXX_WEAK__ 1
134 // GXX1Z:#define __cplusplus 201703L
135 // GXX1Z:#define __private_extern__ extern
136 //
137 //
138 // RUN: %clang_cc1 -x c++ -std=gnu++1y -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX1Y %s
139 //
140 // GXX1Y:#define __GNUG__ {{.*}}
141 // GXX1Y:#define __GXX_WEAK__ 1
142 // GXX1Y:#define __cplusplus 201402L
143 // GXX1Y:#define __private_extern__ extern
144 //
145 //
146 // RUN: %clang_cc1 -x c++ -std=gnu++11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX11 %s
147 //
148 // GXX11:#define __GNUG__ {{.*}}
149 // GXX11:#define __GXX_WEAK__ 1
150 // GXX11:#define __cplusplus 201103L
151 // GXX11:#define __private_extern__ extern
152 //
153 //
154 // RUN: %clang_cc1 -x c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX98 %s
155 //
156 // GXX98:#define __GNUG__ {{.*}}
157 // GXX98:#define __GXX_WEAK__ 1
158 // GXX98:#define __cplusplus 199711L
159 // GXX98:#define __private_extern__ extern
160 //
161 //
162 // RUN: %clang_cc1 -std=iso9899:199409 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C94 %s
163 //
164 // C94:#define __STDC_VERSION__ 199409L
165 //
166 //
167 // RUN: %clang_cc1 -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix MSEXT %s
168 //
169 // MSEXT-NOT:#define __STDC__
170 // MSEXT:#define _INTEGRAL_MAX_BITS 64
171 // MSEXT-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
172 // MSEXT-NOT:#define _WCHAR_T_DEFINED 1
173 //
174 //
175 // RUN: %clang_cc1 -x c++ -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix MSEXT-CXX %s
176 //
177 // MSEXT-CXX:#define _NATIVE_WCHAR_T_DEFINED 1
178 // MSEXT-CXX:#define _WCHAR_T_DEFINED 1
179 // MSEXT-CXX:#define __BOOL_DEFINED 1
180 //
181 //
182 // 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
183 //
184 // MSEXT-CXX-NOWCHAR-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
185 // MSEXT-CXX-NOWCHAR-NOT:#define _WCHAR_T_DEFINED 1
186 // MSEXT-CXX-NOWCHAR:#define __BOOL_DEFINED 1
187 //
188 //
189 // RUN: %clang_cc1 -x objective-c -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix OBJC %s
190 //
191 // OBJC:#define OBJC_NEW_PROPERTIES 1
192 // OBJC:#define __NEXT_RUNTIME__ 1
193 // OBJC:#define __OBJC__ 1
194 //
195 //
196 // RUN: %clang_cc1 -x objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix OBJCGC %s
197 //
198 // OBJCGC:#define __OBJC_GC__ 1
199 //
200 //
201 // RUN: %clang_cc1 -x objective-c -fobjc-exceptions -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NONFRAGILE %s
202 //
203 // NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
204 // NONFRAGILE:#define __OBJC2__ 1
205 //
206 //
207 // RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O0 %s
208 //
209 // O0:#define __NO_INLINE__ 1
210 // O0-NOT:#define __OPTIMIZE_SIZE__
211 // O0-NOT:#define __OPTIMIZE__
212 //
213 //
214 // RUN: %clang_cc1 -fno-inline -O3 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NO_INLINE %s
215 //
216 // NO_INLINE:#define __NO_INLINE__ 1
217 // NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
218 // NO_INLINE:#define __OPTIMIZE__ 1
219 //
220 //
221 // RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O1 %s
222 //
223 // O1-NOT:#define __OPTIMIZE_SIZE__
224 // O1:#define __OPTIMIZE__ 1
225 //
226 //
227 // RUN: %clang_cc1 -Og -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Og %s
228 //
229 // Og-NOT:#define __OPTIMIZE_SIZE__
230 // Og	:#define __OPTIMIZE__ 1
231 //
232 //
233 // RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Os %s
234 //
235 // Os:#define __OPTIMIZE_SIZE__ 1
236 // Os:#define __OPTIMIZE__ 1
237 //
238 //
239 // RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Oz %s
240 //
241 // Oz:#define __OPTIMIZE_SIZE__ 1
242 // Oz:#define __OPTIMIZE__ 1
243 //
244 //
245 // RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix PASCAL %s
246 //
247 // PASCAL:#define __PASCAL_STRINGS__ 1
248 //
249 //
250 // RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix SCHAR %s
251 //
252 // SCHAR:#define __STDC__ 1
253 // SCHAR-NOT:#define __UNSIGNED_CHAR__
254 // SCHAR:#define __clang__ 1
255 //
256 // RUN: %clang_cc1 -E -dM -fwchar-type=short -fno-signed-wchar < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
257 // wchar_t is u16 for targeting Win32.
258 // 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
259 // 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
260 //
261 // SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
262 // SHORTWCHAR: #define __WCHAR_MAX__ 65535
263 // SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
264 // SHORTWCHAR: #define __WCHAR_WIDTH__ 16
265 //
266 // RUN: %clang_cc1 -E -dM -fwchar-type=int -triple=i686-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
267 // RUN: %clang_cc1 -E -dM -fwchar-type=int -triple=x86_64-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
268 //
269 // SHORTWCHAR2: #define __SIZEOF_WCHAR_T__ 4
270 // SHORTWCHAR2: #define __WCHAR_WIDTH__ 32
271 // Other definitions vary from platform to platform
272 
273 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
274 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
275 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=arm64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 -check-prefix AARCH64-CXX %s
276 //
277 // AARCH64:#define _LP64 1
278 // AARCH64-NOT:#define __AARCH64EB__ 1
279 // AARCH64:#define __AARCH64EL__ 1
280 // AARCH64-NOT:#define __AARCH_BIG_ENDIAN 1
281 // AARCH64:#define __ARM_64BIT_STATE 1
282 // AARCH64:#define __ARM_ARCH 8
283 // AARCH64:#define __ARM_ARCH_ISA_A64 1
284 // AARCH64-NOT:#define __ARM_BIG_ENDIAN 1
285 // AARCH64:#define __BIGGEST_ALIGNMENT__ 16
286 // AARCH64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
287 // AARCH64:#define __CHAR16_TYPE__ unsigned short
288 // AARCH64:#define __CHAR32_TYPE__ unsigned int
289 // AARCH64:#define __CHAR_BIT__ 8
290 // AARCH64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
291 // AARCH64:#define __DBL_DIG__ 15
292 // AARCH64:#define __DBL_EPSILON__ 2.2204460492503131e-16
293 // AARCH64:#define __DBL_HAS_DENORM__ 1
294 // AARCH64:#define __DBL_HAS_INFINITY__ 1
295 // AARCH64:#define __DBL_HAS_QUIET_NAN__ 1
296 // AARCH64:#define __DBL_MANT_DIG__ 53
297 // AARCH64:#define __DBL_MAX_10_EXP__ 308
298 // AARCH64:#define __DBL_MAX_EXP__ 1024
299 // AARCH64:#define __DBL_MAX__ 1.7976931348623157e+308
300 // AARCH64:#define __DBL_MIN_10_EXP__ (-307)
301 // AARCH64:#define __DBL_MIN_EXP__ (-1021)
302 // AARCH64:#define __DBL_MIN__ 2.2250738585072014e-308
303 // AARCH64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
304 // AARCH64:#define __FLT16_DECIMAL_DIG__ 5
305 // AARCH64:#define __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16
306 // AARCH64:#define __FLT16_DIG__ 3
307 // AARCH64:#define __FLT16_EPSILON__ 9.765625e-4F16
308 // AARCH64:#define __FLT16_HAS_DENORM__ 1
309 // AARCH64:#define __FLT16_HAS_INFINITY__ 1
310 // AARCH64:#define __FLT16_HAS_QUIET_NAN__ 1
311 // AARCH64:#define __FLT16_MANT_DIG__ 11
312 // AARCH64:#define __FLT16_MAX_10_EXP__ 4
313 // AARCH64:#define __FLT16_MAX_EXP__ 16
314 // AARCH64:#define __FLT16_MAX__ 6.5504e+4F16
315 // AARCH64:#define __FLT16_MIN_10_EXP__ (-4)
316 // AARCH64:#define __FLT16_MIN_EXP__ (-13)
317 // AARCH64:#define __FLT16_MIN__ 6.103515625e-5F16
318 // AARCH64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
319 // AARCH64:#define __FLT_DIG__ 6
320 // AARCH64:#define __FLT_EPSILON__ 1.19209290e-7F
321 // AARCH64:#define __FLT_EVAL_METHOD__ 0
322 // AARCH64:#define __FLT_HAS_DENORM__ 1
323 // AARCH64:#define __FLT_HAS_INFINITY__ 1
324 // AARCH64:#define __FLT_HAS_QUIET_NAN__ 1
325 // AARCH64:#define __FLT_MANT_DIG__ 24
326 // AARCH64:#define __FLT_MAX_10_EXP__ 38
327 // AARCH64:#define __FLT_MAX_EXP__ 128
328 // AARCH64:#define __FLT_MAX__ 3.40282347e+38F
329 // AARCH64:#define __FLT_MIN_10_EXP__ (-37)
330 // AARCH64:#define __FLT_MIN_EXP__ (-125)
331 // AARCH64:#define __FLT_MIN__ 1.17549435e-38F
332 // AARCH64:#define __FLT_RADIX__ 2
333 // AARCH64:#define __INT16_C_SUFFIX__
334 // AARCH64:#define __INT16_FMTd__ "hd"
335 // AARCH64:#define __INT16_FMTi__ "hi"
336 // AARCH64:#define __INT16_MAX__ 32767
337 // AARCH64:#define __INT16_TYPE__ short
338 // AARCH64:#define __INT32_C_SUFFIX__
339 // AARCH64:#define __INT32_FMTd__ "d"
340 // AARCH64:#define __INT32_FMTi__ "i"
341 // AARCH64:#define __INT32_MAX__ 2147483647
342 // AARCH64:#define __INT32_TYPE__ int
343 // AARCH64:#define __INT64_C_SUFFIX__ L
344 // AARCH64:#define __INT64_FMTd__ "ld"
345 // AARCH64:#define __INT64_FMTi__ "li"
346 // AARCH64:#define __INT64_MAX__ 9223372036854775807L
347 // AARCH64:#define __INT64_TYPE__ long int
348 // AARCH64:#define __INT8_C_SUFFIX__
349 // AARCH64:#define __INT8_FMTd__ "hhd"
350 // AARCH64:#define __INT8_FMTi__ "hhi"
351 // AARCH64:#define __INT8_MAX__ 127
352 // AARCH64:#define __INT8_TYPE__ signed char
353 // AARCH64:#define __INTMAX_C_SUFFIX__ L
354 // AARCH64:#define __INTMAX_FMTd__ "ld"
355 // AARCH64:#define __INTMAX_FMTi__ "li"
356 // AARCH64:#define __INTMAX_MAX__ 9223372036854775807L
357 // AARCH64:#define __INTMAX_TYPE__ long int
358 // AARCH64:#define __INTMAX_WIDTH__ 64
359 // AARCH64:#define __INTPTR_FMTd__ "ld"
360 // AARCH64:#define __INTPTR_FMTi__ "li"
361 // AARCH64:#define __INTPTR_MAX__ 9223372036854775807L
362 // AARCH64:#define __INTPTR_TYPE__ long int
363 // AARCH64:#define __INTPTR_WIDTH__ 64
364 // AARCH64:#define __INT_FAST16_FMTd__ "hd"
365 // AARCH64:#define __INT_FAST16_FMTi__ "hi"
366 // AARCH64:#define __INT_FAST16_MAX__ 32767
367 // AARCH64:#define __INT_FAST16_TYPE__ short
368 // AARCH64:#define __INT_FAST32_FMTd__ "d"
369 // AARCH64:#define __INT_FAST32_FMTi__ "i"
370 // AARCH64:#define __INT_FAST32_MAX__ 2147483647
371 // AARCH64:#define __INT_FAST32_TYPE__ int
372 // AARCH64:#define __INT_FAST64_FMTd__ "ld"
373 // AARCH64:#define __INT_FAST64_FMTi__ "li"
374 // AARCH64:#define __INT_FAST64_MAX__ 9223372036854775807L
375 // AARCH64:#define __INT_FAST64_TYPE__ long int
376 // AARCH64:#define __INT_FAST8_FMTd__ "hhd"
377 // AARCH64:#define __INT_FAST8_FMTi__ "hhi"
378 // AARCH64:#define __INT_FAST8_MAX__ 127
379 // AARCH64:#define __INT_FAST8_TYPE__ signed char
380 // AARCH64:#define __INT_LEAST16_FMTd__ "hd"
381 // AARCH64:#define __INT_LEAST16_FMTi__ "hi"
382 // AARCH64:#define __INT_LEAST16_MAX__ 32767
383 // AARCH64:#define __INT_LEAST16_TYPE__ short
384 // AARCH64:#define __INT_LEAST32_FMTd__ "d"
385 // AARCH64:#define __INT_LEAST32_FMTi__ "i"
386 // AARCH64:#define __INT_LEAST32_MAX__ 2147483647
387 // AARCH64:#define __INT_LEAST32_TYPE__ int
388 // AARCH64:#define __INT_LEAST64_FMTd__ "ld"
389 // AARCH64:#define __INT_LEAST64_FMTi__ "li"
390 // AARCH64:#define __INT_LEAST64_MAX__ 9223372036854775807L
391 // AARCH64:#define __INT_LEAST64_TYPE__ long int
392 // AARCH64:#define __INT_LEAST8_FMTd__ "hhd"
393 // AARCH64:#define __INT_LEAST8_FMTi__ "hhi"
394 // AARCH64:#define __INT_LEAST8_MAX__ 127
395 // AARCH64:#define __INT_LEAST8_TYPE__ signed char
396 // AARCH64:#define __INT_MAX__ 2147483647
397 // AARCH64:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
398 // AARCH64:#define __LDBL_DIG__ 33
399 // AARCH64:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
400 // AARCH64:#define __LDBL_HAS_DENORM__ 1
401 // AARCH64:#define __LDBL_HAS_INFINITY__ 1
402 // AARCH64:#define __LDBL_HAS_QUIET_NAN__ 1
403 // AARCH64:#define __LDBL_MANT_DIG__ 113
404 // AARCH64:#define __LDBL_MAX_10_EXP__ 4932
405 // AARCH64:#define __LDBL_MAX_EXP__ 16384
406 // AARCH64:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
407 // AARCH64:#define __LDBL_MIN_10_EXP__ (-4931)
408 // AARCH64:#define __LDBL_MIN_EXP__ (-16381)
409 // AARCH64:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
410 // AARCH64:#define __LONG_LONG_MAX__ 9223372036854775807LL
411 // AARCH64:#define __LONG_MAX__ 9223372036854775807L
412 // AARCH64:#define __LP64__ 1
413 // AARCH64:#define __POINTER_WIDTH__ 64
414 // AARCH64:#define __PTRDIFF_TYPE__ long int
415 // AARCH64:#define __PTRDIFF_WIDTH__ 64
416 // AARCH64:#define __SCHAR_MAX__ 127
417 // AARCH64:#define __SHRT_MAX__ 32767
418 // AARCH64:#define __SIG_ATOMIC_MAX__ 2147483647
419 // AARCH64:#define __SIG_ATOMIC_WIDTH__ 32
420 // AARCH64:#define __SIZEOF_DOUBLE__ 8
421 // AARCH64:#define __SIZEOF_FLOAT__ 4
422 // AARCH64:#define __SIZEOF_INT128__ 16
423 // AARCH64:#define __SIZEOF_INT__ 4
424 // AARCH64:#define __SIZEOF_LONG_DOUBLE__ 16
425 // AARCH64:#define __SIZEOF_LONG_LONG__ 8
426 // AARCH64:#define __SIZEOF_LONG__ 8
427 // AARCH64:#define __SIZEOF_POINTER__ 8
428 // AARCH64:#define __SIZEOF_PTRDIFF_T__ 8
429 // AARCH64:#define __SIZEOF_SHORT__ 2
430 // AARCH64:#define __SIZEOF_SIZE_T__ 8
431 // AARCH64:#define __SIZEOF_WCHAR_T__ 4
432 // AARCH64:#define __SIZEOF_WINT_T__ 4
433 // AARCH64:#define __SIZE_MAX__ 18446744073709551615UL
434 // AARCH64:#define __SIZE_TYPE__ long unsigned int
435 // AARCH64:#define __SIZE_WIDTH__ 64
436 // AARCH64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
437 // AARCH64:#define __UINT16_C_SUFFIX__
438 // AARCH64:#define __UINT16_MAX__ 65535
439 // AARCH64:#define __UINT16_TYPE__ unsigned short
440 // AARCH64:#define __UINT32_C_SUFFIX__ U
441 // AARCH64:#define __UINT32_MAX__ 4294967295U
442 // AARCH64:#define __UINT32_TYPE__ unsigned int
443 // AARCH64:#define __UINT64_C_SUFFIX__ UL
444 // AARCH64:#define __UINT64_MAX__ 18446744073709551615UL
445 // AARCH64:#define __UINT64_TYPE__ long unsigned int
446 // AARCH64:#define __UINT8_C_SUFFIX__
447 // AARCH64:#define __UINT8_MAX__ 255
448 // AARCH64:#define __UINT8_TYPE__ unsigned char
449 // AARCH64:#define __UINTMAX_C_SUFFIX__ UL
450 // AARCH64:#define __UINTMAX_MAX__ 18446744073709551615UL
451 // AARCH64:#define __UINTMAX_TYPE__ long unsigned int
452 // AARCH64:#define __UINTMAX_WIDTH__ 64
453 // AARCH64:#define __UINTPTR_MAX__ 18446744073709551615UL
454 // AARCH64:#define __UINTPTR_TYPE__ long unsigned int
455 // AARCH64:#define __UINTPTR_WIDTH__ 64
456 // AARCH64:#define __UINT_FAST16_MAX__ 65535
457 // AARCH64:#define __UINT_FAST16_TYPE__ unsigned short
458 // AARCH64:#define __UINT_FAST32_MAX__ 4294967295U
459 // AARCH64:#define __UINT_FAST32_TYPE__ unsigned int
460 // AARCH64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
461 // AARCH64:#define __UINT_FAST64_TYPE__ long unsigned int
462 // AARCH64:#define __UINT_FAST8_MAX__ 255
463 // AARCH64:#define __UINT_FAST8_TYPE__ unsigned char
464 // AARCH64:#define __UINT_LEAST16_MAX__ 65535
465 // AARCH64:#define __UINT_LEAST16_TYPE__ unsigned short
466 // AARCH64:#define __UINT_LEAST32_MAX__ 4294967295U
467 // AARCH64:#define __UINT_LEAST32_TYPE__ unsigned int
468 // AARCH64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
469 // AARCH64:#define __UINT_LEAST64_TYPE__ long unsigned int
470 // AARCH64:#define __UINT_LEAST8_MAX__ 255
471 // AARCH64:#define __UINT_LEAST8_TYPE__ unsigned char
472 // AARCH64:#define __USER_LABEL_PREFIX__
473 // AARCH64:#define __WCHAR_MAX__ 4294967295U
474 // AARCH64:#define __WCHAR_TYPE__ unsigned int
475 // AARCH64:#define __WCHAR_UNSIGNED__ 1
476 // AARCH64:#define __WCHAR_WIDTH__ 32
477 // AARCH64:#define __WINT_TYPE__ int
478 // AARCH64:#define __WINT_WIDTH__ 32
479 // AARCH64:#define __aarch64__ 1
480 //
481 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64_be-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-BE %s
482 //
483 // AARCH64-BE:#define _LP64 1
484 // AARCH64-BE:#define __AARCH64EB__ 1
485 // AARCH64-BE-NOT:#define __AARCH64EL__ 1
486 // AARCH64-BE:#define __AARCH_BIG_ENDIAN 1
487 // AARCH64-BE:#define __ARM_64BIT_STATE 1
488 // AARCH64-BE:#define __ARM_ARCH 8
489 // AARCH64-BE:#define __ARM_ARCH_ISA_A64 1
490 // AARCH64-BE:#define __ARM_BIG_ENDIAN 1
491 // AARCH64-BE:#define __BIGGEST_ALIGNMENT__ 16
492 // AARCH64-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
493 // AARCH64-BE:#define __CHAR16_TYPE__ unsigned short
494 // AARCH64-BE:#define __CHAR32_TYPE__ unsigned int
495 // AARCH64-BE:#define __CHAR_BIT__ 8
496 // AARCH64-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
497 // AARCH64-BE:#define __DBL_DIG__ 15
498 // AARCH64-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
499 // AARCH64-BE:#define __DBL_HAS_DENORM__ 1
500 // AARCH64-BE:#define __DBL_HAS_INFINITY__ 1
501 // AARCH64-BE:#define __DBL_HAS_QUIET_NAN__ 1
502 // AARCH64-BE:#define __DBL_MANT_DIG__ 53
503 // AARCH64-BE:#define __DBL_MAX_10_EXP__ 308
504 // AARCH64-BE:#define __DBL_MAX_EXP__ 1024
505 // AARCH64-BE:#define __DBL_MAX__ 1.7976931348623157e+308
506 // AARCH64-BE:#define __DBL_MIN_10_EXP__ (-307)
507 // AARCH64-BE:#define __DBL_MIN_EXP__ (-1021)
508 // AARCH64-BE:#define __DBL_MIN__ 2.2250738585072014e-308
509 // AARCH64-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
510 // AARCH64-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
511 // AARCH64-BE:#define __FLT_DIG__ 6
512 // AARCH64-BE:#define __FLT_EPSILON__ 1.19209290e-7F
513 // AARCH64-BE:#define __FLT_EVAL_METHOD__ 0
514 // AARCH64-BE:#define __FLT_HAS_DENORM__ 1
515 // AARCH64-BE:#define __FLT_HAS_INFINITY__ 1
516 // AARCH64-BE:#define __FLT_HAS_QUIET_NAN__ 1
517 // AARCH64-BE:#define __FLT_MANT_DIG__ 24
518 // AARCH64-BE:#define __FLT_MAX_10_EXP__ 38
519 // AARCH64-BE:#define __FLT_MAX_EXP__ 128
520 // AARCH64-BE:#define __FLT_MAX__ 3.40282347e+38F
521 // AARCH64-BE:#define __FLT_MIN_10_EXP__ (-37)
522 // AARCH64-BE:#define __FLT_MIN_EXP__ (-125)
523 // AARCH64-BE:#define __FLT_MIN__ 1.17549435e-38F
524 // AARCH64-BE:#define __FLT_RADIX__ 2
525 // AARCH64-BE:#define __INT16_C_SUFFIX__
526 // AARCH64-BE:#define __INT16_FMTd__ "hd"
527 // AARCH64-BE:#define __INT16_FMTi__ "hi"
528 // AARCH64-BE:#define __INT16_MAX__ 32767
529 // AARCH64-BE:#define __INT16_TYPE__ short
530 // AARCH64-BE:#define __INT32_C_SUFFIX__
531 // AARCH64-BE:#define __INT32_FMTd__ "d"
532 // AARCH64-BE:#define __INT32_FMTi__ "i"
533 // AARCH64-BE:#define __INT32_MAX__ 2147483647
534 // AARCH64-BE:#define __INT32_TYPE__ int
535 // AARCH64-BE:#define __INT64_C_SUFFIX__ L
536 // AARCH64-BE:#define __INT64_FMTd__ "ld"
537 // AARCH64-BE:#define __INT64_FMTi__ "li"
538 // AARCH64-BE:#define __INT64_MAX__ 9223372036854775807L
539 // AARCH64-BE:#define __INT64_TYPE__ long int
540 // AARCH64-BE:#define __INT8_C_SUFFIX__
541 // AARCH64-BE:#define __INT8_FMTd__ "hhd"
542 // AARCH64-BE:#define __INT8_FMTi__ "hhi"
543 // AARCH64-BE:#define __INT8_MAX__ 127
544 // AARCH64-BE:#define __INT8_TYPE__ signed char
545 // AARCH64-BE:#define __INTMAX_C_SUFFIX__ L
546 // AARCH64-BE:#define __INTMAX_FMTd__ "ld"
547 // AARCH64-BE:#define __INTMAX_FMTi__ "li"
548 // AARCH64-BE:#define __INTMAX_MAX__ 9223372036854775807L
549 // AARCH64-BE:#define __INTMAX_TYPE__ long int
550 // AARCH64-BE:#define __INTMAX_WIDTH__ 64
551 // AARCH64-BE:#define __INTPTR_FMTd__ "ld"
552 // AARCH64-BE:#define __INTPTR_FMTi__ "li"
553 // AARCH64-BE:#define __INTPTR_MAX__ 9223372036854775807L
554 // AARCH64-BE:#define __INTPTR_TYPE__ long int
555 // AARCH64-BE:#define __INTPTR_WIDTH__ 64
556 // AARCH64-BE:#define __INT_FAST16_FMTd__ "hd"
557 // AARCH64-BE:#define __INT_FAST16_FMTi__ "hi"
558 // AARCH64-BE:#define __INT_FAST16_MAX__ 32767
559 // AARCH64-BE:#define __INT_FAST16_TYPE__ short
560 // AARCH64-BE:#define __INT_FAST32_FMTd__ "d"
561 // AARCH64-BE:#define __INT_FAST32_FMTi__ "i"
562 // AARCH64-BE:#define __INT_FAST32_MAX__ 2147483647
563 // AARCH64-BE:#define __INT_FAST32_TYPE__ int
564 // AARCH64-BE:#define __INT_FAST64_FMTd__ "ld"
565 // AARCH64-BE:#define __INT_FAST64_FMTi__ "li"
566 // AARCH64-BE:#define __INT_FAST64_MAX__ 9223372036854775807L
567 // AARCH64-BE:#define __INT_FAST64_TYPE__ long int
568 // AARCH64-BE:#define __INT_FAST8_FMTd__ "hhd"
569 // AARCH64-BE:#define __INT_FAST8_FMTi__ "hhi"
570 // AARCH64-BE:#define __INT_FAST8_MAX__ 127
571 // AARCH64-BE:#define __INT_FAST8_TYPE__ signed char
572 // AARCH64-BE:#define __INT_LEAST16_FMTd__ "hd"
573 // AARCH64-BE:#define __INT_LEAST16_FMTi__ "hi"
574 // AARCH64-BE:#define __INT_LEAST16_MAX__ 32767
575 // AARCH64-BE:#define __INT_LEAST16_TYPE__ short
576 // AARCH64-BE:#define __INT_LEAST32_FMTd__ "d"
577 // AARCH64-BE:#define __INT_LEAST32_FMTi__ "i"
578 // AARCH64-BE:#define __INT_LEAST32_MAX__ 2147483647
579 // AARCH64-BE:#define __INT_LEAST32_TYPE__ int
580 // AARCH64-BE:#define __INT_LEAST64_FMTd__ "ld"
581 // AARCH64-BE:#define __INT_LEAST64_FMTi__ "li"
582 // AARCH64-BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
583 // AARCH64-BE:#define __INT_LEAST64_TYPE__ long int
584 // AARCH64-BE:#define __INT_LEAST8_FMTd__ "hhd"
585 // AARCH64-BE:#define __INT_LEAST8_FMTi__ "hhi"
586 // AARCH64-BE:#define __INT_LEAST8_MAX__ 127
587 // AARCH64-BE:#define __INT_LEAST8_TYPE__ signed char
588 // AARCH64-BE:#define __INT_MAX__ 2147483647
589 // AARCH64-BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
590 // AARCH64-BE:#define __LDBL_DIG__ 33
591 // AARCH64-BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
592 // AARCH64-BE:#define __LDBL_HAS_DENORM__ 1
593 // AARCH64-BE:#define __LDBL_HAS_INFINITY__ 1
594 // AARCH64-BE:#define __LDBL_HAS_QUIET_NAN__ 1
595 // AARCH64-BE:#define __LDBL_MANT_DIG__ 113
596 // AARCH64-BE:#define __LDBL_MAX_10_EXP__ 4932
597 // AARCH64-BE:#define __LDBL_MAX_EXP__ 16384
598 // AARCH64-BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
599 // AARCH64-BE:#define __LDBL_MIN_10_EXP__ (-4931)
600 // AARCH64-BE:#define __LDBL_MIN_EXP__ (-16381)
601 // AARCH64-BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
602 // AARCH64-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
603 // AARCH64-BE:#define __LONG_MAX__ 9223372036854775807L
604 // AARCH64-BE:#define __LP64__ 1
605 // AARCH64-BE:#define __POINTER_WIDTH__ 64
606 // AARCH64-BE:#define __PTRDIFF_TYPE__ long int
607 // AARCH64-BE:#define __PTRDIFF_WIDTH__ 64
608 // AARCH64-BE:#define __SCHAR_MAX__ 127
609 // AARCH64-BE:#define __SHRT_MAX__ 32767
610 // AARCH64-BE:#define __SIG_ATOMIC_MAX__ 2147483647
611 // AARCH64-BE:#define __SIG_ATOMIC_WIDTH__ 32
612 // AARCH64-BE:#define __SIZEOF_DOUBLE__ 8
613 // AARCH64-BE:#define __SIZEOF_FLOAT__ 4
614 // AARCH64-BE:#define __SIZEOF_INT128__ 16
615 // AARCH64-BE:#define __SIZEOF_INT__ 4
616 // AARCH64-BE:#define __SIZEOF_LONG_DOUBLE__ 16
617 // AARCH64-BE:#define __SIZEOF_LONG_LONG__ 8
618 // AARCH64-BE:#define __SIZEOF_LONG__ 8
619 // AARCH64-BE:#define __SIZEOF_POINTER__ 8
620 // AARCH64-BE:#define __SIZEOF_PTRDIFF_T__ 8
621 // AARCH64-BE:#define __SIZEOF_SHORT__ 2
622 // AARCH64-BE:#define __SIZEOF_SIZE_T__ 8
623 // AARCH64-BE:#define __SIZEOF_WCHAR_T__ 4
624 // AARCH64-BE:#define __SIZEOF_WINT_T__ 4
625 // AARCH64-BE:#define __SIZE_MAX__ 18446744073709551615UL
626 // AARCH64-BE:#define __SIZE_TYPE__ long unsigned int
627 // AARCH64-BE:#define __SIZE_WIDTH__ 64
628 // AARCH64-BE:#define __UINT16_C_SUFFIX__
629 // AARCH64-BE:#define __UINT16_MAX__ 65535
630 // AARCH64-BE:#define __UINT16_TYPE__ unsigned short
631 // AARCH64-BE:#define __UINT32_C_SUFFIX__ U
632 // AARCH64-BE:#define __UINT32_MAX__ 4294967295U
633 // AARCH64-BE:#define __UINT32_TYPE__ unsigned int
634 // AARCH64-BE:#define __UINT64_C_SUFFIX__ UL
635 // AARCH64-BE:#define __UINT64_MAX__ 18446744073709551615UL
636 // AARCH64-BE:#define __UINT64_TYPE__ long unsigned int
637 // AARCH64-BE:#define __UINT8_C_SUFFIX__
638 // AARCH64-BE:#define __UINT8_MAX__ 255
639 // AARCH64-BE:#define __UINT8_TYPE__ unsigned char
640 // AARCH64-BE:#define __UINTMAX_C_SUFFIX__ UL
641 // AARCH64-BE:#define __UINTMAX_MAX__ 18446744073709551615UL
642 // AARCH64-BE:#define __UINTMAX_TYPE__ long unsigned int
643 // AARCH64-BE:#define __UINTMAX_WIDTH__ 64
644 // AARCH64-BE:#define __UINTPTR_MAX__ 18446744073709551615UL
645 // AARCH64-BE:#define __UINTPTR_TYPE__ long unsigned int
646 // AARCH64-BE:#define __UINTPTR_WIDTH__ 64
647 // AARCH64-BE:#define __UINT_FAST16_MAX__ 65535
648 // AARCH64-BE:#define __UINT_FAST16_TYPE__ unsigned short
649 // AARCH64-BE:#define __UINT_FAST32_MAX__ 4294967295U
650 // AARCH64-BE:#define __UINT_FAST32_TYPE__ unsigned int
651 // AARCH64-BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
652 // AARCH64-BE:#define __UINT_FAST64_TYPE__ long unsigned int
653 // AARCH64-BE:#define __UINT_FAST8_MAX__ 255
654 // AARCH64-BE:#define __UINT_FAST8_TYPE__ unsigned char
655 // AARCH64-BE:#define __UINT_LEAST16_MAX__ 65535
656 // AARCH64-BE:#define __UINT_LEAST16_TYPE__ unsigned short
657 // AARCH64-BE:#define __UINT_LEAST32_MAX__ 4294967295U
658 // AARCH64-BE:#define __UINT_LEAST32_TYPE__ unsigned int
659 // AARCH64-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
660 // AARCH64-BE:#define __UINT_LEAST64_TYPE__ long unsigned int
661 // AARCH64-BE:#define __UINT_LEAST8_MAX__ 255
662 // AARCH64-BE:#define __UINT_LEAST8_TYPE__ unsigned char
663 // AARCH64-BE:#define __USER_LABEL_PREFIX__
664 // AARCH64-BE:#define __WCHAR_MAX__ 4294967295U
665 // AARCH64-BE:#define __WCHAR_TYPE__ unsigned int
666 // AARCH64-BE:#define __WCHAR_UNSIGNED__ 1
667 // AARCH64-BE:#define __WCHAR_WIDTH__ 32
668 // AARCH64-BE:#define __WINT_TYPE__ int
669 // AARCH64-BE:#define __WINT_WIDTH__ 32
670 // AARCH64-BE:#define __aarch64__ 1
671 //
672 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-NETBSD %s
673 //
674 // AARCH64-NETBSD:#define _LP64 1
675 // AARCH64-NETBSD-NOT:#define __AARCH64EB__ 1
676 // AARCH64-NETBSD:#define __AARCH64EL__ 1
677 // AARCH64-NETBSD-NOT:#define __AARCH_BIG_ENDIAN 1
678 // AARCH64-NETBSD:#define __ARM_64BIT_STATE 1
679 // AARCH64-NETBSD:#define __ARM_ARCH 8
680 // AARCH64-NETBSD:#define __ARM_ARCH_ISA_A64 1
681 // AARCH64-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
682 // AARCH64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
683 // AARCH64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
684 // AARCH64-NETBSD:#define __CHAR16_TYPE__ unsigned short
685 // AARCH64-NETBSD:#define __CHAR32_TYPE__ unsigned int
686 // AARCH64-NETBSD:#define __CHAR_BIT__ 8
687 // AARCH64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
688 // AARCH64-NETBSD:#define __DBL_DIG__ 15
689 // AARCH64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
690 // AARCH64-NETBSD:#define __DBL_HAS_DENORM__ 1
691 // AARCH64-NETBSD:#define __DBL_HAS_INFINITY__ 1
692 // AARCH64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
693 // AARCH64-NETBSD:#define __DBL_MANT_DIG__ 53
694 // AARCH64-NETBSD:#define __DBL_MAX_10_EXP__ 308
695 // AARCH64-NETBSD:#define __DBL_MAX_EXP__ 1024
696 // AARCH64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
697 // AARCH64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
698 // AARCH64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
699 // AARCH64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
700 // AARCH64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
701 // AARCH64-NETBSD:#define __ELF__ 1
702 // AARCH64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
703 // AARCH64-NETBSD:#define __FLT_DIG__ 6
704 // AARCH64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
705 // AARCH64-NETBSD:#define __FLT_EVAL_METHOD__ 0
706 // AARCH64-NETBSD:#define __FLT_HAS_DENORM__ 1
707 // AARCH64-NETBSD:#define __FLT_HAS_INFINITY__ 1
708 // AARCH64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
709 // AARCH64-NETBSD:#define __FLT_MANT_DIG__ 24
710 // AARCH64-NETBSD:#define __FLT_MAX_10_EXP__ 38
711 // AARCH64-NETBSD:#define __FLT_MAX_EXP__ 128
712 // AARCH64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
713 // AARCH64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
714 // AARCH64-NETBSD:#define __FLT_MIN_EXP__ (-125)
715 // AARCH64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
716 // AARCH64-NETBSD:#define __FLT_RADIX__ 2
717 // AARCH64-NETBSD:#define __INT16_C_SUFFIX__
718 // AARCH64-NETBSD:#define __INT16_FMTd__ "hd"
719 // AARCH64-NETBSD:#define __INT16_FMTi__ "hi"
720 // AARCH64-NETBSD:#define __INT16_MAX__ 32767
721 // AARCH64-NETBSD:#define __INT16_TYPE__ short
722 // AARCH64-NETBSD:#define __INT32_C_SUFFIX__
723 // AARCH64-NETBSD:#define __INT32_FMTd__ "d"
724 // AARCH64-NETBSD:#define __INT32_FMTi__ "i"
725 // AARCH64-NETBSD:#define __INT32_MAX__ 2147483647
726 // AARCH64-NETBSD:#define __INT32_TYPE__ int
727 // AARCH64-NETBSD:#define __INT64_C_SUFFIX__ L
728 // AARCH64-NETBSD:#define __INT64_FMTd__ "ld"
729 // AARCH64-NETBSD:#define __INT64_FMTi__ "li"
730 // AARCH64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
731 // AARCH64-NETBSD:#define __INT64_TYPE__ long int
732 // AARCH64-NETBSD:#define __INT8_C_SUFFIX__
733 // AARCH64-NETBSD:#define __INT8_FMTd__ "hhd"
734 // AARCH64-NETBSD:#define __INT8_FMTi__ "hhi"
735 // AARCH64-NETBSD:#define __INT8_MAX__ 127
736 // AARCH64-NETBSD:#define __INT8_TYPE__ signed char
737 // AARCH64-NETBSD:#define __INTMAX_C_SUFFIX__ L
738 // AARCH64-NETBSD:#define __INTMAX_FMTd__ "ld"
739 // AARCH64-NETBSD:#define __INTMAX_FMTi__ "li"
740 // AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
741 // AARCH64-NETBSD:#define __INTMAX_TYPE__ long int
742 // AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64
743 // AARCH64-NETBSD:#define __INTPTR_FMTd__ "ld"
744 // AARCH64-NETBSD:#define __INTPTR_FMTi__ "li"
745 // AARCH64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
746 // AARCH64-NETBSD:#define __INTPTR_TYPE__ long int
747 // AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64
748 // AARCH64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
749 // AARCH64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
750 // AARCH64-NETBSD:#define __INT_FAST16_MAX__ 32767
751 // AARCH64-NETBSD:#define __INT_FAST16_TYPE__ short
752 // AARCH64-NETBSD:#define __INT_FAST32_FMTd__ "d"
753 // AARCH64-NETBSD:#define __INT_FAST32_FMTi__ "i"
754 // AARCH64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
755 // AARCH64-NETBSD:#define __INT_FAST32_TYPE__ int
756 // AARCH64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
757 // AARCH64-NETBSD:#define __INT_FAST64_FMTi__ "li"
758 // AARCH64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
759 // AARCH64-NETBSD:#define __INT_FAST64_TYPE__ long int
760 // AARCH64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
761 // AARCH64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
762 // AARCH64-NETBSD:#define __INT_FAST8_MAX__ 127
763 // AARCH64-NETBSD:#define __INT_FAST8_TYPE__ signed char
764 // AARCH64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
765 // AARCH64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
766 // AARCH64-NETBSD:#define __INT_LEAST16_MAX__ 32767
767 // AARCH64-NETBSD:#define __INT_LEAST16_TYPE__ short
768 // AARCH64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
769 // AARCH64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
770 // AARCH64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
771 // AARCH64-NETBSD:#define __INT_LEAST32_TYPE__ int
772 // AARCH64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
773 // AARCH64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
774 // AARCH64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
775 // AARCH64-NETBSD:#define __INT_LEAST64_TYPE__ long int
776 // AARCH64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
777 // AARCH64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
778 // AARCH64-NETBSD:#define __INT_LEAST8_MAX__ 127
779 // AARCH64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
780 // AARCH64-NETBSD:#define __INT_MAX__ 2147483647
781 // AARCH64-NETBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
782 // AARCH64-NETBSD:#define __LDBL_DIG__ 33
783 // AARCH64-NETBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
784 // AARCH64-NETBSD:#define __LDBL_HAS_DENORM__ 1
785 // AARCH64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
786 // AARCH64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
787 // AARCH64-NETBSD:#define __LDBL_MANT_DIG__ 113
788 // AARCH64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
789 // AARCH64-NETBSD:#define __LDBL_MAX_EXP__ 16384
790 // AARCH64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
791 // AARCH64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
792 // AARCH64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
793 // AARCH64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
794 // AARCH64-NETBSD:#define __LITTLE_ENDIAN__ 1
795 // AARCH64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
796 // AARCH64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
797 // AARCH64-NETBSD:#define __LP64__ 1
798 // AARCH64-NETBSD:#define __NetBSD__ 1
799 // AARCH64-NETBSD:#define __POINTER_WIDTH__ 64
800 // AARCH64-NETBSD:#define __PTRDIFF_TYPE__ long int
801 // AARCH64-NETBSD:#define __PTRDIFF_WIDTH__ 64
802 // AARCH64-NETBSD:#define __SCHAR_MAX__ 127
803 // AARCH64-NETBSD:#define __SHRT_MAX__ 32767
804 // AARCH64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
805 // AARCH64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
806 // AARCH64-NETBSD:#define __SIZEOF_DOUBLE__ 8
807 // AARCH64-NETBSD:#define __SIZEOF_FLOAT__ 4
808 // AARCH64-NETBSD:#define __SIZEOF_INT__ 4
809 // AARCH64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
810 // AARCH64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
811 // AARCH64-NETBSD:#define __SIZEOF_LONG__ 8
812 // AARCH64-NETBSD:#define __SIZEOF_POINTER__ 8
813 // AARCH64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
814 // AARCH64-NETBSD:#define __SIZEOF_SHORT__ 2
815 // AARCH64-NETBSD:#define __SIZEOF_SIZE_T__ 8
816 // AARCH64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
817 // AARCH64-NETBSD:#define __SIZEOF_WINT_T__ 4
818 // AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
819 // AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int
820 // AARCH64-NETBSD:#define __SIZE_WIDTH__ 64
821 // AARCH64-NETBSD:#define __UINT16_C_SUFFIX__
822 // AARCH64-NETBSD:#define __UINT16_MAX__ 65535
823 // AARCH64-NETBSD:#define __UINT16_TYPE__ unsigned short
824 // AARCH64-NETBSD:#define __UINT32_C_SUFFIX__ U
825 // AARCH64-NETBSD:#define __UINT32_MAX__ 4294967295U
826 // AARCH64-NETBSD:#define __UINT32_TYPE__ unsigned int
827 // AARCH64-NETBSD:#define __UINT64_C_SUFFIX__ UL
828 // AARCH64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
829 // AARCH64-NETBSD:#define __UINT64_TYPE__ long unsigned int
830 // AARCH64-NETBSD:#define __UINT8_C_SUFFIX__
831 // AARCH64-NETBSD:#define __UINT8_MAX__ 255
832 // AARCH64-NETBSD:#define __UINT8_TYPE__ unsigned char
833 // AARCH64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
834 // AARCH64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
835 // AARCH64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
836 // AARCH64-NETBSD:#define __UINTMAX_WIDTH__ 64
837 // AARCH64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
838 // AARCH64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
839 // AARCH64-NETBSD:#define __UINTPTR_WIDTH__ 64
840 // AARCH64-NETBSD:#define __UINT_FAST16_MAX__ 65535
841 // AARCH64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
842 // AARCH64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
843 // AARCH64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
844 // AARCH64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
845 // AARCH64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
846 // AARCH64-NETBSD:#define __UINT_FAST8_MAX__ 255
847 // AARCH64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
848 // AARCH64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
849 // AARCH64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
850 // AARCH64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
851 // AARCH64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
852 // AARCH64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
853 // AARCH64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
854 // AARCH64-NETBSD:#define __UINT_LEAST8_MAX__ 255
855 // AARCH64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
856 // AARCH64-NETBSD:#define __USER_LABEL_PREFIX__
857 // AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647
858 // AARCH64-NETBSD:#define __WCHAR_TYPE__ int
859 // AARCH64-NETBSD:#define __WCHAR_WIDTH__ 32
860 // AARCH64-NETBSD:#define __WINT_TYPE__ int
861 // AARCH64-NETBSD:#define __WINT_WIDTH__ 32
862 // AARCH64-NETBSD:#define __aarch64__ 1
863 //
864 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-OPENBSD %s
865 //
866 // AARCH64-OPENBSD:#define _LP64 1
867 // AARCH64-OPENBSD-NOT:#define __AARCH64EB__ 1
868 // AARCH64-OPENBSD:#define __AARCH64EL__ 1
869 // AARCH64-OPENBSD-NOT:#define __AARCH_BIG_ENDIAN 1
870 // AARCH64-OPENBSD:#define __ARM_64BIT_STATE 1
871 // AARCH64-OPENBSD:#define __ARM_ARCH 8
872 // AARCH64-OPENBSD:#define __ARM_ARCH_ISA_A64 1
873 // AARCH64-OPENBSD-NOT:#define __ARM_BIG_ENDIAN 1
874 // AARCH64-OPENBSD:#define __BIGGEST_ALIGNMENT__ 16
875 // AARCH64-OPENBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
876 // AARCH64-OPENBSD:#define __CHAR16_TYPE__ unsigned short
877 // AARCH64-OPENBSD:#define __CHAR32_TYPE__ unsigned int
878 // AARCH64-OPENBSD:#define __CHAR_BIT__ 8
879 // AARCH64-OPENBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
880 // AARCH64-OPENBSD:#define __DBL_DIG__ 15
881 // AARCH64-OPENBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
882 // AARCH64-OPENBSD:#define __DBL_HAS_DENORM__ 1
883 // AARCH64-OPENBSD:#define __DBL_HAS_INFINITY__ 1
884 // AARCH64-OPENBSD:#define __DBL_HAS_QUIET_NAN__ 1
885 // AARCH64-OPENBSD:#define __DBL_MANT_DIG__ 53
886 // AARCH64-OPENBSD:#define __DBL_MAX_10_EXP__ 308
887 // AARCH64-OPENBSD:#define __DBL_MAX_EXP__ 1024
888 // AARCH64-OPENBSD:#define __DBL_MAX__ 1.7976931348623157e+308
889 // AARCH64-OPENBSD:#define __DBL_MIN_10_EXP__ (-307)
890 // AARCH64-OPENBSD:#define __DBL_MIN_EXP__ (-1021)
891 // AARCH64-OPENBSD:#define __DBL_MIN__ 2.2250738585072014e-308
892 // AARCH64-OPENBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
893 // AARCH64-OPENBSD:#define __ELF__ 1
894 // AARCH64-OPENBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
895 // AARCH64-OPENBSD:#define __FLT_DIG__ 6
896 // AARCH64-OPENBSD:#define __FLT_EPSILON__ 1.19209290e-7F
897 // AARCH64-OPENBSD:#define __FLT_EVAL_METHOD__ 0
898 // AARCH64-OPENBSD:#define __FLT_HAS_DENORM__ 1
899 // AARCH64-OPENBSD:#define __FLT_HAS_INFINITY__ 1
900 // AARCH64-OPENBSD:#define __FLT_HAS_QUIET_NAN__ 1
901 // AARCH64-OPENBSD:#define __FLT_MANT_DIG__ 24
902 // AARCH64-OPENBSD:#define __FLT_MAX_10_EXP__ 38
903 // AARCH64-OPENBSD:#define __FLT_MAX_EXP__ 128
904 // AARCH64-OPENBSD:#define __FLT_MAX__ 3.40282347e+38F
905 // AARCH64-OPENBSD:#define __FLT_MIN_10_EXP__ (-37)
906 // AARCH64-OPENBSD:#define __FLT_MIN_EXP__ (-125)
907 // AARCH64-OPENBSD:#define __FLT_MIN__ 1.17549435e-38F
908 // AARCH64-OPENBSD:#define __FLT_RADIX__ 2
909 // AARCH64-OPENBSD:#define __INT16_C_SUFFIX__
910 // AARCH64-OPENBSD:#define __INT16_FMTd__ "hd"
911 // AARCH64-OPENBSD:#define __INT16_FMTi__ "hi"
912 // AARCH64-OPENBSD:#define __INT16_MAX__ 32767
913 // AARCH64-OPENBSD:#define __INT16_TYPE__ short
914 // AARCH64-OPENBSD:#define __INT32_C_SUFFIX__
915 // AARCH64-OPENBSD:#define __INT32_FMTd__ "d"
916 // AARCH64-OPENBSD:#define __INT32_FMTi__ "i"
917 // AARCH64-OPENBSD:#define __INT32_MAX__ 2147483647
918 // AARCH64-OPENBSD:#define __INT32_TYPE__ int
919 // AARCH64-OPENBSD:#define __INT64_C_SUFFIX__ LL
920 // AARCH64-OPENBSD:#define __INT64_FMTd__ "lld"
921 // AARCH64-OPENBSD:#define __INT64_FMTi__ "lli"
922 // AARCH64-OPENBSD:#define __INT64_MAX__ 9223372036854775807LL
923 // AARCH64-OPENBSD:#define __INT64_TYPE__ long long int
924 // AARCH64-OPENBSD:#define __INT8_C_SUFFIX__
925 // AARCH64-OPENBSD:#define __INT8_FMTd__ "hhd"
926 // AARCH64-OPENBSD:#define __INT8_FMTi__ "hhi"
927 // AARCH64-OPENBSD:#define __INT8_MAX__ 127
928 // AARCH64-OPENBSD:#define __INT8_TYPE__ signed char
929 // AARCH64-OPENBSD:#define __INTMAX_C_SUFFIX__ LL
930 // AARCH64-OPENBSD:#define __INTMAX_FMTd__ "lld"
931 // AARCH64-OPENBSD:#define __INTMAX_FMTi__ "lli"
932 // AARCH64-OPENBSD:#define __INTMAX_MAX__ 9223372036854775807LL
933 // AARCH64-OPENBSD:#define __INTMAX_TYPE__ long long int
934 // AARCH64-OPENBSD:#define __INTMAX_WIDTH__ 64
935 // AARCH64-OPENBSD:#define __INTPTR_FMTd__ "ld"
936 // AARCH64-OPENBSD:#define __INTPTR_FMTi__ "li"
937 // AARCH64-OPENBSD:#define __INTPTR_MAX__ 9223372036854775807L
938 // AARCH64-OPENBSD:#define __INTPTR_TYPE__ long int
939 // AARCH64-OPENBSD:#define __INTPTR_WIDTH__ 64
940 // AARCH64-OPENBSD:#define __INT_FAST16_FMTd__ "hd"
941 // AARCH64-OPENBSD:#define __INT_FAST16_FMTi__ "hi"
942 // AARCH64-OPENBSD:#define __INT_FAST16_MAX__ 32767
943 // AARCH64-OPENBSD:#define __INT_FAST16_TYPE__ short
944 // AARCH64-OPENBSD:#define __INT_FAST32_FMTd__ "d"
945 // AARCH64-OPENBSD:#define __INT_FAST32_FMTi__ "i"
946 // AARCH64-OPENBSD:#define __INT_FAST32_MAX__ 2147483647
947 // AARCH64-OPENBSD:#define __INT_FAST32_TYPE__ int
948 // AARCH64-OPENBSD:#define __INT_FAST64_FMTd__ "ld"
949 // AARCH64-OPENBSD:#define __INT_FAST64_FMTi__ "li"
950 // AARCH64-OPENBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
951 // AARCH64-OPENBSD:#define __INT_FAST64_TYPE__ long int
952 // AARCH64-OPENBSD:#define __INT_FAST8_FMTd__ "hhd"
953 // AARCH64-OPENBSD:#define __INT_FAST8_FMTi__ "hhi"
954 // AARCH64-OPENBSD:#define __INT_FAST8_MAX__ 127
955 // AARCH64-OPENBSD:#define __INT_FAST8_TYPE__ signed char
956 // AARCH64-OPENBSD:#define __INT_LEAST16_FMTd__ "hd"
957 // AARCH64-OPENBSD:#define __INT_LEAST16_FMTi__ "hi"
958 // AARCH64-OPENBSD:#define __INT_LEAST16_MAX__ 32767
959 // AARCH64-OPENBSD:#define __INT_LEAST16_TYPE__ short
960 // AARCH64-OPENBSD:#define __INT_LEAST32_FMTd__ "d"
961 // AARCH64-OPENBSD:#define __INT_LEAST32_FMTi__ "i"
962 // AARCH64-OPENBSD:#define __INT_LEAST32_MAX__ 2147483647
963 // AARCH64-OPENBSD:#define __INT_LEAST32_TYPE__ int
964 // AARCH64-OPENBSD:#define __INT_LEAST64_FMTd__ "ld"
965 // AARCH64-OPENBSD:#define __INT_LEAST64_FMTi__ "li"
966 // AARCH64-OPENBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
967 // AARCH64-OPENBSD:#define __INT_LEAST64_TYPE__ long int
968 // AARCH64-OPENBSD:#define __INT_LEAST8_FMTd__ "hhd"
969 // AARCH64-OPENBSD:#define __INT_LEAST8_FMTi__ "hhi"
970 // AARCH64-OPENBSD:#define __INT_LEAST8_MAX__ 127
971 // AARCH64-OPENBSD:#define __INT_LEAST8_TYPE__ signed char
972 // AARCH64-OPENBSD:#define __INT_MAX__ 2147483647
973 // AARCH64-OPENBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
974 // AARCH64-OPENBSD:#define __LDBL_DIG__ 33
975 // AARCH64-OPENBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
976 // AARCH64-OPENBSD:#define __LDBL_HAS_DENORM__ 1
977 // AARCH64-OPENBSD:#define __LDBL_HAS_INFINITY__ 1
978 // AARCH64-OPENBSD:#define __LDBL_HAS_QUIET_NAN__ 1
979 // AARCH64-OPENBSD:#define __LDBL_MANT_DIG__ 113
980 // AARCH64-OPENBSD:#define __LDBL_MAX_10_EXP__ 4932
981 // AARCH64-OPENBSD:#define __LDBL_MAX_EXP__ 16384
982 // AARCH64-OPENBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
983 // AARCH64-OPENBSD:#define __LDBL_MIN_10_EXP__ (-4931)
984 // AARCH64-OPENBSD:#define __LDBL_MIN_EXP__ (-16381)
985 // AARCH64-OPENBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
986 // AARCH64-OPENBSD:#define __LITTLE_ENDIAN__ 1
987 // AARCH64-OPENBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
988 // AARCH64-OPENBSD:#define __LONG_MAX__ 9223372036854775807L
989 // AARCH64-OPENBSD:#define __LP64__ 1
990 // AARCH64-OPENBSD:#define __OpenBSD__ 1
991 // AARCH64-OPENBSD:#define __POINTER_WIDTH__ 64
992 // AARCH64-OPENBSD:#define __PTRDIFF_TYPE__ long int
993 // AARCH64-OPENBSD:#define __PTRDIFF_WIDTH__ 64
994 // AARCH64-OPENBSD:#define __SCHAR_MAX__ 127
995 // AARCH64-OPENBSD:#define __SHRT_MAX__ 32767
996 // AARCH64-OPENBSD:#define __SIG_ATOMIC_MAX__ 2147483647
997 // AARCH64-OPENBSD:#define __SIG_ATOMIC_WIDTH__ 32
998 // AARCH64-OPENBSD:#define __SIZEOF_DOUBLE__ 8
999 // AARCH64-OPENBSD:#define __SIZEOF_FLOAT__ 4
1000 // AARCH64-OPENBSD:#define __SIZEOF_INT__ 4
1001 // AARCH64-OPENBSD:#define __SIZEOF_LONG_DOUBLE__ 16
1002 // AARCH64-OPENBSD:#define __SIZEOF_LONG_LONG__ 8
1003 // AARCH64-OPENBSD:#define __SIZEOF_LONG__ 8
1004 // AARCH64-OPENBSD:#define __SIZEOF_POINTER__ 8
1005 // AARCH64-OPENBSD:#define __SIZEOF_PTRDIFF_T__ 8
1006 // AARCH64-OPENBSD:#define __SIZEOF_SHORT__ 2
1007 // AARCH64-OPENBSD:#define __SIZEOF_SIZE_T__ 8
1008 // AARCH64-OPENBSD:#define __SIZEOF_WCHAR_T__ 4
1009 // AARCH64-OPENBSD:#define __SIZEOF_WINT_T__ 4
1010 // AARCH64-OPENBSD:#define __SIZE_MAX__ 18446744073709551615UL
1011 // AARCH64-OPENBSD:#define __SIZE_TYPE__ long unsigned int
1012 // AARCH64-OPENBSD:#define __SIZE_WIDTH__ 64
1013 // AARCH64-OPENBSD:#define __UINT16_C_SUFFIX__
1014 // AARCH64-OPENBSD:#define __UINT16_MAX__ 65535
1015 // AARCH64-OPENBSD:#define __UINT16_TYPE__ unsigned short
1016 // AARCH64-OPENBSD:#define __UINT32_C_SUFFIX__ U
1017 // AARCH64-OPENBSD:#define __UINT32_MAX__ 4294967295U
1018 // AARCH64-OPENBSD:#define __UINT32_TYPE__ unsigned int
1019 // AARCH64-OPENBSD:#define __UINT64_C_SUFFIX__ ULL
1020 // AARCH64-OPENBSD:#define __UINT64_MAX__ 18446744073709551615ULL
1021 // AARCH64-OPENBSD:#define __UINT64_TYPE__ long long unsigned int
1022 // AARCH64-OPENBSD:#define __UINT8_C_SUFFIX__
1023 // AARCH64-OPENBSD:#define __UINT8_MAX__ 255
1024 // AARCH64-OPENBSD:#define __UINT8_TYPE__ unsigned char
1025 // AARCH64-OPENBSD:#define __UINTMAX_C_SUFFIX__ ULL
1026 // AARCH64-OPENBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
1027 // AARCH64-OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
1028 // AARCH64-OPENBSD:#define __UINTMAX_WIDTH__ 64
1029 // AARCH64-OPENBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1030 // AARCH64-OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
1031 // AARCH64-OPENBSD:#define __UINTPTR_WIDTH__ 64
1032 // AARCH64-OPENBSD:#define __UINT_FAST16_MAX__ 65535
1033 // AARCH64-OPENBSD:#define __UINT_FAST16_TYPE__ unsigned short
1034 // AARCH64-OPENBSD:#define __UINT_FAST32_MAX__ 4294967295U
1035 // AARCH64-OPENBSD:#define __UINT_FAST32_TYPE__ unsigned int
1036 // AARCH64-OPENBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1037 // AARCH64-OPENBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1038 // AARCH64-OPENBSD:#define __UINT_FAST8_MAX__ 255
1039 // AARCH64-OPENBSD:#define __UINT_FAST8_TYPE__ unsigned char
1040 // AARCH64-OPENBSD:#define __UINT_LEAST16_MAX__ 65535
1041 // AARCH64-OPENBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1042 // AARCH64-OPENBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1043 // AARCH64-OPENBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1044 // AARCH64-OPENBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1045 // AARCH64-OPENBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1046 // AARCH64-OPENBSD:#define __UINT_LEAST8_MAX__ 255
1047 // AARCH64-OPENBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1048 // AARCH64-OPENBSD:#define __USER_LABEL_PREFIX__
1049 // AARCH64-OPENBSD:#define __WCHAR_MAX__ 2147483647
1050 // AARCH64-OPENBSD:#define __WCHAR_TYPE__ int
1051 // AARCH64-OPENBSD:#define __WCHAR_WIDTH__ 32
1052 // AARCH64-OPENBSD:#define __WINT_TYPE__ int
1053 // AARCH64-OPENBSD:#define __WINT_WIDTH__ 32
1054 // AARCH64-OPENBSD:#define __aarch64__ 1
1055 //
1056 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-freebsd11 < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-FREEBSD %s
1057 //
1058 // AARCH64-FREEBSD:#define _LP64 1
1059 // AARCH64-FREEBSD-NOT:#define __AARCH64EB__ 1
1060 // AARCH64-FREEBSD:#define __AARCH64EL__ 1
1061 // AARCH64-FREEBSD-NOT:#define __AARCH_BIG_ENDIAN 1
1062 // AARCH64-FREEBSD:#define __ARM_64BIT_STATE 1
1063 // AARCH64-FREEBSD:#define __ARM_ARCH 8
1064 // AARCH64-FREEBSD:#define __ARM_ARCH_ISA_A64 1
1065 // AARCH64-FREEBSD-NOT:#define __ARM_BIG_ENDIAN 1
1066 // AARCH64-FREEBSD:#define __BIGGEST_ALIGNMENT__ 16
1067 // AARCH64-FREEBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1068 // AARCH64-FREEBSD:#define __CHAR16_TYPE__ unsigned short
1069 // AARCH64-FREEBSD:#define __CHAR32_TYPE__ unsigned int
1070 // AARCH64-FREEBSD:#define __CHAR_BIT__ 8
1071 // AARCH64-FREEBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1072 // AARCH64-FREEBSD:#define __DBL_DIG__ 15
1073 // AARCH64-FREEBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
1074 // AARCH64-FREEBSD:#define __DBL_HAS_DENORM__ 1
1075 // AARCH64-FREEBSD:#define __DBL_HAS_INFINITY__ 1
1076 // AARCH64-FREEBSD:#define __DBL_HAS_QUIET_NAN__ 1
1077 // AARCH64-FREEBSD:#define __DBL_MANT_DIG__ 53
1078 // AARCH64-FREEBSD:#define __DBL_MAX_10_EXP__ 308
1079 // AARCH64-FREEBSD:#define __DBL_MAX_EXP__ 1024
1080 // AARCH64-FREEBSD:#define __DBL_MAX__ 1.7976931348623157e+308
1081 // AARCH64-FREEBSD:#define __DBL_MIN_10_EXP__ (-307)
1082 // AARCH64-FREEBSD:#define __DBL_MIN_EXP__ (-1021)
1083 // AARCH64-FREEBSD:#define __DBL_MIN__ 2.2250738585072014e-308
1084 // AARCH64-FREEBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1085 // AARCH64-FREEBSD:#define __ELF__ 1
1086 // AARCH64-FREEBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1087 // AARCH64-FREEBSD:#define __FLT_DIG__ 6
1088 // AARCH64-FREEBSD:#define __FLT_EPSILON__ 1.19209290e-7F
1089 // AARCH64-FREEBSD:#define __FLT_EVAL_METHOD__ 0
1090 // AARCH64-FREEBSD:#define __FLT_HAS_DENORM__ 1
1091 // AARCH64-FREEBSD:#define __FLT_HAS_INFINITY__ 1
1092 // AARCH64-FREEBSD:#define __FLT_HAS_QUIET_NAN__ 1
1093 // AARCH64-FREEBSD:#define __FLT_MANT_DIG__ 24
1094 // AARCH64-FREEBSD:#define __FLT_MAX_10_EXP__ 38
1095 // AARCH64-FREEBSD:#define __FLT_MAX_EXP__ 128
1096 // AARCH64-FREEBSD:#define __FLT_MAX__ 3.40282347e+38F
1097 // AARCH64-FREEBSD:#define __FLT_MIN_10_EXP__ (-37)
1098 // AARCH64-FREEBSD:#define __FLT_MIN_EXP__ (-125)
1099 // AARCH64-FREEBSD:#define __FLT_MIN__ 1.17549435e-38F
1100 // AARCH64-FREEBSD:#define __FLT_RADIX__ 2
1101 // AARCH64-FREEBSD:#define __FreeBSD__ 11
1102 // AARCH64-FREEBSD:#define __INT16_C_SUFFIX__
1103 // AARCH64-FREEBSD:#define __INT16_FMTd__ "hd"
1104 // AARCH64-FREEBSD:#define __INT16_FMTi__ "hi"
1105 // AARCH64-FREEBSD:#define __INT16_MAX__ 32767
1106 // AARCH64-FREEBSD:#define __INT16_TYPE__ short
1107 // AARCH64-FREEBSD:#define __INT32_C_SUFFIX__
1108 // AARCH64-FREEBSD:#define __INT32_FMTd__ "d"
1109 // AARCH64-FREEBSD:#define __INT32_FMTi__ "i"
1110 // AARCH64-FREEBSD:#define __INT32_MAX__ 2147483647
1111 // AARCH64-FREEBSD:#define __INT32_TYPE__ int
1112 // AARCH64-FREEBSD:#define __INT64_C_SUFFIX__ L
1113 // AARCH64-FREEBSD:#define __INT64_FMTd__ "ld"
1114 // AARCH64-FREEBSD:#define __INT64_FMTi__ "li"
1115 // AARCH64-FREEBSD:#define __INT64_MAX__ 9223372036854775807L
1116 // AARCH64-FREEBSD:#define __INT64_TYPE__ long int
1117 // AARCH64-FREEBSD:#define __INT8_C_SUFFIX__
1118 // AARCH64-FREEBSD:#define __INT8_FMTd__ "hhd"
1119 // AARCH64-FREEBSD:#define __INT8_FMTi__ "hhi"
1120 // AARCH64-FREEBSD:#define __INT8_MAX__ 127
1121 // AARCH64-FREEBSD:#define __INT8_TYPE__ signed char
1122 // AARCH64-FREEBSD:#define __INTMAX_C_SUFFIX__ L
1123 // AARCH64-FREEBSD:#define __INTMAX_FMTd__ "ld"
1124 // AARCH64-FREEBSD:#define __INTMAX_FMTi__ "li"
1125 // AARCH64-FREEBSD:#define __INTMAX_MAX__ 9223372036854775807L
1126 // AARCH64-FREEBSD:#define __INTMAX_TYPE__ long int
1127 // AARCH64-FREEBSD:#define __INTMAX_WIDTH__ 64
1128 // AARCH64-FREEBSD:#define __INTPTR_FMTd__ "ld"
1129 // AARCH64-FREEBSD:#define __INTPTR_FMTi__ "li"
1130 // AARCH64-FREEBSD:#define __INTPTR_MAX__ 9223372036854775807L
1131 // AARCH64-FREEBSD:#define __INTPTR_TYPE__ long int
1132 // AARCH64-FREEBSD:#define __INTPTR_WIDTH__ 64
1133 // AARCH64-FREEBSD:#define __INT_FAST16_FMTd__ "hd"
1134 // AARCH64-FREEBSD:#define __INT_FAST16_FMTi__ "hi"
1135 // AARCH64-FREEBSD:#define __INT_FAST16_MAX__ 32767
1136 // AARCH64-FREEBSD:#define __INT_FAST16_TYPE__ short
1137 // AARCH64-FREEBSD:#define __INT_FAST32_FMTd__ "d"
1138 // AARCH64-FREEBSD:#define __INT_FAST32_FMTi__ "i"
1139 // AARCH64-FREEBSD:#define __INT_FAST32_MAX__ 2147483647
1140 // AARCH64-FREEBSD:#define __INT_FAST32_TYPE__ int
1141 // AARCH64-FREEBSD:#define __INT_FAST64_FMTd__ "ld"
1142 // AARCH64-FREEBSD:#define __INT_FAST64_FMTi__ "li"
1143 // AARCH64-FREEBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
1144 // AARCH64-FREEBSD:#define __INT_FAST64_TYPE__ long int
1145 // AARCH64-FREEBSD:#define __INT_FAST8_FMTd__ "hhd"
1146 // AARCH64-FREEBSD:#define __INT_FAST8_FMTi__ "hhi"
1147 // AARCH64-FREEBSD:#define __INT_FAST8_MAX__ 127
1148 // AARCH64-FREEBSD:#define __INT_FAST8_TYPE__ signed char
1149 // AARCH64-FREEBSD:#define __INT_LEAST16_FMTd__ "hd"
1150 // AARCH64-FREEBSD:#define __INT_LEAST16_FMTi__ "hi"
1151 // AARCH64-FREEBSD:#define __INT_LEAST16_MAX__ 32767
1152 // AARCH64-FREEBSD:#define __INT_LEAST16_TYPE__ short
1153 // AARCH64-FREEBSD:#define __INT_LEAST32_FMTd__ "d"
1154 // AARCH64-FREEBSD:#define __INT_LEAST32_FMTi__ "i"
1155 // AARCH64-FREEBSD:#define __INT_LEAST32_MAX__ 2147483647
1156 // AARCH64-FREEBSD:#define __INT_LEAST32_TYPE__ int
1157 // AARCH64-FREEBSD:#define __INT_LEAST64_FMTd__ "ld"
1158 // AARCH64-FREEBSD:#define __INT_LEAST64_FMTi__ "li"
1159 // AARCH64-FREEBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
1160 // AARCH64-FREEBSD:#define __INT_LEAST64_TYPE__ long int
1161 // AARCH64-FREEBSD:#define __INT_LEAST8_FMTd__ "hhd"
1162 // AARCH64-FREEBSD:#define __INT_LEAST8_FMTi__ "hhi"
1163 // AARCH64-FREEBSD:#define __INT_LEAST8_MAX__ 127
1164 // AARCH64-FREEBSD:#define __INT_LEAST8_TYPE__ signed char
1165 // AARCH64-FREEBSD:#define __INT_MAX__ 2147483647
1166 // AARCH64-FREEBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1167 // AARCH64-FREEBSD:#define __LDBL_DIG__ 33
1168 // AARCH64-FREEBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1169 // AARCH64-FREEBSD:#define __LDBL_HAS_DENORM__ 1
1170 // AARCH64-FREEBSD:#define __LDBL_HAS_INFINITY__ 1
1171 // AARCH64-FREEBSD:#define __LDBL_HAS_QUIET_NAN__ 1
1172 // AARCH64-FREEBSD:#define __LDBL_MANT_DIG__ 113
1173 // AARCH64-FREEBSD:#define __LDBL_MAX_10_EXP__ 4932
1174 // AARCH64-FREEBSD:#define __LDBL_MAX_EXP__ 16384
1175 // AARCH64-FREEBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1176 // AARCH64-FREEBSD:#define __LDBL_MIN_10_EXP__ (-4931)
1177 // AARCH64-FREEBSD:#define __LDBL_MIN_EXP__ (-16381)
1178 // AARCH64-FREEBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1179 // AARCH64-FREEBSD:#define __LITTLE_ENDIAN__ 1
1180 // AARCH64-FREEBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
1181 // AARCH64-FREEBSD:#define __LONG_MAX__ 9223372036854775807L
1182 // AARCH64-FREEBSD:#define __LP64__ 1
1183 // AARCH64-FREEBSD:#define __POINTER_WIDTH__ 64
1184 // AARCH64-FREEBSD:#define __PTRDIFF_TYPE__ long int
1185 // AARCH64-FREEBSD:#define __PTRDIFF_WIDTH__ 64
1186 // AARCH64-FREEBSD:#define __SCHAR_MAX__ 127
1187 // AARCH64-FREEBSD:#define __SHRT_MAX__ 32767
1188 // AARCH64-FREEBSD:#define __SIG_ATOMIC_MAX__ 2147483647
1189 // AARCH64-FREEBSD:#define __SIG_ATOMIC_WIDTH__ 32
1190 // AARCH64-FREEBSD:#define __SIZEOF_DOUBLE__ 8
1191 // AARCH64-FREEBSD:#define __SIZEOF_FLOAT__ 4
1192 // AARCH64-FREEBSD:#define __SIZEOF_INT128__ 16
1193 // AARCH64-FREEBSD:#define __SIZEOF_INT__ 4
1194 // AARCH64-FREEBSD:#define __SIZEOF_LONG_DOUBLE__ 16
1195 // AARCH64-FREEBSD:#define __SIZEOF_LONG_LONG__ 8
1196 // AARCH64-FREEBSD:#define __SIZEOF_LONG__ 8
1197 // AARCH64-FREEBSD:#define __SIZEOF_POINTER__ 8
1198 // AARCH64-FREEBSD:#define __SIZEOF_PTRDIFF_T__ 8
1199 // AARCH64-FREEBSD:#define __SIZEOF_SHORT__ 2
1200 // AARCH64-FREEBSD:#define __SIZEOF_SIZE_T__ 8
1201 // AARCH64-FREEBSD:#define __SIZEOF_WCHAR_T__ 4
1202 // AARCH64-FREEBSD:#define __SIZEOF_WINT_T__ 4
1203 // AARCH64-FREEBSD:#define __SIZE_MAX__ 18446744073709551615UL
1204 // AARCH64-FREEBSD:#define __SIZE_TYPE__ long unsigned int
1205 // AARCH64-FREEBSD:#define __SIZE_WIDTH__ 64
1206 // AARCH64-FREEBSD:#define __UINT16_C_SUFFIX__
1207 // AARCH64-FREEBSD:#define __UINT16_MAX__ 65535
1208 // AARCH64-FREEBSD:#define __UINT16_TYPE__ unsigned short
1209 // AARCH64-FREEBSD:#define __UINT32_C_SUFFIX__ U
1210 // AARCH64-FREEBSD:#define __UINT32_MAX__ 4294967295U
1211 // AARCH64-FREEBSD:#define __UINT32_TYPE__ unsigned int
1212 // AARCH64-FREEBSD:#define __UINT64_C_SUFFIX__ UL
1213 // AARCH64-FREEBSD:#define __UINT64_MAX__ 18446744073709551615UL
1214 // AARCH64-FREEBSD:#define __UINT64_TYPE__ long unsigned int
1215 // AARCH64-FREEBSD:#define __UINT8_C_SUFFIX__
1216 // AARCH64-FREEBSD:#define __UINT8_MAX__ 255
1217 // AARCH64-FREEBSD:#define __UINT8_TYPE__ unsigned char
1218 // AARCH64-FREEBSD:#define __UINTMAX_C_SUFFIX__ UL
1219 // AARCH64-FREEBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
1220 // AARCH64-FREEBSD:#define __UINTMAX_TYPE__ long unsigned int
1221 // AARCH64-FREEBSD:#define __UINTMAX_WIDTH__ 64
1222 // AARCH64-FREEBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1223 // AARCH64-FREEBSD:#define __UINTPTR_TYPE__ long unsigned int
1224 // AARCH64-FREEBSD:#define __UINTPTR_WIDTH__ 64
1225 // AARCH64-FREEBSD:#define __UINT_FAST16_MAX__ 65535
1226 // AARCH64-FREEBSD:#define __UINT_FAST16_TYPE__ unsigned short
1227 // AARCH64-FREEBSD:#define __UINT_FAST32_MAX__ 4294967295U
1228 // AARCH64-FREEBSD:#define __UINT_FAST32_TYPE__ unsigned int
1229 // AARCH64-FREEBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1230 // AARCH64-FREEBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1231 // AARCH64-FREEBSD:#define __UINT_FAST8_MAX__ 255
1232 // AARCH64-FREEBSD:#define __UINT_FAST8_TYPE__ unsigned char
1233 // AARCH64-FREEBSD:#define __UINT_LEAST16_MAX__ 65535
1234 // AARCH64-FREEBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1235 // AARCH64-FREEBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1236 // AARCH64-FREEBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1237 // AARCH64-FREEBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1238 // AARCH64-FREEBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1239 // AARCH64-FREEBSD:#define __UINT_LEAST8_MAX__ 255
1240 // AARCH64-FREEBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1241 // AARCH64-FREEBSD:#define __USER_LABEL_PREFIX__
1242 // AARCH64-FREEBSD:#define __WCHAR_MAX__ 4294967295U
1243 // AARCH64-FREEBSD:#define __WCHAR_TYPE__ unsigned int
1244 // AARCH64-FREEBSD:#define __WCHAR_UNSIGNED__ 1
1245 // AARCH64-FREEBSD:#define __WCHAR_WIDTH__ 32
1246 // AARCH64-FREEBSD:#define __WINT_MAX__ 2147483647
1247 // AARCH64-FREEBSD:#define __WINT_TYPE__ int
1248 // AARCH64-FREEBSD:#define __WINT_WIDTH__ 32
1249 // AARCH64-FREEBSD:#define __aarch64__ 1
1250 
1251 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-apple-ios7.0 < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-DARWIN %s
1252 //
1253 // AARCH64-DARWIN: #define _LP64 1
1254 // AARCH64-DARWIN-NOT: #define __AARCH64EB__ 1
1255 // AARCH64-DARWIN: #define __AARCH64EL__ 1
1256 // AARCH64-DARWIN-NOT: #define __AARCH_BIG_ENDIAN 1
1257 // AARCH64-DARWIN: #define __ARM_64BIT_STATE 1
1258 // AARCH64-DARWIN: #define __ARM_ARCH 8
1259 // AARCH64-DARWIN: #define __ARM_ARCH_ISA_A64 1
1260 // AARCH64-DARWIN-NOT: #define __ARM_BIG_ENDIAN 1
1261 // AARCH64-DARWIN: #define __BIGGEST_ALIGNMENT__ 8
1262 // AARCH64-DARWIN: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1263 // AARCH64-DARWIN: #define __CHAR16_TYPE__ unsigned short
1264 // AARCH64-DARWIN: #define __CHAR32_TYPE__ unsigned int
1265 // AARCH64-DARWIN: #define __CHAR_BIT__ 8
1266 // AARCH64-DARWIN: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1267 // AARCH64-DARWIN: #define __DBL_DIG__ 15
1268 // AARCH64-DARWIN: #define __DBL_EPSILON__ 2.2204460492503131e-16
1269 // AARCH64-DARWIN: #define __DBL_HAS_DENORM__ 1
1270 // AARCH64-DARWIN: #define __DBL_HAS_INFINITY__ 1
1271 // AARCH64-DARWIN: #define __DBL_HAS_QUIET_NAN__ 1
1272 // AARCH64-DARWIN: #define __DBL_MANT_DIG__ 53
1273 // AARCH64-DARWIN: #define __DBL_MAX_10_EXP__ 308
1274 // AARCH64-DARWIN: #define __DBL_MAX_EXP__ 1024
1275 // AARCH64-DARWIN: #define __DBL_MAX__ 1.7976931348623157e+308
1276 // AARCH64-DARWIN: #define __DBL_MIN_10_EXP__ (-307)
1277 // AARCH64-DARWIN: #define __DBL_MIN_EXP__ (-1021)
1278 // AARCH64-DARWIN: #define __DBL_MIN__ 2.2250738585072014e-308
1279 // AARCH64-DARWIN: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1280 // AARCH64-DARWIN: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1281 // AARCH64-DARWIN: #define __FLT_DIG__ 6
1282 // AARCH64-DARWIN: #define __FLT_EPSILON__ 1.19209290e-7F
1283 // AARCH64-DARWIN: #define __FLT_EVAL_METHOD__ 0
1284 // AARCH64-DARWIN: #define __FLT_HAS_DENORM__ 1
1285 // AARCH64-DARWIN: #define __FLT_HAS_INFINITY__ 1
1286 // AARCH64-DARWIN: #define __FLT_HAS_QUIET_NAN__ 1
1287 // AARCH64-DARWIN: #define __FLT_MANT_DIG__ 24
1288 // AARCH64-DARWIN: #define __FLT_MAX_10_EXP__ 38
1289 // AARCH64-DARWIN: #define __FLT_MAX_EXP__ 128
1290 // AARCH64-DARWIN: #define __FLT_MAX__ 3.40282347e+38F
1291 // AARCH64-DARWIN: #define __FLT_MIN_10_EXP__ (-37)
1292 // AARCH64-DARWIN: #define __FLT_MIN_EXP__ (-125)
1293 // AARCH64-DARWIN: #define __FLT_MIN__ 1.17549435e-38F
1294 // AARCH64-DARWIN: #define __FLT_RADIX__ 2
1295 // AARCH64-DARWIN: #define __INT16_C_SUFFIX__
1296 // AARCH64-DARWIN: #define __INT16_FMTd__ "hd"
1297 // AARCH64-DARWIN: #define __INT16_FMTi__ "hi"
1298 // AARCH64-DARWIN: #define __INT16_MAX__ 32767
1299 // AARCH64-DARWIN: #define __INT16_TYPE__ short
1300 // AARCH64-DARWIN: #define __INT32_C_SUFFIX__
1301 // AARCH64-DARWIN: #define __INT32_FMTd__ "d"
1302 // AARCH64-DARWIN: #define __INT32_FMTi__ "i"
1303 // AARCH64-DARWIN: #define __INT32_MAX__ 2147483647
1304 // AARCH64-DARWIN: #define __INT32_TYPE__ int
1305 // AARCH64-DARWIN: #define __INT64_C_SUFFIX__ LL
1306 // AARCH64-DARWIN: #define __INT64_FMTd__ "lld"
1307 // AARCH64-DARWIN: #define __INT64_FMTi__ "lli"
1308 // AARCH64-DARWIN: #define __INT64_MAX__ 9223372036854775807LL
1309 // AARCH64-DARWIN: #define __INT64_TYPE__ long long int
1310 // AARCH64-DARWIN: #define __INT8_C_SUFFIX__
1311 // AARCH64-DARWIN: #define __INT8_FMTd__ "hhd"
1312 // AARCH64-DARWIN: #define __INT8_FMTi__ "hhi"
1313 // AARCH64-DARWIN: #define __INT8_MAX__ 127
1314 // AARCH64-DARWIN: #define __INT8_TYPE__ signed char
1315 // AARCH64-DARWIN: #define __INTMAX_C_SUFFIX__ L
1316 // AARCH64-DARWIN: #define __INTMAX_FMTd__ "ld"
1317 // AARCH64-DARWIN: #define __INTMAX_FMTi__ "li"
1318 // AARCH64-DARWIN: #define __INTMAX_MAX__ 9223372036854775807L
1319 // AARCH64-DARWIN: #define __INTMAX_TYPE__ long int
1320 // AARCH64-DARWIN: #define __INTMAX_WIDTH__ 64
1321 // AARCH64-DARWIN: #define __INTPTR_FMTd__ "ld"
1322 // AARCH64-DARWIN: #define __INTPTR_FMTi__ "li"
1323 // AARCH64-DARWIN: #define __INTPTR_MAX__ 9223372036854775807L
1324 // AARCH64-DARWIN: #define __INTPTR_TYPE__ long int
1325 // AARCH64-DARWIN: #define __INTPTR_WIDTH__ 64
1326 // AARCH64-DARWIN: #define __INT_FAST16_FMTd__ "hd"
1327 // AARCH64-DARWIN: #define __INT_FAST16_FMTi__ "hi"
1328 // AARCH64-DARWIN: #define __INT_FAST16_MAX__ 32767
1329 // AARCH64-DARWIN: #define __INT_FAST16_TYPE__ short
1330 // AARCH64-DARWIN: #define __INT_FAST32_FMTd__ "d"
1331 // AARCH64-DARWIN: #define __INT_FAST32_FMTi__ "i"
1332 // AARCH64-DARWIN: #define __INT_FAST32_MAX__ 2147483647
1333 // AARCH64-DARWIN: #define __INT_FAST32_TYPE__ int
1334 // AARCH64-DARWIN: #define __INT_FAST64_FMTd__ "lld"
1335 // AARCH64-DARWIN: #define __INT_FAST64_FMTi__ "lli"
1336 // AARCH64-DARWIN: #define __INT_FAST64_MAX__ 9223372036854775807LL
1337 // AARCH64-DARWIN: #define __INT_FAST64_TYPE__ long long int
1338 // AARCH64-DARWIN: #define __INT_FAST8_FMTd__ "hhd"
1339 // AARCH64-DARWIN: #define __INT_FAST8_FMTi__ "hhi"
1340 // AARCH64-DARWIN: #define __INT_FAST8_MAX__ 127
1341 // AARCH64-DARWIN: #define __INT_FAST8_TYPE__ signed char
1342 // AARCH64-DARWIN: #define __INT_LEAST16_FMTd__ "hd"
1343 // AARCH64-DARWIN: #define __INT_LEAST16_FMTi__ "hi"
1344 // AARCH64-DARWIN: #define __INT_LEAST16_MAX__ 32767
1345 // AARCH64-DARWIN: #define __INT_LEAST16_TYPE__ short
1346 // AARCH64-DARWIN: #define __INT_LEAST32_FMTd__ "d"
1347 // AARCH64-DARWIN: #define __INT_LEAST32_FMTi__ "i"
1348 // AARCH64-DARWIN: #define __INT_LEAST32_MAX__ 2147483647
1349 // AARCH64-DARWIN: #define __INT_LEAST32_TYPE__ int
1350 // AARCH64-DARWIN: #define __INT_LEAST64_FMTd__ "lld"
1351 // AARCH64-DARWIN: #define __INT_LEAST64_FMTi__ "lli"
1352 // AARCH64-DARWIN: #define __INT_LEAST64_MAX__ 9223372036854775807LL
1353 // AARCH64-DARWIN: #define __INT_LEAST64_TYPE__ long long int
1354 // AARCH64-DARWIN: #define __INT_LEAST8_FMTd__ "hhd"
1355 // AARCH64-DARWIN: #define __INT_LEAST8_FMTi__ "hhi"
1356 // AARCH64-DARWIN: #define __INT_LEAST8_MAX__ 127
1357 // AARCH64-DARWIN: #define __INT_LEAST8_TYPE__ signed char
1358 // AARCH64-DARWIN: #define __INT_MAX__ 2147483647
1359 // AARCH64-DARWIN: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1360 // AARCH64-DARWIN: #define __LDBL_DIG__ 15
1361 // AARCH64-DARWIN: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1362 // AARCH64-DARWIN: #define __LDBL_HAS_DENORM__ 1
1363 // AARCH64-DARWIN: #define __LDBL_HAS_INFINITY__ 1
1364 // AARCH64-DARWIN: #define __LDBL_HAS_QUIET_NAN__ 1
1365 // AARCH64-DARWIN: #define __LDBL_MANT_DIG__ 53
1366 // AARCH64-DARWIN: #define __LDBL_MAX_10_EXP__ 308
1367 // AARCH64-DARWIN: #define __LDBL_MAX_EXP__ 1024
1368 // AARCH64-DARWIN: #define __LDBL_MAX__ 1.7976931348623157e+308L
1369 // AARCH64-DARWIN: #define __LDBL_MIN_10_EXP__ (-307)
1370 // AARCH64-DARWIN: #define __LDBL_MIN_EXP__ (-1021)
1371 // AARCH64-DARWIN: #define __LDBL_MIN__ 2.2250738585072014e-308L
1372 // AARCH64-DARWIN: #define __LONG_LONG_MAX__ 9223372036854775807LL
1373 // AARCH64-DARWIN: #define __LONG_MAX__ 9223372036854775807L
1374 // AARCH64-DARWIN: #define __LP64__ 1
1375 // AARCH64-DARWIN: #define __POINTER_WIDTH__ 64
1376 // AARCH64-DARWIN: #define __PTRDIFF_TYPE__ long int
1377 // AARCH64-DARWIN: #define __PTRDIFF_WIDTH__ 64
1378 // AARCH64-DARWIN: #define __SCHAR_MAX__ 127
1379 // AARCH64-DARWIN: #define __SHRT_MAX__ 32767
1380 // AARCH64-DARWIN: #define __SIG_ATOMIC_MAX__ 2147483647
1381 // AARCH64-DARWIN: #define __SIG_ATOMIC_WIDTH__ 32
1382 // AARCH64-DARWIN: #define __SIZEOF_DOUBLE__ 8
1383 // AARCH64-DARWIN: #define __SIZEOF_FLOAT__ 4
1384 // AARCH64-DARWIN: #define __SIZEOF_INT128__ 16
1385 // AARCH64-DARWIN: #define __SIZEOF_INT__ 4
1386 // AARCH64-DARWIN: #define __SIZEOF_LONG_DOUBLE__ 8
1387 // AARCH64-DARWIN: #define __SIZEOF_LONG_LONG__ 8
1388 // AARCH64-DARWIN: #define __SIZEOF_LONG__ 8
1389 // AARCH64-DARWIN: #define __SIZEOF_POINTER__ 8
1390 // AARCH64-DARWIN: #define __SIZEOF_PTRDIFF_T__ 8
1391 // AARCH64-DARWIN: #define __SIZEOF_SHORT__ 2
1392 // AARCH64-DARWIN: #define __SIZEOF_SIZE_T__ 8
1393 // AARCH64-DARWIN: #define __SIZEOF_WCHAR_T__ 4
1394 // AARCH64-DARWIN: #define __SIZEOF_WINT_T__ 4
1395 // AARCH64-DARWIN: #define __SIZE_MAX__ 18446744073709551615UL
1396 // AARCH64-DARWIN: #define __SIZE_TYPE__ long unsigned int
1397 // AARCH64-DARWIN: #define __SIZE_WIDTH__ 64
1398 // AARCH64-DARWIN: #define __UINT16_C_SUFFIX__
1399 // AARCH64-DARWIN: #define __UINT16_MAX__ 65535
1400 // AARCH64-DARWIN: #define __UINT16_TYPE__ unsigned short
1401 // AARCH64-DARWIN: #define __UINT32_C_SUFFIX__ U
1402 // AARCH64-DARWIN: #define __UINT32_MAX__ 4294967295U
1403 // AARCH64-DARWIN: #define __UINT32_TYPE__ unsigned int
1404 // AARCH64-DARWIN: #define __UINT64_C_SUFFIX__ ULL
1405 // AARCH64-DARWIN: #define __UINT64_MAX__ 18446744073709551615ULL
1406 // AARCH64-DARWIN: #define __UINT64_TYPE__ long long unsigned int
1407 // AARCH64-DARWIN: #define __UINT8_C_SUFFIX__
1408 // AARCH64-DARWIN: #define __UINT8_MAX__ 255
1409 // AARCH64-DARWIN: #define __UINT8_TYPE__ unsigned char
1410 // AARCH64-DARWIN: #define __UINTMAX_C_SUFFIX__ UL
1411 // AARCH64-DARWIN: #define __UINTMAX_MAX__ 18446744073709551615UL
1412 // AARCH64-DARWIN: #define __UINTMAX_TYPE__ long unsigned int
1413 // AARCH64-DARWIN: #define __UINTMAX_WIDTH__ 64
1414 // AARCH64-DARWIN: #define __UINTPTR_MAX__ 18446744073709551615UL
1415 // AARCH64-DARWIN: #define __UINTPTR_TYPE__ long unsigned int
1416 // AARCH64-DARWIN: #define __UINTPTR_WIDTH__ 64
1417 // AARCH64-DARWIN: #define __UINT_FAST16_MAX__ 65535
1418 // AARCH64-DARWIN: #define __UINT_FAST16_TYPE__ unsigned short
1419 // AARCH64-DARWIN: #define __UINT_FAST32_MAX__ 4294967295U
1420 // AARCH64-DARWIN: #define __UINT_FAST32_TYPE__ unsigned int
1421 // AARCH64-DARWIN: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
1422 // AARCH64-DARWIN: #define __UINT_FAST64_TYPE__ long long unsigned int
1423 // AARCH64-DARWIN: #define __UINT_FAST8_MAX__ 255
1424 // AARCH64-DARWIN: #define __UINT_FAST8_TYPE__ unsigned char
1425 // AARCH64-DARWIN: #define __UINT_LEAST16_MAX__ 65535
1426 // AARCH64-DARWIN: #define __UINT_LEAST16_TYPE__ unsigned short
1427 // AARCH64-DARWIN: #define __UINT_LEAST32_MAX__ 4294967295U
1428 // AARCH64-DARWIN: #define __UINT_LEAST32_TYPE__ unsigned int
1429 // AARCH64-DARWIN: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1430 // AARCH64-DARWIN: #define __UINT_LEAST64_TYPE__ long long unsigned int
1431 // AARCH64-DARWIN: #define __UINT_LEAST8_MAX__ 255
1432 // AARCH64-DARWIN: #define __UINT_LEAST8_TYPE__ unsigned char
1433 // AARCH64-DARWIN: #define __USER_LABEL_PREFIX__ _
1434 // AARCH64-DARWIN: #define __WCHAR_MAX__ 2147483647
1435 // AARCH64-DARWIN: #define __WCHAR_TYPE__ int
1436 // AARCH64-DARWIN-NOT: #define __WCHAR_UNSIGNED__
1437 // AARCH64-DARWIN: #define __WCHAR_WIDTH__ 32
1438 // AARCH64-DARWIN: #define __WINT_TYPE__ int
1439 // AARCH64-DARWIN: #define __WINT_WIDTH__ 32
1440 // AARCH64-DARWIN: #define __aarch64__ 1
1441 
1442 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7-windows-msvc < /dev/null | FileCheck -match-full-lines -check-prefix ARM-MSVC %s
1443 //
1444 // ARM-MSVC: #define _M_ARM_NT 1
1445 // ARM-MSVC: #define _WIN32 1
1446 // ARM-MSVC-NOT:#define __ARM_DWARF_EH__ 1
1447 
1448 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-windows-msvc < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-MSVC %s
1449 //
1450 // AARCH64-MSVC: #define _INTEGRAL_MAX_BITS 64
1451 // AARCH64-MSVC-NOT: #define _LP64 1
1452 // AARCH64-MSVC: #define _M_ARM64 1
1453 // AARCH64-MSVC: #define _WIN32 1
1454 // AARCH64-MSVC: #define _WIN64 1
1455 // AARCH64-MSVC: #define __AARCH64EL__ 1
1456 // AARCH64-MSVC: #define __ARM_64BIT_STATE 1
1457 // AARCH64-MSVC: #define __ARM_ACLE 200
1458 // AARCH64-MSVC: #define __ARM_ALIGN_MAX_STACK_PWR 4
1459 // AARCH64-MSVC: #define __ARM_ARCH 8
1460 // AARCH64-MSVC: #define __ARM_ARCH_ISA_A64 1
1461 // AARCH64-MSVC: #define __ARM_ARCH_PROFILE 'A'
1462 // AARCH64-MSVC: #define __ARM_FEATURE_CLZ 1
1463 // AARCH64-MSVC: #define __ARM_FEATURE_DIRECTED_ROUNDING 1
1464 // AARCH64-MSVC: #define __ARM_FEATURE_DIV 1
1465 // AARCH64-MSVC: #define __ARM_FEATURE_FMA 1
1466 // AARCH64-MSVC: #define __ARM_FEATURE_IDIV 1
1467 // AARCH64-MSVC: #define __ARM_FEATURE_LDREX 0xF
1468 // AARCH64-MSVC: #define __ARM_FEATURE_NUMERIC_MAXMIN 1
1469 // AARCH64-MSVC: #define __ARM_FEATURE_UNALIGNED 1
1470 // AARCH64-MSVC: #define __ARM_FP 0xE
1471 // AARCH64-MSVC: #define __ARM_FP16_ARGS 1
1472 // AARCH64-MSVC: #define __ARM_FP16_FORMAT_IEEE 1
1473 // AARCH64-MSVC: #define __ARM_PCS_AAPCS64 1
1474 // AARCH64-MSVC: #define __ARM_SIZEOF_MINIMAL_ENUM 4
1475 // AARCH64-MSVC: #define __ARM_SIZEOF_WCHAR_T 4
1476 // AARCH64-MSVC: #define __BIGGEST_ALIGNMENT__ 16
1477 // AARCH64-MSVC: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1478 // AARCH64-MSVC: #define __CHAR16_TYPE__ unsigned short
1479 // AARCH64-MSVC: #define __CHAR32_TYPE__ unsigned int
1480 // AARCH64-MSVC: #define __CHAR_BIT__ 8
1481 // AARCH64-MSVC: #define __CONSTANT_CFSTRINGS__ 1
1482 // AARCH64-MSVC: #define __DBL_DECIMAL_DIG__ 17
1483 // AARCH64-MSVC: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1484 // AARCH64-MSVC: #define __DBL_DIG__ 15
1485 // AARCH64-MSVC: #define __DBL_EPSILON__ 2.2204460492503131e-16
1486 // AARCH64-MSVC: #define __DBL_HAS_DENORM__ 1
1487 // AARCH64-MSVC: #define __DBL_HAS_INFINITY__ 1
1488 // AARCH64-MSVC: #define __DBL_HAS_QUIET_NAN__ 1
1489 // AARCH64-MSVC: #define __DBL_MANT_DIG__ 53
1490 // AARCH64-MSVC: #define __DBL_MAX_10_EXP__ 308
1491 // AARCH64-MSVC: #define __DBL_MAX_EXP__ 1024
1492 // AARCH64-MSVC: #define __DBL_MAX__ 1.7976931348623157e+308
1493 // AARCH64-MSVC: #define __DBL_MIN_10_EXP__ (-307)
1494 // AARCH64-MSVC: #define __DBL_MIN_EXP__ (-1021)
1495 // AARCH64-MSVC: #define __DBL_MIN__ 2.2250738585072014e-308
1496 // AARCH64-MSVC: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1497 // AARCH64-MSVC: #define __FINITE_MATH_ONLY__ 0
1498 // AARCH64-MSVC: #define __FLT_DECIMAL_DIG__ 9
1499 // AARCH64-MSVC: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1500 // AARCH64-MSVC: #define __FLT_DIG__ 6
1501 // AARCH64-MSVC: #define __FLT_EPSILON__ 1.19209290e-7F
1502 // AARCH64-MSVC: #define __FLT_EVAL_METHOD__ 0
1503 // AARCH64-MSVC: #define __FLT_HAS_DENORM__ 1
1504 // AARCH64-MSVC: #define __FLT_HAS_INFINITY__ 1
1505 // AARCH64-MSVC: #define __FLT_HAS_QUIET_NAN__ 1
1506 // AARCH64-MSVC: #define __FLT_MANT_DIG__ 24
1507 // AARCH64-MSVC: #define __FLT_MAX_10_EXP__ 38
1508 // AARCH64-MSVC: #define __FLT_MAX_EXP__ 128
1509 // AARCH64-MSVC: #define __FLT_MAX__ 3.40282347e+38F
1510 // AARCH64-MSVC: #define __FLT_MIN_10_EXP__ (-37)
1511 // AARCH64-MSVC: #define __FLT_MIN_EXP__ (-125)
1512 // AARCH64-MSVC: #define __FLT_MIN__ 1.17549435e-38F
1513 // AARCH64-MSVC: #define __FLT_RADIX__ 2
1514 // AARCH64-MSVC: #define __INT_MAX__ 2147483647
1515 // AARCH64-MSVC: #define __LDBL_DECIMAL_DIG__ 17
1516 // AARCH64-MSVC: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1517 // AARCH64-MSVC: #define __LDBL_DIG__ 15
1518 // AARCH64-MSVC: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1519 // AARCH64-MSVC: #define __LDBL_HAS_DENORM__ 1
1520 // AARCH64-MSVC: #define __LDBL_HAS_INFINITY__ 1
1521 // AARCH64-MSVC: #define __LDBL_HAS_QUIET_NAN__ 1
1522 // AARCH64-MSVC: #define __LDBL_MANT_DIG__ 53
1523 // AARCH64-MSVC: #define __LDBL_MAX_10_EXP__ 308
1524 // AARCH64-MSVC: #define __LDBL_MAX_EXP__ 1024
1525 // AARCH64-MSVC: #define __LDBL_MAX__ 1.7976931348623157e+308L
1526 // AARCH64-MSVC: #define __LDBL_MIN_10_EXP__ (-307)
1527 // AARCH64-MSVC: #define __LDBL_MIN_EXP__ (-1021)
1528 // AARCH64-MSVC: #define __LDBL_MIN__ 2.2250738585072014e-308L
1529 // AARCH64-MSVC: #define __LITTLE_ENDIAN__ 1
1530 // AARCH64-MSVC: #define __LONG_LONG_MAX__ 9223372036854775807LL
1531 // AARCH64-MSVC: #define __LONG_MAX__ 2147483647L
1532 // AARCH64-MSVC-NOT: #define __LP64__ 1
1533 // AARCH64-MSVC: #define __NO_INLINE__ 1
1534 // AARCH64-MSVC: #define __OBJC_BOOL_IS_BOOL 0
1535 // AARCH64-MSVC: #define __ORDER_BIG_ENDIAN__ 4321
1536 // AARCH64-MSVC: #define __ORDER_LITTLE_ENDIAN__ 1234
1537 // AARCH64-MSVC: #define __ORDER_PDP_ENDIAN__ 3412
1538 // AARCH64-MSVC: #define __POINTER_WIDTH__ 64
1539 // AARCH64-MSVC: #define __PRAGMA_REDEFINE_EXTNAME 1
1540 // AARCH64-MSVC: #define __SCHAR_MAX__ 127
1541 // AARCH64-MSVC: #define __SHRT_MAX__ 32767
1542 // AARCH64-MSVC: #define __SIG_ATOMIC_MAX__ 2147483647
1543 // AARCH64-MSVC: #define __SIG_ATOMIC_WIDTH__ 32
1544 // AARCH64-MSVC: #define __SIZEOF_DOUBLE__ 8
1545 // AARCH64-MSVC: #define __SIZEOF_FLOAT__ 4
1546 // AARCH64-MSVC: #define __SIZEOF_INT128__ 16
1547 // AARCH64-MSVC: #define __SIZEOF_INT__ 4
1548 // AARCH64-MSVC: #define __SIZEOF_LONG_DOUBLE__ 8
1549 // AARCH64-MSVC: #define __SIZEOF_LONG_LONG__ 8
1550 // AARCH64-MSVC: #define __SIZEOF_LONG__ 4
1551 // AARCH64-MSVC: #define __SIZEOF_POINTER__ 8
1552 // AARCH64-MSVC: #define __SIZEOF_PTRDIFF_T__ 8
1553 // AARCH64-MSVC: #define __SIZEOF_SHORT__ 2
1554 // AARCH64-MSVC: #define __SIZEOF_SIZE_T__ 8
1555 // AARCH64-MSVC: #define __SIZEOF_WCHAR_T__ 2
1556 // AARCH64-MSVC: #define __SIZEOF_WINT_T__ 2
1557 // AARCH64-MSVC: #define __SIZE_MAX__ 18446744073709551615ULL
1558 // AARCH64-MSVC: #define __SIZE_TYPE__ long long unsigned int
1559 // AARCH64-MSVC: #define __SIZE_WIDTH__ 64
1560 // AARCH64-MSVC: #define __STDC_HOSTED__ 0
1561 // AARCH64-MSVC: #define __STDC_UTF_16__ 1
1562 // AARCH64-MSVC: #define __STDC_UTF_32__ 1
1563 // AARCH64-MSVC: #define __STDC_VERSION__ 201112L
1564 // AARCH64-MSVC: #define __STDC__ 1
1565 // AARCH64-MSVC: #define __UINT16_C_SUFFIX__
1566 // AARCH64-MSVC: #define __UINT16_MAX__ 65535
1567 // AARCH64-MSVC: #define __UINT16_TYPE__ unsigned short
1568 // AARCH64-MSVC: #define __UINT32_C_SUFFIX__ U
1569 // AARCH64-MSVC: #define __UINT32_MAX__ 4294967295U
1570 // AARCH64-MSVC: #define __UINT32_TYPE__ unsigned int
1571 // AARCH64-MSVC: #define __UINT64_C_SUFFIX__ ULL
1572 // AARCH64-MSVC: #define __UINT64_MAX__ 18446744073709551615ULL
1573 // AARCH64-MSVC: #define __UINT64_TYPE__ long long unsigned int
1574 // AARCH64-MSVC: #define __UINT8_C_SUFFIX__
1575 // AARCH64-MSVC: #define __UINT8_MAX__ 255
1576 // AARCH64-MSVC: #define __UINT8_TYPE__ unsigned char
1577 // AARCH64-MSVC: #define __UINTMAX_C_SUFFIX__ ULL
1578 // AARCH64-MSVC: #define __UINTMAX_MAX__ 18446744073709551615ULL
1579 // AARCH64-MSVC: #define __UINTMAX_TYPE__ long long unsigned int
1580 // AARCH64-MSVC: #define __UINTMAX_WIDTH__ 64
1581 // AARCH64-MSVC: #define __UINTPTR_MAX__ 18446744073709551615ULL
1582 // AARCH64-MSVC: #define __UINTPTR_TYPE__ long long unsigned int
1583 // AARCH64-MSVC: #define __UINTPTR_WIDTH__ 64
1584 // AARCH64-MSVC: #define __UINT_FAST16_MAX__ 65535
1585 // AARCH64-MSVC: #define __UINT_FAST16_TYPE__ unsigned short
1586 // AARCH64-MSVC: #define __UINT_FAST32_MAX__ 4294967295U
1587 // AARCH64-MSVC: #define __UINT_FAST32_TYPE__ unsigned int
1588 // AARCH64-MSVC: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
1589 // AARCH64-MSVC: #define __UINT_FAST64_TYPE__ long long unsigned int
1590 // AARCH64-MSVC: #define __UINT_FAST8_MAX__ 255
1591 // AARCH64-MSVC: #define __UINT_FAST8_TYPE__ unsigned char
1592 // AARCH64-MSVC: #define __UINT_LEAST16_MAX__ 65535
1593 // AARCH64-MSVC: #define __UINT_LEAST16_TYPE__ unsigned short
1594 // AARCH64-MSVC: #define __UINT_LEAST32_MAX__ 4294967295U
1595 // AARCH64-MSVC: #define __UINT_LEAST32_TYPE__ unsigned int
1596 // AARCH64-MSVC: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1597 // AARCH64-MSVC: #define __UINT_LEAST64_TYPE__ long long unsigned int
1598 // AARCH64-MSVC: #define __UINT_LEAST8_MAX__ 255
1599 // AARCH64-MSVC: #define __UINT_LEAST8_TYPE__ unsigned char
1600 // AARCH64-MSVC: #define __USER_LABEL_PREFIX__
1601 // AARCH64-MSVC: #define __WCHAR_MAX__ 65535
1602 // AARCH64-MSVC: #define __WCHAR_TYPE__ unsigned short
1603 // AARCH64-MSVC: #define __WCHAR_UNSIGNED__ 1
1604 // AARCH64-MSVC: #define __WCHAR_WIDTH__ 16
1605 // AARCH64-MSVC: #define __WINT_TYPE__ unsigned short
1606 // AARCH64-MSVC: #define __WINT_WIDTH__ 16
1607 // AARCH64-MSVC: #define __aarch64__ 1
1608 
1609 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM %s
1610 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM -check-prefix ARM-CXX %s
1611 //
1612 // ARM-NOT:#define _LP64
1613 // ARM:#define __APCS_32__ 1
1614 // ARM-NOT:#define __ARMEB__ 1
1615 // ARM:#define __ARMEL__ 1
1616 // ARM:#define __ARM_ARCH_4T__ 1
1617 // ARM-NOT:#define __ARM_BIG_ENDIAN 1
1618 // ARM:#define __BIGGEST_ALIGNMENT__ 8
1619 // ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1620 // ARM:#define __CHAR16_TYPE__ unsigned short
1621 // ARM:#define __CHAR32_TYPE__ unsigned int
1622 // ARM:#define __CHAR_BIT__ 8
1623 // ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1624 // ARM:#define __DBL_DIG__ 15
1625 // ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
1626 // ARM:#define __DBL_HAS_DENORM__ 1
1627 // ARM:#define __DBL_HAS_INFINITY__ 1
1628 // ARM:#define __DBL_HAS_QUIET_NAN__ 1
1629 // ARM:#define __DBL_MANT_DIG__ 53
1630 // ARM:#define __DBL_MAX_10_EXP__ 308
1631 // ARM:#define __DBL_MAX_EXP__ 1024
1632 // ARM:#define __DBL_MAX__ 1.7976931348623157e+308
1633 // ARM:#define __DBL_MIN_10_EXP__ (-307)
1634 // ARM:#define __DBL_MIN_EXP__ (-1021)
1635 // ARM:#define __DBL_MIN__ 2.2250738585072014e-308
1636 // ARM:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1637 // ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1638 // ARM:#define __FLT_DIG__ 6
1639 // ARM:#define __FLT_EPSILON__ 1.19209290e-7F
1640 // ARM:#define __FLT_EVAL_METHOD__ 0
1641 // ARM:#define __FLT_HAS_DENORM__ 1
1642 // ARM:#define __FLT_HAS_INFINITY__ 1
1643 // ARM:#define __FLT_HAS_QUIET_NAN__ 1
1644 // ARM:#define __FLT_MANT_DIG__ 24
1645 // ARM:#define __FLT_MAX_10_EXP__ 38
1646 // ARM:#define __FLT_MAX_EXP__ 128
1647 // ARM:#define __FLT_MAX__ 3.40282347e+38F
1648 // ARM:#define __FLT_MIN_10_EXP__ (-37)
1649 // ARM:#define __FLT_MIN_EXP__ (-125)
1650 // ARM:#define __FLT_MIN__ 1.17549435e-38F
1651 // ARM:#define __FLT_RADIX__ 2
1652 // ARM:#define __INT16_C_SUFFIX__
1653 // ARM:#define __INT16_FMTd__ "hd"
1654 // ARM:#define __INT16_FMTi__ "hi"
1655 // ARM:#define __INT16_MAX__ 32767
1656 // ARM:#define __INT16_TYPE__ short
1657 // ARM:#define __INT32_C_SUFFIX__
1658 // ARM:#define __INT32_FMTd__ "d"
1659 // ARM:#define __INT32_FMTi__ "i"
1660 // ARM:#define __INT32_MAX__ 2147483647
1661 // ARM:#define __INT32_TYPE__ int
1662 // ARM:#define __INT64_C_SUFFIX__ LL
1663 // ARM:#define __INT64_FMTd__ "lld"
1664 // ARM:#define __INT64_FMTi__ "lli"
1665 // ARM:#define __INT64_MAX__ 9223372036854775807LL
1666 // ARM:#define __INT64_TYPE__ long long int
1667 // ARM:#define __INT8_C_SUFFIX__
1668 // ARM:#define __INT8_FMTd__ "hhd"
1669 // ARM:#define __INT8_FMTi__ "hhi"
1670 // ARM:#define __INT8_MAX__ 127
1671 // ARM:#define __INT8_TYPE__ signed char
1672 // ARM:#define __INTMAX_C_SUFFIX__ LL
1673 // ARM:#define __INTMAX_FMTd__ "lld"
1674 // ARM:#define __INTMAX_FMTi__ "lli"
1675 // ARM:#define __INTMAX_MAX__ 9223372036854775807LL
1676 // ARM:#define __INTMAX_TYPE__ long long int
1677 // ARM:#define __INTMAX_WIDTH__ 64
1678 // ARM:#define __INTPTR_FMTd__ "d"
1679 // ARM:#define __INTPTR_FMTi__ "i"
1680 // ARM:#define __INTPTR_MAX__ 2147483647
1681 // ARM:#define __INTPTR_TYPE__ int
1682 // ARM:#define __INTPTR_WIDTH__ 32
1683 // ARM:#define __INT_FAST16_FMTd__ "hd"
1684 // ARM:#define __INT_FAST16_FMTi__ "hi"
1685 // ARM:#define __INT_FAST16_MAX__ 32767
1686 // ARM:#define __INT_FAST16_TYPE__ short
1687 // ARM:#define __INT_FAST32_FMTd__ "d"
1688 // ARM:#define __INT_FAST32_FMTi__ "i"
1689 // ARM:#define __INT_FAST32_MAX__ 2147483647
1690 // ARM:#define __INT_FAST32_TYPE__ int
1691 // ARM:#define __INT_FAST64_FMTd__ "lld"
1692 // ARM:#define __INT_FAST64_FMTi__ "lli"
1693 // ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
1694 // ARM:#define __INT_FAST64_TYPE__ long long int
1695 // ARM:#define __INT_FAST8_FMTd__ "hhd"
1696 // ARM:#define __INT_FAST8_FMTi__ "hhi"
1697 // ARM:#define __INT_FAST8_MAX__ 127
1698 // ARM:#define __INT_FAST8_TYPE__ signed char
1699 // ARM:#define __INT_LEAST16_FMTd__ "hd"
1700 // ARM:#define __INT_LEAST16_FMTi__ "hi"
1701 // ARM:#define __INT_LEAST16_MAX__ 32767
1702 // ARM:#define __INT_LEAST16_TYPE__ short
1703 // ARM:#define __INT_LEAST32_FMTd__ "d"
1704 // ARM:#define __INT_LEAST32_FMTi__ "i"
1705 // ARM:#define __INT_LEAST32_MAX__ 2147483647
1706 // ARM:#define __INT_LEAST32_TYPE__ int
1707 // ARM:#define __INT_LEAST64_FMTd__ "lld"
1708 // ARM:#define __INT_LEAST64_FMTi__ "lli"
1709 // ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1710 // ARM:#define __INT_LEAST64_TYPE__ long long int
1711 // ARM:#define __INT_LEAST8_FMTd__ "hhd"
1712 // ARM:#define __INT_LEAST8_FMTi__ "hhi"
1713 // ARM:#define __INT_LEAST8_MAX__ 127
1714 // ARM:#define __INT_LEAST8_TYPE__ signed char
1715 // ARM:#define __INT_MAX__ 2147483647
1716 // ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1717 // ARM:#define __LDBL_DIG__ 15
1718 // ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
1719 // ARM:#define __LDBL_HAS_DENORM__ 1
1720 // ARM:#define __LDBL_HAS_INFINITY__ 1
1721 // ARM:#define __LDBL_HAS_QUIET_NAN__ 1
1722 // ARM:#define __LDBL_MANT_DIG__ 53
1723 // ARM:#define __LDBL_MAX_10_EXP__ 308
1724 // ARM:#define __LDBL_MAX_EXP__ 1024
1725 // ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
1726 // ARM:#define __LDBL_MIN_10_EXP__ (-307)
1727 // ARM:#define __LDBL_MIN_EXP__ (-1021)
1728 // ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
1729 // ARM:#define __LITTLE_ENDIAN__ 1
1730 // ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
1731 // ARM:#define __LONG_MAX__ 2147483647L
1732 // ARM-NOT:#define __LP64__
1733 // ARM:#define __POINTER_WIDTH__ 32
1734 // ARM:#define __PTRDIFF_TYPE__ int
1735 // ARM:#define __PTRDIFF_WIDTH__ 32
1736 // ARM:#define __REGISTER_PREFIX__
1737 // ARM:#define __SCHAR_MAX__ 127
1738 // ARM:#define __SHRT_MAX__ 32767
1739 // ARM:#define __SIG_ATOMIC_MAX__ 2147483647
1740 // ARM:#define __SIG_ATOMIC_WIDTH__ 32
1741 // ARM:#define __SIZEOF_DOUBLE__ 8
1742 // ARM:#define __SIZEOF_FLOAT__ 4
1743 // ARM:#define __SIZEOF_INT__ 4
1744 // ARM:#define __SIZEOF_LONG_DOUBLE__ 8
1745 // ARM:#define __SIZEOF_LONG_LONG__ 8
1746 // ARM:#define __SIZEOF_LONG__ 4
1747 // ARM:#define __SIZEOF_POINTER__ 4
1748 // ARM:#define __SIZEOF_PTRDIFF_T__ 4
1749 // ARM:#define __SIZEOF_SHORT__ 2
1750 // ARM:#define __SIZEOF_SIZE_T__ 4
1751 // ARM:#define __SIZEOF_WCHAR_T__ 4
1752 // ARM:#define __SIZEOF_WINT_T__ 4
1753 // ARM:#define __SIZE_MAX__ 4294967295U
1754 // ARM:#define __SIZE_TYPE__ unsigned int
1755 // ARM:#define __SIZE_WIDTH__ 32
1756 // ARM-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
1757 // ARM:#define __UINT16_C_SUFFIX__
1758 // ARM:#define __UINT16_MAX__ 65535
1759 // ARM:#define __UINT16_TYPE__ unsigned short
1760 // ARM:#define __UINT32_C_SUFFIX__ U
1761 // ARM:#define __UINT32_MAX__ 4294967295U
1762 // ARM:#define __UINT32_TYPE__ unsigned int
1763 // ARM:#define __UINT64_C_SUFFIX__ ULL
1764 // ARM:#define __UINT64_MAX__ 18446744073709551615ULL
1765 // ARM:#define __UINT64_TYPE__ long long unsigned int
1766 // ARM:#define __UINT8_C_SUFFIX__
1767 // ARM:#define __UINT8_MAX__ 255
1768 // ARM:#define __UINT8_TYPE__ unsigned char
1769 // ARM:#define __UINTMAX_C_SUFFIX__ ULL
1770 // ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
1771 // ARM:#define __UINTMAX_TYPE__ long long unsigned int
1772 // ARM:#define __UINTMAX_WIDTH__ 64
1773 // ARM:#define __UINTPTR_MAX__ 4294967295U
1774 // ARM:#define __UINTPTR_TYPE__ unsigned int
1775 // ARM:#define __UINTPTR_WIDTH__ 32
1776 // ARM:#define __UINT_FAST16_MAX__ 65535
1777 // ARM:#define __UINT_FAST16_TYPE__ unsigned short
1778 // ARM:#define __UINT_FAST32_MAX__ 4294967295U
1779 // ARM:#define __UINT_FAST32_TYPE__ unsigned int
1780 // ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1781 // ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
1782 // ARM:#define __UINT_FAST8_MAX__ 255
1783 // ARM:#define __UINT_FAST8_TYPE__ unsigned char
1784 // ARM:#define __UINT_LEAST16_MAX__ 65535
1785 // ARM:#define __UINT_LEAST16_TYPE__ unsigned short
1786 // ARM:#define __UINT_LEAST32_MAX__ 4294967295U
1787 // ARM:#define __UINT_LEAST32_TYPE__ unsigned int
1788 // ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1789 // ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
1790 // ARM:#define __UINT_LEAST8_MAX__ 255
1791 // ARM:#define __UINT_LEAST8_TYPE__ unsigned char
1792 // ARM:#define __USER_LABEL_PREFIX__
1793 // ARM:#define __WCHAR_MAX__ 4294967295U
1794 // ARM:#define __WCHAR_TYPE__ unsigned int
1795 // ARM:#define __WCHAR_WIDTH__ 32
1796 // ARM:#define __WINT_TYPE__ int
1797 // ARM:#define __WINT_WIDTH__ 32
1798 // ARM:#define __arm 1
1799 // ARM:#define __arm__ 1
1800 
1801 // RUN: %clang_cc1 -dM -ffreestanding -triple arm-none-none -target-abi apcs-gnu -E /dev/null -o - | FileCheck -match-full-lines -check-prefix ARM-APCS-GNU %s
1802 // ARM-APCS-GNU: #define __INTPTR_TYPE__ int
1803 // ARM-APCS-GNU: #define __PTRDIFF_TYPE__ int
1804 // ARM-APCS-GNU: #define __SIZE_TYPE__ unsigned int
1805 
1806 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armeb-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM-BE %s
1807 //
1808 // ARM-BE-NOT:#define _LP64
1809 // ARM-BE:#define __APCS_32__ 1
1810 // ARM-BE:#define __ARMEB__ 1
1811 // ARM-BE-NOT:#define __ARMEL__ 1
1812 // ARM-BE:#define __ARM_ARCH_4T__ 1
1813 // ARM-BE:#define __ARM_BIG_ENDIAN 1
1814 // ARM-BE:#define __BIGGEST_ALIGNMENT__ 8
1815 // ARM-BE:#define __BIG_ENDIAN__ 1
1816 // ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1817 // ARM-BE:#define __CHAR16_TYPE__ unsigned short
1818 // ARM-BE:#define __CHAR32_TYPE__ unsigned int
1819 // ARM-BE:#define __CHAR_BIT__ 8
1820 // ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1821 // ARM-BE:#define __DBL_DIG__ 15
1822 // ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1823 // ARM-BE:#define __DBL_HAS_DENORM__ 1
1824 // ARM-BE:#define __DBL_HAS_INFINITY__ 1
1825 // ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
1826 // ARM-BE:#define __DBL_MANT_DIG__ 53
1827 // ARM-BE:#define __DBL_MAX_10_EXP__ 308
1828 // ARM-BE:#define __DBL_MAX_EXP__ 1024
1829 // ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
1830 // ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
1831 // ARM-BE:#define __DBL_MIN_EXP__ (-1021)
1832 // ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
1833 // ARM-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1834 // ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1835 // ARM-BE:#define __FLT_DIG__ 6
1836 // ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
1837 // ARM-BE:#define __FLT_EVAL_METHOD__ 0
1838 // ARM-BE:#define __FLT_HAS_DENORM__ 1
1839 // ARM-BE:#define __FLT_HAS_INFINITY__ 1
1840 // ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
1841 // ARM-BE:#define __FLT_MANT_DIG__ 24
1842 // ARM-BE:#define __FLT_MAX_10_EXP__ 38
1843 // ARM-BE:#define __FLT_MAX_EXP__ 128
1844 // ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
1845 // ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
1846 // ARM-BE:#define __FLT_MIN_EXP__ (-125)
1847 // ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
1848 // ARM-BE:#define __FLT_RADIX__ 2
1849 // ARM-BE:#define __INT16_C_SUFFIX__
1850 // ARM-BE:#define __INT16_FMTd__ "hd"
1851 // ARM-BE:#define __INT16_FMTi__ "hi"
1852 // ARM-BE:#define __INT16_MAX__ 32767
1853 // ARM-BE:#define __INT16_TYPE__ short
1854 // ARM-BE:#define __INT32_C_SUFFIX__
1855 // ARM-BE:#define __INT32_FMTd__ "d"
1856 // ARM-BE:#define __INT32_FMTi__ "i"
1857 // ARM-BE:#define __INT32_MAX__ 2147483647
1858 // ARM-BE:#define __INT32_TYPE__ int
1859 // ARM-BE:#define __INT64_C_SUFFIX__ LL
1860 // ARM-BE:#define __INT64_FMTd__ "lld"
1861 // ARM-BE:#define __INT64_FMTi__ "lli"
1862 // ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
1863 // ARM-BE:#define __INT64_TYPE__ long long int
1864 // ARM-BE:#define __INT8_C_SUFFIX__
1865 // ARM-BE:#define __INT8_FMTd__ "hhd"
1866 // ARM-BE:#define __INT8_FMTi__ "hhi"
1867 // ARM-BE:#define __INT8_MAX__ 127
1868 // ARM-BE:#define __INT8_TYPE__ signed char
1869 // ARM-BE:#define __INTMAX_C_SUFFIX__ LL
1870 // ARM-BE:#define __INTMAX_FMTd__ "lld"
1871 // ARM-BE:#define __INTMAX_FMTi__ "lli"
1872 // ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
1873 // ARM-BE:#define __INTMAX_TYPE__ long long int
1874 // ARM-BE:#define __INTMAX_WIDTH__ 64
1875 // ARM-BE:#define __INTPTR_FMTd__ "d"
1876 // ARM-BE:#define __INTPTR_FMTi__ "i"
1877 // ARM-BE:#define __INTPTR_MAX__ 2147483647
1878 // ARM-BE:#define __INTPTR_TYPE__ int
1879 // ARM-BE:#define __INTPTR_WIDTH__ 32
1880 // ARM-BE:#define __INT_FAST16_FMTd__ "hd"
1881 // ARM-BE:#define __INT_FAST16_FMTi__ "hi"
1882 // ARM-BE:#define __INT_FAST16_MAX__ 32767
1883 // ARM-BE:#define __INT_FAST16_TYPE__ short
1884 // ARM-BE:#define __INT_FAST32_FMTd__ "d"
1885 // ARM-BE:#define __INT_FAST32_FMTi__ "i"
1886 // ARM-BE:#define __INT_FAST32_MAX__ 2147483647
1887 // ARM-BE:#define __INT_FAST32_TYPE__ int
1888 // ARM-BE:#define __INT_FAST64_FMTd__ "lld"
1889 // ARM-BE:#define __INT_FAST64_FMTi__ "lli"
1890 // ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
1891 // ARM-BE:#define __INT_FAST64_TYPE__ long long int
1892 // ARM-BE:#define __INT_FAST8_FMTd__ "hhd"
1893 // ARM-BE:#define __INT_FAST8_FMTi__ "hhi"
1894 // ARM-BE:#define __INT_FAST8_MAX__ 127
1895 // ARM-BE:#define __INT_FAST8_TYPE__ signed char
1896 // ARM-BE:#define __INT_LEAST16_FMTd__ "hd"
1897 // ARM-BE:#define __INT_LEAST16_FMTi__ "hi"
1898 // ARM-BE:#define __INT_LEAST16_MAX__ 32767
1899 // ARM-BE:#define __INT_LEAST16_TYPE__ short
1900 // ARM-BE:#define __INT_LEAST32_FMTd__ "d"
1901 // ARM-BE:#define __INT_LEAST32_FMTi__ "i"
1902 // ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
1903 // ARM-BE:#define __INT_LEAST32_TYPE__ int
1904 // ARM-BE:#define __INT_LEAST64_FMTd__ "lld"
1905 // ARM-BE:#define __INT_LEAST64_FMTi__ "lli"
1906 // ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1907 // ARM-BE:#define __INT_LEAST64_TYPE__ long long int
1908 // ARM-BE:#define __INT_LEAST8_FMTd__ "hhd"
1909 // ARM-BE:#define __INT_LEAST8_FMTi__ "hhi"
1910 // ARM-BE:#define __INT_LEAST8_MAX__ 127
1911 // ARM-BE:#define __INT_LEAST8_TYPE__ signed char
1912 // ARM-BE:#define __INT_MAX__ 2147483647
1913 // ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1914 // ARM-BE:#define __LDBL_DIG__ 15
1915 // ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
1916 // ARM-BE:#define __LDBL_HAS_DENORM__ 1
1917 // ARM-BE:#define __LDBL_HAS_INFINITY__ 1
1918 // ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
1919 // ARM-BE:#define __LDBL_MANT_DIG__ 53
1920 // ARM-BE:#define __LDBL_MAX_10_EXP__ 308
1921 // ARM-BE:#define __LDBL_MAX_EXP__ 1024
1922 // ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
1923 // ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
1924 // ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
1925 // ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
1926 // ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1927 // ARM-BE:#define __LONG_MAX__ 2147483647L
1928 // ARM-BE-NOT:#define __LP64__
1929 // ARM-BE:#define __POINTER_WIDTH__ 32
1930 // ARM-BE:#define __PTRDIFF_TYPE__ int
1931 // ARM-BE:#define __PTRDIFF_WIDTH__ 32
1932 // ARM-BE:#define __REGISTER_PREFIX__
1933 // ARM-BE:#define __SCHAR_MAX__ 127
1934 // ARM-BE:#define __SHRT_MAX__ 32767
1935 // ARM-BE:#define __SIG_ATOMIC_MAX__ 2147483647
1936 // ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
1937 // ARM-BE:#define __SIZEOF_DOUBLE__ 8
1938 // ARM-BE:#define __SIZEOF_FLOAT__ 4
1939 // ARM-BE:#define __SIZEOF_INT__ 4
1940 // ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
1941 // ARM-BE:#define __SIZEOF_LONG_LONG__ 8
1942 // ARM-BE:#define __SIZEOF_LONG__ 4
1943 // ARM-BE:#define __SIZEOF_POINTER__ 4
1944 // ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
1945 // ARM-BE:#define __SIZEOF_SHORT__ 2
1946 // ARM-BE:#define __SIZEOF_SIZE_T__ 4
1947 // ARM-BE:#define __SIZEOF_WCHAR_T__ 4
1948 // ARM-BE:#define __SIZEOF_WINT_T__ 4
1949 // ARM-BE:#define __SIZE_MAX__ 4294967295U
1950 // ARM-BE:#define __SIZE_TYPE__ unsigned int
1951 // ARM-BE:#define __SIZE_WIDTH__ 32
1952 // ARM-BE:#define __UINT16_C_SUFFIX__
1953 // ARM-BE:#define __UINT16_MAX__ 65535
1954 // ARM-BE:#define __UINT16_TYPE__ unsigned short
1955 // ARM-BE:#define __UINT32_C_SUFFIX__ U
1956 // ARM-BE:#define __UINT32_MAX__ 4294967295U
1957 // ARM-BE:#define __UINT32_TYPE__ unsigned int
1958 // ARM-BE:#define __UINT64_C_SUFFIX__ ULL
1959 // ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
1960 // ARM-BE:#define __UINT64_TYPE__ long long unsigned int
1961 // ARM-BE:#define __UINT8_C_SUFFIX__
1962 // ARM-BE:#define __UINT8_MAX__ 255
1963 // ARM-BE:#define __UINT8_TYPE__ unsigned char
1964 // ARM-BE:#define __UINTMAX_C_SUFFIX__ ULL
1965 // ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
1966 // ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
1967 // ARM-BE:#define __UINTMAX_WIDTH__ 64
1968 // ARM-BE:#define __UINTPTR_MAX__ 4294967295U
1969 // ARM-BE:#define __UINTPTR_TYPE__ unsigned int
1970 // ARM-BE:#define __UINTPTR_WIDTH__ 32
1971 // ARM-BE:#define __UINT_FAST16_MAX__ 65535
1972 // ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
1973 // ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
1974 // ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
1975 // ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1976 // ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
1977 // ARM-BE:#define __UINT_FAST8_MAX__ 255
1978 // ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
1979 // ARM-BE:#define __UINT_LEAST16_MAX__ 65535
1980 // ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
1981 // ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
1982 // ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
1983 // ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1984 // ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
1985 // ARM-BE:#define __UINT_LEAST8_MAX__ 255
1986 // ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
1987 // ARM-BE:#define __USER_LABEL_PREFIX__
1988 // ARM-BE:#define __WCHAR_MAX__ 4294967295U
1989 // ARM-BE:#define __WCHAR_TYPE__ unsigned int
1990 // ARM-BE:#define __WCHAR_WIDTH__ 32
1991 // ARM-BE:#define __WINT_TYPE__ int
1992 // ARM-BE:#define __WINT_WIDTH__ 32
1993 // ARM-BE:#define __arm 1
1994 // ARM-BE:#define __arm__ 1
1995 
1996 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi -target-feature +soft-float -target-feature +soft-float-abi < /dev/null | FileCheck -match-full-lines -check-prefix ARMEABISOFTFP %s
1997 //
1998 // ARMEABISOFTFP-NOT:#define _LP64
1999 // ARMEABISOFTFP:#define __APCS_32__ 1
2000 // ARMEABISOFTFP-NOT:#define __ARMEB__ 1
2001 // ARMEABISOFTFP:#define __ARMEL__ 1
2002 // ARMEABISOFTFP:#define __ARM_ARCH 4
2003 // ARMEABISOFTFP:#define __ARM_ARCH_4T__ 1
2004 // ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
2005 // ARMEABISOFTFP:#define __ARM_EABI__ 1
2006 // ARMEABISOFTFP:#define __ARM_PCS 1
2007 // ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
2008 // ARMEABISOFTFP:#define __BIGGEST_ALIGNMENT__ 8
2009 // ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2010 // ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
2011 // ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
2012 // ARMEABISOFTFP:#define __CHAR_BIT__ 8
2013 // ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2014 // ARMEABISOFTFP:#define __DBL_DIG__ 15
2015 // ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
2016 // ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
2017 // ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
2018 // ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
2019 // ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
2020 // ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
2021 // ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
2022 // ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
2023 // ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
2024 // ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
2025 // ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
2026 // ARMEABISOFTFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
2027 // ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2028 // ARMEABISOFTFP:#define __FLT_DIG__ 6
2029 // ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
2030 // ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
2031 // ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
2032 // ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
2033 // ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
2034 // ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
2035 // ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
2036 // ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
2037 // ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
2038 // ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
2039 // ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
2040 // ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
2041 // ARMEABISOFTFP:#define __FLT_RADIX__ 2
2042 // ARMEABISOFTFP:#define __INT16_C_SUFFIX__
2043 // ARMEABISOFTFP:#define __INT16_FMTd__ "hd"
2044 // ARMEABISOFTFP:#define __INT16_FMTi__ "hi"
2045 // ARMEABISOFTFP:#define __INT16_MAX__ 32767
2046 // ARMEABISOFTFP:#define __INT16_TYPE__ short
2047 // ARMEABISOFTFP:#define __INT32_C_SUFFIX__
2048 // ARMEABISOFTFP:#define __INT32_FMTd__ "d"
2049 // ARMEABISOFTFP:#define __INT32_FMTi__ "i"
2050 // ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
2051 // ARMEABISOFTFP:#define __INT32_TYPE__ int
2052 // ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
2053 // ARMEABISOFTFP:#define __INT64_FMTd__ "lld"
2054 // ARMEABISOFTFP:#define __INT64_FMTi__ "lli"
2055 // ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
2056 // ARMEABISOFTFP:#define __INT64_TYPE__ long long int
2057 // ARMEABISOFTFP:#define __INT8_C_SUFFIX__
2058 // ARMEABISOFTFP:#define __INT8_FMTd__ "hhd"
2059 // ARMEABISOFTFP:#define __INT8_FMTi__ "hhi"
2060 // ARMEABISOFTFP:#define __INT8_MAX__ 127
2061 // ARMEABISOFTFP:#define __INT8_TYPE__ signed char
2062 // ARMEABISOFTFP:#define __INTMAX_C_SUFFIX__ LL
2063 // ARMEABISOFTFP:#define __INTMAX_FMTd__ "lld"
2064 // ARMEABISOFTFP:#define __INTMAX_FMTi__ "lli"
2065 // ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
2066 // ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
2067 // ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
2068 // ARMEABISOFTFP:#define __INTPTR_FMTd__ "d"
2069 // ARMEABISOFTFP:#define __INTPTR_FMTi__ "i"
2070 // ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647
2071 // ARMEABISOFTFP:#define __INTPTR_TYPE__ int
2072 // ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
2073 // ARMEABISOFTFP:#define __INT_FAST16_FMTd__ "hd"
2074 // ARMEABISOFTFP:#define __INT_FAST16_FMTi__ "hi"
2075 // ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
2076 // ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
2077 // ARMEABISOFTFP:#define __INT_FAST32_FMTd__ "d"
2078 // ARMEABISOFTFP:#define __INT_FAST32_FMTi__ "i"
2079 // ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
2080 // ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
2081 // ARMEABISOFTFP:#define __INT_FAST64_FMTd__ "lld"
2082 // ARMEABISOFTFP:#define __INT_FAST64_FMTi__ "lli"
2083 // ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
2084 // ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
2085 // ARMEABISOFTFP:#define __INT_FAST8_FMTd__ "hhd"
2086 // ARMEABISOFTFP:#define __INT_FAST8_FMTi__ "hhi"
2087 // ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
2088 // ARMEABISOFTFP:#define __INT_FAST8_TYPE__ signed char
2089 // ARMEABISOFTFP:#define __INT_LEAST16_FMTd__ "hd"
2090 // ARMEABISOFTFP:#define __INT_LEAST16_FMTi__ "hi"
2091 // ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
2092 // ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
2093 // ARMEABISOFTFP:#define __INT_LEAST32_FMTd__ "d"
2094 // ARMEABISOFTFP:#define __INT_LEAST32_FMTi__ "i"
2095 // ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
2096 // ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
2097 // ARMEABISOFTFP:#define __INT_LEAST64_FMTd__ "lld"
2098 // ARMEABISOFTFP:#define __INT_LEAST64_FMTi__ "lli"
2099 // ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2100 // ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
2101 // ARMEABISOFTFP:#define __INT_LEAST8_FMTd__ "hhd"
2102 // ARMEABISOFTFP:#define __INT_LEAST8_FMTi__ "hhi"
2103 // ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
2104 // ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ signed char
2105 // ARMEABISOFTFP:#define __INT_MAX__ 2147483647
2106 // ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2107 // ARMEABISOFTFP:#define __LDBL_DIG__ 15
2108 // ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2109 // ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
2110 // ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
2111 // ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
2112 // ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
2113 // ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
2114 // ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
2115 // ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
2116 // ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
2117 // ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
2118 // ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
2119 // ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
2120 // ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
2121 // ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
2122 // ARMEABISOFTFP-NOT:#define __LP64__
2123 // ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
2124 // ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
2125 // ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
2126 // ARMEABISOFTFP:#define __REGISTER_PREFIX__
2127 // ARMEABISOFTFP:#define __SCHAR_MAX__ 127
2128 // ARMEABISOFTFP:#define __SHRT_MAX__ 32767
2129 // ARMEABISOFTFP:#define __SIG_ATOMIC_MAX__ 2147483647
2130 // ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
2131 // ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
2132 // ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
2133 // ARMEABISOFTFP:#define __SIZEOF_INT__ 4
2134 // ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
2135 // ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
2136 // ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
2137 // ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
2138 // ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
2139 // ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
2140 // ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
2141 // ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
2142 // ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
2143 // ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
2144 // ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
2145 // ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
2146 // ARMEABISOFTFP:#define __SOFTFP__ 1
2147 // ARMEABISOFTFP:#define __UINT16_C_SUFFIX__
2148 // ARMEABISOFTFP:#define __UINT16_MAX__ 65535
2149 // ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
2150 // ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
2151 // ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
2152 // ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
2153 // ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
2154 // ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
2155 // ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
2156 // ARMEABISOFTFP:#define __UINT8_C_SUFFIX__
2157 // ARMEABISOFTFP:#define __UINT8_MAX__ 255
2158 // ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
2159 // ARMEABISOFTFP:#define __UINTMAX_C_SUFFIX__ ULL
2160 // ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
2161 // ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
2162 // ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
2163 // ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295U
2164 // ARMEABISOFTFP:#define __UINTPTR_TYPE__ unsigned int
2165 // ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
2166 // ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535
2167 // ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
2168 // ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
2169 // ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
2170 // ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2171 // ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
2172 // ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255
2173 // ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
2174 // ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535
2175 // ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
2176 // ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
2177 // ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
2178 // ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2179 // ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
2180 // ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255
2181 // ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
2182 // ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
2183 // ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
2184 // ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
2185 // ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
2186 // ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
2187 // ARMEABISOFTFP:#define __WINT_WIDTH__ 32
2188 // ARMEABISOFTFP:#define __arm 1
2189 // ARMEABISOFTFP:#define __arm__ 1
2190 
2191 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix ARMEABIHARDFP %s
2192 //
2193 // ARMEABIHARDFP-NOT:#define _LP64
2194 // ARMEABIHARDFP:#define __APCS_32__ 1
2195 // ARMEABIHARDFP-NOT:#define __ARMEB__ 1
2196 // ARMEABIHARDFP:#define __ARMEL__ 1
2197 // ARMEABIHARDFP:#define __ARM_ARCH 4
2198 // ARMEABIHARDFP:#define __ARM_ARCH_4T__ 1
2199 // ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
2200 // ARMEABIHARDFP:#define __ARM_EABI__ 1
2201 // ARMEABIHARDFP:#define __ARM_PCS 1
2202 // ARMEABIHARDFP:#define __ARM_PCS_VFP 1
2203 // ARMEABIHARDFP:#define __BIGGEST_ALIGNMENT__ 8
2204 // ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2205 // ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
2206 // ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
2207 // ARMEABIHARDFP:#define __CHAR_BIT__ 8
2208 // ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2209 // ARMEABIHARDFP:#define __DBL_DIG__ 15
2210 // ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
2211 // ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
2212 // ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
2213 // ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
2214 // ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
2215 // ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
2216 // ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
2217 // ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
2218 // ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
2219 // ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
2220 // ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
2221 // ARMEABIHARDFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
2222 // ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2223 // ARMEABIHARDFP:#define __FLT_DIG__ 6
2224 // ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
2225 // ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
2226 // ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
2227 // ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
2228 // ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
2229 // ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
2230 // ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
2231 // ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
2232 // ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
2233 // ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
2234 // ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
2235 // ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
2236 // ARMEABIHARDFP:#define __FLT_RADIX__ 2
2237 // ARMEABIHARDFP:#define __INT16_C_SUFFIX__
2238 // ARMEABIHARDFP:#define __INT16_FMTd__ "hd"
2239 // ARMEABIHARDFP:#define __INT16_FMTi__ "hi"
2240 // ARMEABIHARDFP:#define __INT16_MAX__ 32767
2241 // ARMEABIHARDFP:#define __INT16_TYPE__ short
2242 // ARMEABIHARDFP:#define __INT32_C_SUFFIX__
2243 // ARMEABIHARDFP:#define __INT32_FMTd__ "d"
2244 // ARMEABIHARDFP:#define __INT32_FMTi__ "i"
2245 // ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
2246 // ARMEABIHARDFP:#define __INT32_TYPE__ int
2247 // ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
2248 // ARMEABIHARDFP:#define __INT64_FMTd__ "lld"
2249 // ARMEABIHARDFP:#define __INT64_FMTi__ "lli"
2250 // ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
2251 // ARMEABIHARDFP:#define __INT64_TYPE__ long long int
2252 // ARMEABIHARDFP:#define __INT8_C_SUFFIX__
2253 // ARMEABIHARDFP:#define __INT8_FMTd__ "hhd"
2254 // ARMEABIHARDFP:#define __INT8_FMTi__ "hhi"
2255 // ARMEABIHARDFP:#define __INT8_MAX__ 127
2256 // ARMEABIHARDFP:#define __INT8_TYPE__ signed char
2257 // ARMEABIHARDFP:#define __INTMAX_C_SUFFIX__ LL
2258 // ARMEABIHARDFP:#define __INTMAX_FMTd__ "lld"
2259 // ARMEABIHARDFP:#define __INTMAX_FMTi__ "lli"
2260 // ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
2261 // ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
2262 // ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
2263 // ARMEABIHARDFP:#define __INTPTR_FMTd__ "d"
2264 // ARMEABIHARDFP:#define __INTPTR_FMTi__ "i"
2265 // ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647
2266 // ARMEABIHARDFP:#define __INTPTR_TYPE__ int
2267 // ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
2268 // ARMEABIHARDFP:#define __INT_FAST16_FMTd__ "hd"
2269 // ARMEABIHARDFP:#define __INT_FAST16_FMTi__ "hi"
2270 // ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
2271 // ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
2272 // ARMEABIHARDFP:#define __INT_FAST32_FMTd__ "d"
2273 // ARMEABIHARDFP:#define __INT_FAST32_FMTi__ "i"
2274 // ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
2275 // ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
2276 // ARMEABIHARDFP:#define __INT_FAST64_FMTd__ "lld"
2277 // ARMEABIHARDFP:#define __INT_FAST64_FMTi__ "lli"
2278 // ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
2279 // ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
2280 // ARMEABIHARDFP:#define __INT_FAST8_FMTd__ "hhd"
2281 // ARMEABIHARDFP:#define __INT_FAST8_FMTi__ "hhi"
2282 // ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
2283 // ARMEABIHARDFP:#define __INT_FAST8_TYPE__ signed char
2284 // ARMEABIHARDFP:#define __INT_LEAST16_FMTd__ "hd"
2285 // ARMEABIHARDFP:#define __INT_LEAST16_FMTi__ "hi"
2286 // ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
2287 // ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
2288 // ARMEABIHARDFP:#define __INT_LEAST32_FMTd__ "d"
2289 // ARMEABIHARDFP:#define __INT_LEAST32_FMTi__ "i"
2290 // ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
2291 // ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
2292 // ARMEABIHARDFP:#define __INT_LEAST64_FMTd__ "lld"
2293 // ARMEABIHARDFP:#define __INT_LEAST64_FMTi__ "lli"
2294 // ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2295 // ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
2296 // ARMEABIHARDFP:#define __INT_LEAST8_FMTd__ "hhd"
2297 // ARMEABIHARDFP:#define __INT_LEAST8_FMTi__ "hhi"
2298 // ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
2299 // ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ signed char
2300 // ARMEABIHARDFP:#define __INT_MAX__ 2147483647
2301 // ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2302 // ARMEABIHARDFP:#define __LDBL_DIG__ 15
2303 // ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2304 // ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
2305 // ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
2306 // ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
2307 // ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
2308 // ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
2309 // ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
2310 // ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
2311 // ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
2312 // ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
2313 // ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
2314 // ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
2315 // ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
2316 // ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
2317 // ARMEABIHARDFP-NOT:#define __LP64__
2318 // ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
2319 // ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
2320 // ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
2321 // ARMEABIHARDFP:#define __REGISTER_PREFIX__
2322 // ARMEABIHARDFP:#define __SCHAR_MAX__ 127
2323 // ARMEABIHARDFP:#define __SHRT_MAX__ 32767
2324 // ARMEABIHARDFP:#define __SIG_ATOMIC_MAX__ 2147483647
2325 // ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
2326 // ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
2327 // ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
2328 // ARMEABIHARDFP:#define __SIZEOF_INT__ 4
2329 // ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
2330 // ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
2331 // ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
2332 // ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
2333 // ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
2334 // ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
2335 // ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
2336 // ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
2337 // ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
2338 // ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
2339 // ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
2340 // ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
2341 // ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
2342 // ARMEABIHARDFP:#define __UINT16_C_SUFFIX__
2343 // ARMEABIHARDFP:#define __UINT16_MAX__ 65535
2344 // ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
2345 // ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
2346 // ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
2347 // ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
2348 // ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
2349 // ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
2350 // ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
2351 // ARMEABIHARDFP:#define __UINT8_C_SUFFIX__
2352 // ARMEABIHARDFP:#define __UINT8_MAX__ 255
2353 // ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
2354 // ARMEABIHARDFP:#define __UINTMAX_C_SUFFIX__ ULL
2355 // ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
2356 // ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
2357 // ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
2358 // ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295U
2359 // ARMEABIHARDFP:#define __UINTPTR_TYPE__ unsigned int
2360 // ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
2361 // ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535
2362 // ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
2363 // ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
2364 // ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
2365 // ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2366 // ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
2367 // ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255
2368 // ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
2369 // ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535
2370 // ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
2371 // ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
2372 // ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
2373 // ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2374 // ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
2375 // ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255
2376 // ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
2377 // ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
2378 // ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
2379 // ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
2380 // ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
2381 // ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
2382 // ARMEABIHARDFP:#define __WINT_WIDTH__ 32
2383 // ARMEABIHARDFP:#define __arm 1
2384 // ARMEABIHARDFP:#define __arm__ 1
2385 
2386 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv6-unknown-cloudabi-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARMV6-CLOUDABI %s
2387 //
2388 // ARMV6-CLOUDABI:#define __CloudABI__ 1
2389 // ARMV6-CLOUDABI:#define __arm__ 1
2390 
2391 // RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabi %s -o - | FileCheck -match-full-lines -check-prefix ARM-NETBSD %s
2392 
2393 // ARM-NETBSD-NOT:#define _LP64
2394 // ARM-NETBSD:#define __APCS_32__ 1
2395 // ARM-NETBSD-NOT:#define __ARMEB__ 1
2396 // ARM-NETBSD:#define __ARMEL__ 1
2397 // ARM-NETBSD:#define __ARM_ARCH_5TE__ 1
2398 // ARM-NETBSD:#define __ARM_DWARF_EH__ 1
2399 // ARM-NETBSD:#define __ARM_EABI__ 1
2400 // ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
2401 // ARM-NETBSD:#define __BIGGEST_ALIGNMENT__ 8
2402 // ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2403 // ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
2404 // ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
2405 // ARM-NETBSD:#define __CHAR_BIT__ 8
2406 // ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2407 // ARM-NETBSD:#define __DBL_DIG__ 15
2408 // ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2409 // ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
2410 // ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
2411 // ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2412 // ARM-NETBSD:#define __DBL_MANT_DIG__ 53
2413 // ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
2414 // ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
2415 // ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2416 // ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2417 // ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2418 // ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
2419 // ARM-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
2420 // ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2421 // ARM-NETBSD:#define __FLT_DIG__ 6
2422 // ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2423 // ARM-NETBSD:#define __FLT_EVAL_METHOD__ 0
2424 // ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
2425 // ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
2426 // ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2427 // ARM-NETBSD:#define __FLT_MANT_DIG__ 24
2428 // ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
2429 // ARM-NETBSD:#define __FLT_MAX_EXP__ 128
2430 // ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2431 // ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2432 // ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
2433 // ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2434 // ARM-NETBSD:#define __FLT_RADIX__ 2
2435 // ARM-NETBSD:#define __INT16_C_SUFFIX__
2436 // ARM-NETBSD:#define __INT16_FMTd__ "hd"
2437 // ARM-NETBSD:#define __INT16_FMTi__ "hi"
2438 // ARM-NETBSD:#define __INT16_MAX__ 32767
2439 // ARM-NETBSD:#define __INT16_TYPE__ short
2440 // ARM-NETBSD:#define __INT32_C_SUFFIX__
2441 // ARM-NETBSD:#define __INT32_FMTd__ "d"
2442 // ARM-NETBSD:#define __INT32_FMTi__ "i"
2443 // ARM-NETBSD:#define __INT32_MAX__ 2147483647
2444 // ARM-NETBSD:#define __INT32_TYPE__ int
2445 // ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
2446 // ARM-NETBSD:#define __INT64_FMTd__ "lld"
2447 // ARM-NETBSD:#define __INT64_FMTi__ "lli"
2448 // ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
2449 // ARM-NETBSD:#define __INT64_TYPE__ long long int
2450 // ARM-NETBSD:#define __INT8_C_SUFFIX__
2451 // ARM-NETBSD:#define __INT8_FMTd__ "hhd"
2452 // ARM-NETBSD:#define __INT8_FMTi__ "hhi"
2453 // ARM-NETBSD:#define __INT8_MAX__ 127
2454 // ARM-NETBSD:#define __INT8_TYPE__ signed char
2455 // ARM-NETBSD:#define __INTMAX_C_SUFFIX__ LL
2456 // ARM-NETBSD:#define __INTMAX_FMTd__ "lld"
2457 // ARM-NETBSD:#define __INTMAX_FMTi__ "lli"
2458 // ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2459 // ARM-NETBSD:#define __INTMAX_TYPE__ long long int
2460 // ARM-NETBSD:#define __INTMAX_WIDTH__ 64
2461 // ARM-NETBSD:#define __INTPTR_FMTd__ "ld"
2462 // ARM-NETBSD:#define __INTPTR_FMTi__ "li"
2463 // ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
2464 // ARM-NETBSD:#define __INTPTR_TYPE__ long int
2465 // ARM-NETBSD:#define __INTPTR_WIDTH__ 32
2466 // ARM-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2467 // ARM-NETBSD:#define __INT_FAST16_FMTi__ "hi"
2468 // ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
2469 // ARM-NETBSD:#define __INT_FAST16_TYPE__ short
2470 // ARM-NETBSD:#define __INT_FAST32_FMTd__ "d"
2471 // ARM-NETBSD:#define __INT_FAST32_FMTi__ "i"
2472 // ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2473 // ARM-NETBSD:#define __INT_FAST32_TYPE__ int
2474 // ARM-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2475 // ARM-NETBSD:#define __INT_FAST64_FMTi__ "lli"
2476 // ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2477 // ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
2478 // ARM-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2479 // ARM-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
2480 // ARM-NETBSD:#define __INT_FAST8_MAX__ 127
2481 // ARM-NETBSD:#define __INT_FAST8_TYPE__ signed char
2482 // ARM-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2483 // ARM-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
2484 // ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
2485 // ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
2486 // ARM-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2487 // ARM-NETBSD:#define __INT_LEAST32_FMTi__ "i"
2488 // ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2489 // ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
2490 // ARM-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2491 // ARM-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
2492 // ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2493 // ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
2494 // ARM-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2495 // ARM-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
2496 // ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
2497 // ARM-NETBSD:#define __INT_LEAST8_TYPE__ signed char
2498 // ARM-NETBSD:#define __INT_MAX__ 2147483647
2499 // ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2500 // ARM-NETBSD:#define __LDBL_DIG__ 15
2501 // ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2502 // ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
2503 // ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2504 // ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2505 // ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
2506 // ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
2507 // ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
2508 // ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
2509 // ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
2510 // ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
2511 // ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
2512 // ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
2513 // ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2514 // ARM-NETBSD:#define __LONG_MAX__ 2147483647L
2515 // ARM-NETBSD-NOT:#define __LP64__
2516 // ARM-NETBSD:#define __POINTER_WIDTH__ 32
2517 // ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
2518 // ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
2519 // ARM-NETBSD:#define __REGISTER_PREFIX__
2520 // ARM-NETBSD:#define __SCHAR_MAX__ 127
2521 // ARM-NETBSD:#define __SHRT_MAX__ 32767
2522 // ARM-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
2523 // ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2524 // ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
2525 // ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
2526 // ARM-NETBSD:#define __SIZEOF_INT__ 4
2527 // ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
2528 // ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2529 // ARM-NETBSD:#define __SIZEOF_LONG__ 4
2530 // ARM-NETBSD:#define __SIZEOF_POINTER__ 4
2531 // ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2532 // ARM-NETBSD:#define __SIZEOF_SHORT__ 2
2533 // ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
2534 // ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2535 // ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
2536 // ARM-NETBSD:#define __SIZE_MAX__ 4294967295UL
2537 // ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
2538 // ARM-NETBSD:#define __SIZE_WIDTH__ 32
2539 // ARM-NETBSD:#define __SOFTFP__ 1
2540 // ARM-NETBSD:#define __UINT16_C_SUFFIX__
2541 // ARM-NETBSD:#define __UINT16_MAX__ 65535
2542 // ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
2543 // ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
2544 // ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
2545 // ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
2546 // ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2547 // ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2548 // ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
2549 // ARM-NETBSD:#define __UINT8_C_SUFFIX__
2550 // ARM-NETBSD:#define __UINT8_MAX__ 255
2551 // ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
2552 // ARM-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
2553 // ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
2554 // ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
2555 // ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
2556 // ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295UL
2557 // ARM-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
2558 // ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
2559 // ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535
2560 // ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2561 // ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2562 // ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2563 // ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2564 // ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
2565 // ARM-NETBSD:#define __UINT_FAST8_MAX__ 255
2566 // ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
2567 // ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535
2568 // ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2569 // ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2570 // ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2571 // ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2572 // ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
2573 // ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255
2574 // ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
2575 // ARM-NETBSD:#define __USER_LABEL_PREFIX__
2576 // ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
2577 // ARM-NETBSD:#define __WCHAR_TYPE__ int
2578 // ARM-NETBSD:#define __WCHAR_WIDTH__ 32
2579 // ARM-NETBSD:#define __WINT_TYPE__ int
2580 // ARM-NETBSD:#define __WINT_WIDTH__ 32
2581 // ARM-NETBSD:#define __arm 1
2582 // ARM-NETBSD:#define __arm__ 1
2583 
2584 // RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabihf %s -o - | FileCheck -match-full-lines -check-prefix ARMHF-NETBSD %s
2585 // ARMHF-NETBSD:#define __SIZE_WIDTH__ 32
2586 // ARMHF-NETBSD-NOT:#define __SOFTFP__ 1
2587 // ARMHF-NETBSD:#define __UINT16_C_SUFFIX__
2588 
2589 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2590 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2591 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2592 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2593 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-elf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2594 // ARM-NONE-EABI: #define __ELF__ 1
2595 
2596 // No MachO targets use the full EABI, even if AAPCS is used.
2597 // RUN: %clang -target x86_64-apple-darwin -arch armv7s -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2598 // RUN: %clang -target x86_64-apple-darwin -arch armv6m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2599 // RUN: %clang -target x86_64-apple-darwin -arch armv7m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2600 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2601 // RUN: %clang -target x86_64-apple-darwin -arch armv7 -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2602 // ARM-MACHO-NO-EABI-NOT: #define __ARM_EABI__ 1
2603 
2604 // Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
2605 
2606 // RUN: %clang -target arm -mhwdiv=arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARMHWDIV-ARM %s
2607 // ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
2608 
2609 // RUN: %clang -target arm -mthumb -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMBHWDIV-THUMB %s
2610 // THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
2611 
2612 // RUN: %clang -target arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-FALSE %s
2613 // ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2614 
2615 // RUN: %clang -target arm -mthumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMB-FALSE %s
2616 // THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2617 
2618 // RUN: %clang -target arm -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMBHWDIV-ARM-FALSE %s
2619 // THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2620 
2621 // RUN: %clang -target arm -mthumb -mhwdiv=arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARMHWDIV-THUMB-FALSE %s
2622 // ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2623 
2624 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv8-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARMv8 %s
2625 // ARMv8: #define __THUMB_INTERWORK__ 1
2626 // ARMv8-NOT: #define __thumb2__
2627 
2628 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armebv8-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARMebv8 %s
2629 // ARMebv8: #define __THUMB_INTERWORK__ 1
2630 // ARMebv8-NOT: #define __thumb2__
2631 
2632 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv8 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv8 %s
2633 // Thumbv8: #define __THUMB_INTERWORK__ 1
2634 // Thumbv8: #define __thumb2__ 1
2635 
2636 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbebv8 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbebv8 %s
2637 // Thumbebv8: #define __THUMB_INTERWORK__ 1
2638 // Thumbebv8: #define __thumb2__ 1
2639 
2640 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv5 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv5 %s
2641 // Thumbv5: #define __THUMB_INTERWORK__ 1
2642 // Thumbv5-NOT: #define __thumb2__ 1
2643 
2644 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv6t2 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv6t2 %s
2645 // Thumbv6t2: #define __THUMB_INTERWORK__ 1
2646 // Thumbv6t2: #define __thumb2__ 1
2647 
2648 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv7 %s
2649 // Thumbv7: #define __THUMB_INTERWORK__ 1
2650 // Thumbv7: #define __thumb2__ 1
2651 
2652 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbebv7 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbebv7 %s
2653 // Thumbebv7: #define __THUMB_INTERWORK__ 1
2654 // Thumbebv7: #define __thumb2__ 1
2655 
2656 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7-pc-windows-gnu -fdwarf-exceptions %s -o - | FileCheck -match-full-lines -check-prefix THUMB-MINGW %s
2657 
2658 // THUMB-MINGW:#define __ARM_DWARF_EH__ 1
2659 
2660 //
2661 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -match-full-lines -check-prefix I386 %s
2662 //
2663 // I386-NOT:#define _LP64
2664 // I386:#define __BIGGEST_ALIGNMENT__ 16
2665 // I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2666 // I386:#define __CHAR16_TYPE__ unsigned short
2667 // I386:#define __CHAR32_TYPE__ unsigned int
2668 // I386:#define __CHAR_BIT__ 8
2669 // I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2670 // I386:#define __DBL_DIG__ 15
2671 // I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
2672 // I386:#define __DBL_HAS_DENORM__ 1
2673 // I386:#define __DBL_HAS_INFINITY__ 1
2674 // I386:#define __DBL_HAS_QUIET_NAN__ 1
2675 // I386:#define __DBL_MANT_DIG__ 53
2676 // I386:#define __DBL_MAX_10_EXP__ 308
2677 // I386:#define __DBL_MAX_EXP__ 1024
2678 // I386:#define __DBL_MAX__ 1.7976931348623157e+308
2679 // I386:#define __DBL_MIN_10_EXP__ (-307)
2680 // I386:#define __DBL_MIN_EXP__ (-1021)
2681 // I386:#define __DBL_MIN__ 2.2250738585072014e-308
2682 // I386:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
2683 // I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2684 // I386:#define __FLT_DIG__ 6
2685 // I386:#define __FLT_EPSILON__ 1.19209290e-7F
2686 // I386:#define __FLT_EVAL_METHOD__ 2
2687 // I386:#define __FLT_HAS_DENORM__ 1
2688 // I386:#define __FLT_HAS_INFINITY__ 1
2689 // I386:#define __FLT_HAS_QUIET_NAN__ 1
2690 // I386:#define __FLT_MANT_DIG__ 24
2691 // I386:#define __FLT_MAX_10_EXP__ 38
2692 // I386:#define __FLT_MAX_EXP__ 128
2693 // I386:#define __FLT_MAX__ 3.40282347e+38F
2694 // I386:#define __FLT_MIN_10_EXP__ (-37)
2695 // I386:#define __FLT_MIN_EXP__ (-125)
2696 // I386:#define __FLT_MIN__ 1.17549435e-38F
2697 // I386:#define __FLT_RADIX__ 2
2698 // I386:#define __INT16_C_SUFFIX__
2699 // I386:#define __INT16_FMTd__ "hd"
2700 // I386:#define __INT16_FMTi__ "hi"
2701 // I386:#define __INT16_MAX__ 32767
2702 // I386:#define __INT16_TYPE__ short
2703 // I386:#define __INT32_C_SUFFIX__
2704 // I386:#define __INT32_FMTd__ "d"
2705 // I386:#define __INT32_FMTi__ "i"
2706 // I386:#define __INT32_MAX__ 2147483647
2707 // I386:#define __INT32_TYPE__ int
2708 // I386:#define __INT64_C_SUFFIX__ LL
2709 // I386:#define __INT64_FMTd__ "lld"
2710 // I386:#define __INT64_FMTi__ "lli"
2711 // I386:#define __INT64_MAX__ 9223372036854775807LL
2712 // I386:#define __INT64_TYPE__ long long int
2713 // I386:#define __INT8_C_SUFFIX__
2714 // I386:#define __INT8_FMTd__ "hhd"
2715 // I386:#define __INT8_FMTi__ "hhi"
2716 // I386:#define __INT8_MAX__ 127
2717 // I386:#define __INT8_TYPE__ signed char
2718 // I386:#define __INTMAX_C_SUFFIX__ LL
2719 // I386:#define __INTMAX_FMTd__ "lld"
2720 // I386:#define __INTMAX_FMTi__ "lli"
2721 // I386:#define __INTMAX_MAX__ 9223372036854775807LL
2722 // I386:#define __INTMAX_TYPE__ long long int
2723 // I386:#define __INTMAX_WIDTH__ 64
2724 // I386:#define __INTPTR_FMTd__ "d"
2725 // I386:#define __INTPTR_FMTi__ "i"
2726 // I386:#define __INTPTR_MAX__ 2147483647
2727 // I386:#define __INTPTR_TYPE__ int
2728 // I386:#define __INTPTR_WIDTH__ 32
2729 // I386:#define __INT_FAST16_FMTd__ "hd"
2730 // I386:#define __INT_FAST16_FMTi__ "hi"
2731 // I386:#define __INT_FAST16_MAX__ 32767
2732 // I386:#define __INT_FAST16_TYPE__ short
2733 // I386:#define __INT_FAST32_FMTd__ "d"
2734 // I386:#define __INT_FAST32_FMTi__ "i"
2735 // I386:#define __INT_FAST32_MAX__ 2147483647
2736 // I386:#define __INT_FAST32_TYPE__ int
2737 // I386:#define __INT_FAST64_FMTd__ "lld"
2738 // I386:#define __INT_FAST64_FMTi__ "lli"
2739 // I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
2740 // I386:#define __INT_FAST64_TYPE__ long long int
2741 // I386:#define __INT_FAST8_FMTd__ "hhd"
2742 // I386:#define __INT_FAST8_FMTi__ "hhi"
2743 // I386:#define __INT_FAST8_MAX__ 127
2744 // I386:#define __INT_FAST8_TYPE__ signed char
2745 // I386:#define __INT_LEAST16_FMTd__ "hd"
2746 // I386:#define __INT_LEAST16_FMTi__ "hi"
2747 // I386:#define __INT_LEAST16_MAX__ 32767
2748 // I386:#define __INT_LEAST16_TYPE__ short
2749 // I386:#define __INT_LEAST32_FMTd__ "d"
2750 // I386:#define __INT_LEAST32_FMTi__ "i"
2751 // I386:#define __INT_LEAST32_MAX__ 2147483647
2752 // I386:#define __INT_LEAST32_TYPE__ int
2753 // I386:#define __INT_LEAST64_FMTd__ "lld"
2754 // I386:#define __INT_LEAST64_FMTi__ "lli"
2755 // I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2756 // I386:#define __INT_LEAST64_TYPE__ long long int
2757 // I386:#define __INT_LEAST8_FMTd__ "hhd"
2758 // I386:#define __INT_LEAST8_FMTi__ "hhi"
2759 // I386:#define __INT_LEAST8_MAX__ 127
2760 // I386:#define __INT_LEAST8_TYPE__ signed char
2761 // I386:#define __INT_MAX__ 2147483647
2762 // I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2763 // I386:#define __LDBL_DIG__ 18
2764 // I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2765 // I386:#define __LDBL_HAS_DENORM__ 1
2766 // I386:#define __LDBL_HAS_INFINITY__ 1
2767 // I386:#define __LDBL_HAS_QUIET_NAN__ 1
2768 // I386:#define __LDBL_MANT_DIG__ 64
2769 // I386:#define __LDBL_MAX_10_EXP__ 4932
2770 // I386:#define __LDBL_MAX_EXP__ 16384
2771 // I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2772 // I386:#define __LDBL_MIN_10_EXP__ (-4931)
2773 // I386:#define __LDBL_MIN_EXP__ (-16381)
2774 // I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2775 // I386:#define __LITTLE_ENDIAN__ 1
2776 // I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
2777 // I386:#define __LONG_MAX__ 2147483647L
2778 // I386-NOT:#define __LP64__
2779 // I386:#define __NO_MATH_INLINES 1
2780 // I386:#define __POINTER_WIDTH__ 32
2781 // I386:#define __PTRDIFF_TYPE__ int
2782 // I386:#define __PTRDIFF_WIDTH__ 32
2783 // I386:#define __REGISTER_PREFIX__
2784 // I386:#define __SCHAR_MAX__ 127
2785 // I386:#define __SHRT_MAX__ 32767
2786 // I386:#define __SIG_ATOMIC_MAX__ 2147483647
2787 // I386:#define __SIG_ATOMIC_WIDTH__ 32
2788 // I386:#define __SIZEOF_DOUBLE__ 8
2789 // I386:#define __SIZEOF_FLOAT__ 4
2790 // I386:#define __SIZEOF_INT__ 4
2791 // I386:#define __SIZEOF_LONG_DOUBLE__ 12
2792 // I386:#define __SIZEOF_LONG_LONG__ 8
2793 // I386:#define __SIZEOF_LONG__ 4
2794 // I386:#define __SIZEOF_POINTER__ 4
2795 // I386:#define __SIZEOF_PTRDIFF_T__ 4
2796 // I386:#define __SIZEOF_SHORT__ 2
2797 // I386:#define __SIZEOF_SIZE_T__ 4
2798 // I386:#define __SIZEOF_WCHAR_T__ 4
2799 // I386:#define __SIZEOF_WINT_T__ 4
2800 // I386:#define __SIZE_MAX__ 4294967295U
2801 // I386:#define __SIZE_TYPE__ unsigned int
2802 // I386:#define __SIZE_WIDTH__ 32
2803 // I386:#define __UINT16_C_SUFFIX__
2804 // I386:#define __UINT16_MAX__ 65535
2805 // I386:#define __UINT16_TYPE__ unsigned short
2806 // I386:#define __UINT32_C_SUFFIX__ U
2807 // I386:#define __UINT32_MAX__ 4294967295U
2808 // I386:#define __UINT32_TYPE__ unsigned int
2809 // I386:#define __UINT64_C_SUFFIX__ ULL
2810 // I386:#define __UINT64_MAX__ 18446744073709551615ULL
2811 // I386:#define __UINT64_TYPE__ long long unsigned int
2812 // I386:#define __UINT8_C_SUFFIX__
2813 // I386:#define __UINT8_MAX__ 255
2814 // I386:#define __UINT8_TYPE__ unsigned char
2815 // I386:#define __UINTMAX_C_SUFFIX__ ULL
2816 // I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
2817 // I386:#define __UINTMAX_TYPE__ long long unsigned int
2818 // I386:#define __UINTMAX_WIDTH__ 64
2819 // I386:#define __UINTPTR_MAX__ 4294967295U
2820 // I386:#define __UINTPTR_TYPE__ unsigned int
2821 // I386:#define __UINTPTR_WIDTH__ 32
2822 // I386:#define __UINT_FAST16_MAX__ 65535
2823 // I386:#define __UINT_FAST16_TYPE__ unsigned short
2824 // I386:#define __UINT_FAST32_MAX__ 4294967295U
2825 // I386:#define __UINT_FAST32_TYPE__ unsigned int
2826 // I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2827 // I386:#define __UINT_FAST64_TYPE__ long long unsigned int
2828 // I386:#define __UINT_FAST8_MAX__ 255
2829 // I386:#define __UINT_FAST8_TYPE__ unsigned char
2830 // I386:#define __UINT_LEAST16_MAX__ 65535
2831 // I386:#define __UINT_LEAST16_TYPE__ unsigned short
2832 // I386:#define __UINT_LEAST32_MAX__ 4294967295U
2833 // I386:#define __UINT_LEAST32_TYPE__ unsigned int
2834 // I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2835 // I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
2836 // I386:#define __UINT_LEAST8_MAX__ 255
2837 // I386:#define __UINT_LEAST8_TYPE__ unsigned char
2838 // I386:#define __USER_LABEL_PREFIX__
2839 // I386:#define __WCHAR_MAX__ 2147483647
2840 // I386:#define __WCHAR_TYPE__ int
2841 // I386:#define __WCHAR_WIDTH__ 32
2842 // I386:#define __WINT_TYPE__ int
2843 // I386:#define __WINT_WIDTH__ 32
2844 // I386:#define __i386 1
2845 // I386:#define __i386__ 1
2846 // I386:#define i386 1
2847 //
2848 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -match-full-lines -check-prefix I386-LINUX -check-prefix I386-LINUX-ALIGN32 %s
2849 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -match-full-lines -check-prefix I386-LINUX -check-prefix I386-LINUX-CXX -check-prefix I386-LINUX-ALIGN32 %s
2850 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 -malign-double < /dev/null | FileCheck -match-full-lines -check-prefix I386-LINUX -check-prefix I386-LINUX-ALIGN64 %s
2851 //
2852 // I386-LINUX-NOT:#define _LP64
2853 // I386-LINUX:#define __BIGGEST_ALIGNMENT__ 16
2854 // I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2855 // I386-LINUX:#define __CHAR16_TYPE__ unsigned short
2856 // I386-LINUX:#define __CHAR32_TYPE__ unsigned int
2857 // I386-LINUX:#define __CHAR_BIT__ 8
2858 // I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2859 // I386-LINUX:#define __DBL_DIG__ 15
2860 // I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2861 // I386-LINUX:#define __DBL_HAS_DENORM__ 1
2862 // I386-LINUX:#define __DBL_HAS_INFINITY__ 1
2863 // I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2864 // I386-LINUX:#define __DBL_MANT_DIG__ 53
2865 // I386-LINUX:#define __DBL_MAX_10_EXP__ 308
2866 // I386-LINUX:#define __DBL_MAX_EXP__ 1024
2867 // I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2868 // I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2869 // I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
2870 // I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
2871 // I386-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
2872 // I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2873 // I386-LINUX:#define __FLT_DIG__ 6
2874 // I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2875 // I386-LINUX:#define __FLT_EVAL_METHOD__ 0
2876 // I386-LINUX:#define __FLT_HAS_DENORM__ 1
2877 // I386-LINUX:#define __FLT_HAS_INFINITY__ 1
2878 // I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2879 // I386-LINUX:#define __FLT_MANT_DIG__ 24
2880 // I386-LINUX:#define __FLT_MAX_10_EXP__ 38
2881 // I386-LINUX:#define __FLT_MAX_EXP__ 128
2882 // I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2883 // I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2884 // I386-LINUX:#define __FLT_MIN_EXP__ (-125)
2885 // I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2886 // I386-LINUX:#define __FLT_RADIX__ 2
2887 // I386-LINUX:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
2888 // I386-LINUX:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
2889 // I386-LINUX:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
2890 // I386-LINUX:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
2891 // I386-LINUX:#define __GCC_ATOMIC_INT_LOCK_FREE 2
2892 // I386-LINUX-ALIGN32:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
2893 // I386-LINUX-ALIGN64:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
2894 // I386-LINUX:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
2895 // I386-LINUX:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
2896 // I386-LINUX:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
2897 // I386-LINUX:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
2898 // I386-LINUX:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
2899 // I386-LINUX:#define __INT16_C_SUFFIX__
2900 // I386-LINUX:#define __INT16_FMTd__ "hd"
2901 // I386-LINUX:#define __INT16_FMTi__ "hi"
2902 // I386-LINUX:#define __INT16_MAX__ 32767
2903 // I386-LINUX:#define __INT16_TYPE__ short
2904 // I386-LINUX:#define __INT32_C_SUFFIX__
2905 // I386-LINUX:#define __INT32_FMTd__ "d"
2906 // I386-LINUX:#define __INT32_FMTi__ "i"
2907 // I386-LINUX:#define __INT32_MAX__ 2147483647
2908 // I386-LINUX:#define __INT32_TYPE__ int
2909 // I386-LINUX:#define __INT64_C_SUFFIX__ LL
2910 // I386-LINUX:#define __INT64_FMTd__ "lld"
2911 // I386-LINUX:#define __INT64_FMTi__ "lli"
2912 // I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
2913 // I386-LINUX:#define __INT64_TYPE__ long long int
2914 // I386-LINUX:#define __INT8_C_SUFFIX__
2915 // I386-LINUX:#define __INT8_FMTd__ "hhd"
2916 // I386-LINUX:#define __INT8_FMTi__ "hhi"
2917 // I386-LINUX:#define __INT8_MAX__ 127
2918 // I386-LINUX:#define __INT8_TYPE__ signed char
2919 // I386-LINUX:#define __INTMAX_C_SUFFIX__ LL
2920 // I386-LINUX:#define __INTMAX_FMTd__ "lld"
2921 // I386-LINUX:#define __INTMAX_FMTi__ "lli"
2922 // I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2923 // I386-LINUX:#define __INTMAX_TYPE__ long long int
2924 // I386-LINUX:#define __INTMAX_WIDTH__ 64
2925 // I386-LINUX:#define __INTPTR_FMTd__ "d"
2926 // I386-LINUX:#define __INTPTR_FMTi__ "i"
2927 // I386-LINUX:#define __INTPTR_MAX__ 2147483647
2928 // I386-LINUX:#define __INTPTR_TYPE__ int
2929 // I386-LINUX:#define __INTPTR_WIDTH__ 32
2930 // I386-LINUX:#define __INT_FAST16_FMTd__ "hd"
2931 // I386-LINUX:#define __INT_FAST16_FMTi__ "hi"
2932 // I386-LINUX:#define __INT_FAST16_MAX__ 32767
2933 // I386-LINUX:#define __INT_FAST16_TYPE__ short
2934 // I386-LINUX:#define __INT_FAST32_FMTd__ "d"
2935 // I386-LINUX:#define __INT_FAST32_FMTi__ "i"
2936 // I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
2937 // I386-LINUX:#define __INT_FAST32_TYPE__ int
2938 // I386-LINUX:#define __INT_FAST64_FMTd__ "lld"
2939 // I386-LINUX:#define __INT_FAST64_FMTi__ "lli"
2940 // I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
2941 // I386-LINUX:#define __INT_FAST64_TYPE__ long long int
2942 // I386-LINUX:#define __INT_FAST8_FMTd__ "hhd"
2943 // I386-LINUX:#define __INT_FAST8_FMTi__ "hhi"
2944 // I386-LINUX:#define __INT_FAST8_MAX__ 127
2945 // I386-LINUX:#define __INT_FAST8_TYPE__ signed char
2946 // I386-LINUX:#define __INT_LEAST16_FMTd__ "hd"
2947 // I386-LINUX:#define __INT_LEAST16_FMTi__ "hi"
2948 // I386-LINUX:#define __INT_LEAST16_MAX__ 32767
2949 // I386-LINUX:#define __INT_LEAST16_TYPE__ short
2950 // I386-LINUX:#define __INT_LEAST32_FMTd__ "d"
2951 // I386-LINUX:#define __INT_LEAST32_FMTi__ "i"
2952 // I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
2953 // I386-LINUX:#define __INT_LEAST32_TYPE__ int
2954 // I386-LINUX:#define __INT_LEAST64_FMTd__ "lld"
2955 // I386-LINUX:#define __INT_LEAST64_FMTi__ "lli"
2956 // I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2957 // I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
2958 // I386-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
2959 // I386-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
2960 // I386-LINUX:#define __INT_LEAST8_MAX__ 127
2961 // I386-LINUX:#define __INT_LEAST8_TYPE__ signed char
2962 // I386-LINUX:#define __INT_MAX__ 2147483647
2963 // I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2964 // I386-LINUX:#define __LDBL_DIG__ 18
2965 // I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2966 // I386-LINUX:#define __LDBL_HAS_DENORM__ 1
2967 // I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
2968 // I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2969 // I386-LINUX:#define __LDBL_MANT_DIG__ 64
2970 // I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2971 // I386-LINUX:#define __LDBL_MAX_EXP__ 16384
2972 // I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2973 // I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2974 // I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2975 // I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2976 // I386-LINUX:#define __LITTLE_ENDIAN__ 1
2977 // I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2978 // I386-LINUX:#define __LONG_MAX__ 2147483647L
2979 // I386-LINUX-NOT:#define __LP64__
2980 // I386-LINUX:#define __NO_MATH_INLINES 1
2981 // I386-LINUX:#define __POINTER_WIDTH__ 32
2982 // I386-LINUX:#define __PTRDIFF_TYPE__ int
2983 // I386-LINUX:#define __PTRDIFF_WIDTH__ 32
2984 // I386-LINUX:#define __REGISTER_PREFIX__
2985 // I386-LINUX:#define __SCHAR_MAX__ 127
2986 // I386-LINUX:#define __SHRT_MAX__ 32767
2987 // I386-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
2988 // I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2989 // I386-LINUX:#define __SIZEOF_DOUBLE__ 8
2990 // I386-LINUX:#define __SIZEOF_FLOAT__ 4
2991 // I386-LINUX:#define __SIZEOF_INT__ 4
2992 // I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
2993 // I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
2994 // I386-LINUX:#define __SIZEOF_LONG__ 4
2995 // I386-LINUX:#define __SIZEOF_POINTER__ 4
2996 // I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2997 // I386-LINUX:#define __SIZEOF_SHORT__ 2
2998 // I386-LINUX:#define __SIZEOF_SIZE_T__ 4
2999 // I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
3000 // I386-LINUX:#define __SIZEOF_WINT_T__ 4
3001 // I386-LINUX:#define __SIZE_MAX__ 4294967295U
3002 // I386-LINUX:#define __SIZE_TYPE__ unsigned int
3003 // I386-LINUX:#define __SIZE_WIDTH__ 32
3004 // I386-LINUX-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
3005 // I386-LINUX:#define __UINT16_C_SUFFIX__
3006 // I386-LINUX:#define __UINT16_MAX__ 65535
3007 // I386-LINUX:#define __UINT16_TYPE__ unsigned short
3008 // I386-LINUX:#define __UINT32_C_SUFFIX__ U
3009 // I386-LINUX:#define __UINT32_MAX__ 4294967295U
3010 // I386-LINUX:#define __UINT32_TYPE__ unsigned int
3011 // I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
3012 // I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
3013 // I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
3014 // I386-LINUX:#define __UINT8_C_SUFFIX__
3015 // I386-LINUX:#define __UINT8_MAX__ 255
3016 // I386-LINUX:#define __UINT8_TYPE__ unsigned char
3017 // I386-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
3018 // I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
3019 // I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
3020 // I386-LINUX:#define __UINTMAX_WIDTH__ 64
3021 // I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
3022 // I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
3023 // I386-LINUX:#define __UINTPTR_WIDTH__ 32
3024 // I386-LINUX:#define __UINT_FAST16_MAX__ 65535
3025 // I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
3026 // I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
3027 // I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
3028 // I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3029 // I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
3030 // I386-LINUX:#define __UINT_FAST8_MAX__ 255
3031 // I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
3032 // I386-LINUX:#define __UINT_LEAST16_MAX__ 65535
3033 // I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
3034 // I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
3035 // I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
3036 // I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3037 // I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
3038 // I386-LINUX:#define __UINT_LEAST8_MAX__ 255
3039 // I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
3040 // I386-LINUX:#define __USER_LABEL_PREFIX__
3041 // I386-LINUX:#define __WCHAR_MAX__ 2147483647
3042 // I386-LINUX:#define __WCHAR_TYPE__ int
3043 // I386-LINUX:#define __WCHAR_WIDTH__ 32
3044 // I386-LINUX:#define __WINT_TYPE__ unsigned int
3045 // I386-LINUX:#define __WINT_WIDTH__ 32
3046 // I386-LINUX:#define __i386 1
3047 // I386-LINUX:#define __i386__ 1
3048 // I386-LINUX:#define i386 1
3049 //
3050 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd -target-cpu i486 < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD %s
3051 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=i386-netbsd -target-cpu i486 < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD -check-prefix I386-NETBSD-CXX %s
3052 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd -target-cpu i486 -malign-double < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD %s
3053 //
3054 //
3055 // I386-NETBSD-NOT:#define _LP64
3056 // I386-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
3057 // I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3058 // I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
3059 // I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
3060 // I386-NETBSD:#define __CHAR_BIT__ 8
3061 // I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3062 // I386-NETBSD:#define __DBL_DIG__ 15
3063 // I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
3064 // I386-NETBSD:#define __DBL_HAS_DENORM__ 1
3065 // I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
3066 // I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
3067 // I386-NETBSD:#define __DBL_MANT_DIG__ 53
3068 // I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
3069 // I386-NETBSD:#define __DBL_MAX_EXP__ 1024
3070 // I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
3071 // I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
3072 // I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
3073 // I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
3074 // I386-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
3075 // I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3076 // I386-NETBSD:#define __FLT_DIG__ 6
3077 // I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
3078 // I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
3079 // I386-NETBSD:#define __FLT_HAS_DENORM__ 1
3080 // I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
3081 // I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
3082 // I386-NETBSD:#define __FLT_MANT_DIG__ 24
3083 // I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
3084 // I386-NETBSD:#define __FLT_MAX_EXP__ 128
3085 // I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
3086 // I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
3087 // I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
3088 // I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
3089 // I386-NETBSD:#define __FLT_RADIX__ 2
3090 // I386-NETBSD:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3091 // I386-NETBSD:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3092 // I386-NETBSD:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3093 // I386-NETBSD:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3094 // I386-NETBSD:#define __GCC_ATOMIC_INT_LOCK_FREE 2
3095 // I386-NETBSD:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
3096 // I386-NETBSD:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
3097 // I386-NETBSD:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3098 // I386-NETBSD:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3099 // I386-NETBSD:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3100 // I386-NETBSD:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3101 // I386-NETBSD:#define __INT16_C_SUFFIX__
3102 // I386-NETBSD:#define __INT16_FMTd__ "hd"
3103 // I386-NETBSD:#define __INT16_FMTi__ "hi"
3104 // I386-NETBSD:#define __INT16_MAX__ 32767
3105 // I386-NETBSD:#define __INT16_TYPE__ short
3106 // I386-NETBSD:#define __INT32_C_SUFFIX__
3107 // I386-NETBSD:#define __INT32_FMTd__ "d"
3108 // I386-NETBSD:#define __INT32_FMTi__ "i"
3109 // I386-NETBSD:#define __INT32_MAX__ 2147483647
3110 // I386-NETBSD:#define __INT32_TYPE__ int
3111 // I386-NETBSD:#define __INT64_C_SUFFIX__ LL
3112 // I386-NETBSD:#define __INT64_FMTd__ "lld"
3113 // I386-NETBSD:#define __INT64_FMTi__ "lli"
3114 // I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
3115 // I386-NETBSD:#define __INT64_TYPE__ long long int
3116 // I386-NETBSD:#define __INT8_C_SUFFIX__
3117 // I386-NETBSD:#define __INT8_FMTd__ "hhd"
3118 // I386-NETBSD:#define __INT8_FMTi__ "hhi"
3119 // I386-NETBSD:#define __INT8_MAX__ 127
3120 // I386-NETBSD:#define __INT8_TYPE__ signed char
3121 // I386-NETBSD:#define __INTMAX_C_SUFFIX__ LL
3122 // I386-NETBSD:#define __INTMAX_FMTd__ "lld"
3123 // I386-NETBSD:#define __INTMAX_FMTi__ "lli"
3124 // I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
3125 // I386-NETBSD:#define __INTMAX_TYPE__ long long int
3126 // I386-NETBSD:#define __INTMAX_WIDTH__ 64
3127 // I386-NETBSD:#define __INTPTR_FMTd__ "d"
3128 // I386-NETBSD:#define __INTPTR_FMTi__ "i"
3129 // I386-NETBSD:#define __INTPTR_MAX__ 2147483647
3130 // I386-NETBSD:#define __INTPTR_TYPE__ int
3131 // I386-NETBSD:#define __INTPTR_WIDTH__ 32
3132 // I386-NETBSD:#define __INT_FAST16_FMTd__ "hd"
3133 // I386-NETBSD:#define __INT_FAST16_FMTi__ "hi"
3134 // I386-NETBSD:#define __INT_FAST16_MAX__ 32767
3135 // I386-NETBSD:#define __INT_FAST16_TYPE__ short
3136 // I386-NETBSD:#define __INT_FAST32_FMTd__ "d"
3137 // I386-NETBSD:#define __INT_FAST32_FMTi__ "i"
3138 // I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
3139 // I386-NETBSD:#define __INT_FAST32_TYPE__ int
3140 // I386-NETBSD:#define __INT_FAST64_FMTd__ "lld"
3141 // I386-NETBSD:#define __INT_FAST64_FMTi__ "lli"
3142 // I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
3143 // I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
3144 // I386-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
3145 // I386-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
3146 // I386-NETBSD:#define __INT_FAST8_MAX__ 127
3147 // I386-NETBSD:#define __INT_FAST8_TYPE__ signed char
3148 // I386-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
3149 // I386-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
3150 // I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
3151 // I386-NETBSD:#define __INT_LEAST16_TYPE__ short
3152 // I386-NETBSD:#define __INT_LEAST32_FMTd__ "d"
3153 // I386-NETBSD:#define __INT_LEAST32_FMTi__ "i"
3154 // I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
3155 // I386-NETBSD:#define __INT_LEAST32_TYPE__ int
3156 // I386-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
3157 // I386-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
3158 // I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3159 // I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
3160 // I386-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
3161 // I386-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
3162 // I386-NETBSD:#define __INT_LEAST8_MAX__ 127
3163 // I386-NETBSD:#define __INT_LEAST8_TYPE__ signed char
3164 // I386-NETBSD:#define __INT_MAX__ 2147483647
3165 // I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
3166 // I386-NETBSD:#define __LDBL_DIG__ 18
3167 // I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
3168 // I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
3169 // I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
3170 // I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
3171 // I386-NETBSD:#define __LDBL_MANT_DIG__ 64
3172 // I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
3173 // I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
3174 // I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
3175 // I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
3176 // I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
3177 // I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
3178 // I386-NETBSD:#define __LITTLE_ENDIAN__ 1
3179 // I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
3180 // I386-NETBSD:#define __LONG_MAX__ 2147483647L
3181 // I386-NETBSD-NOT:#define __LP64__
3182 // I386-NETBSD:#define __NO_MATH_INLINES 1
3183 // I386-NETBSD:#define __POINTER_WIDTH__ 32
3184 // I386-NETBSD:#define __PTRDIFF_TYPE__ int
3185 // I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
3186 // I386-NETBSD:#define __REGISTER_PREFIX__
3187 // I386-NETBSD:#define __SCHAR_MAX__ 127
3188 // I386-NETBSD:#define __SHRT_MAX__ 32767
3189 // I386-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
3190 // I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
3191 // I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
3192 // I386-NETBSD:#define __SIZEOF_FLOAT__ 4
3193 // I386-NETBSD:#define __SIZEOF_INT__ 4
3194 // I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
3195 // I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
3196 // I386-NETBSD:#define __SIZEOF_LONG__ 4
3197 // I386-NETBSD:#define __SIZEOF_POINTER__ 4
3198 // I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
3199 // I386-NETBSD:#define __SIZEOF_SHORT__ 2
3200 // I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
3201 // I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
3202 // I386-NETBSD:#define __SIZEOF_WINT_T__ 4
3203 // I386-NETBSD:#define __SIZE_MAX__ 4294967295U
3204 // I386-NETBSD:#define __SIZE_TYPE__ unsigned int
3205 // I386-NETBSD:#define __SIZE_WIDTH__ 32
3206 // I386-NETBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
3207 // I386-NETBSD:#define __UINT16_C_SUFFIX__
3208 // I386-NETBSD:#define __UINT16_MAX__ 65535
3209 // I386-NETBSD:#define __UINT16_TYPE__ unsigned short
3210 // I386-NETBSD:#define __UINT32_C_SUFFIX__ U
3211 // I386-NETBSD:#define __UINT32_MAX__ 4294967295U
3212 // I386-NETBSD:#define __UINT32_TYPE__ unsigned int
3213 // I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
3214 // I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
3215 // I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
3216 // I386-NETBSD:#define __UINT8_C_SUFFIX__
3217 // I386-NETBSD:#define __UINT8_MAX__ 255
3218 // I386-NETBSD:#define __UINT8_TYPE__ unsigned char
3219 // I386-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
3220 // I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
3221 // I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
3222 // I386-NETBSD:#define __UINTMAX_WIDTH__ 64
3223 // I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
3224 // I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
3225 // I386-NETBSD:#define __UINTPTR_WIDTH__ 32
3226 // I386-NETBSD:#define __UINT_FAST16_MAX__ 65535
3227 // I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
3228 // I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
3229 // I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
3230 // I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3231 // I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
3232 // I386-NETBSD:#define __UINT_FAST8_MAX__ 255
3233 // I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
3234 // I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535
3235 // I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
3236 // I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
3237 // I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
3238 // I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3239 // I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
3240 // I386-NETBSD:#define __UINT_LEAST8_MAX__ 255
3241 // I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
3242 // I386-NETBSD:#define __USER_LABEL_PREFIX__
3243 // I386-NETBSD:#define __WCHAR_MAX__ 2147483647
3244 // I386-NETBSD:#define __WCHAR_TYPE__ int
3245 // I386-NETBSD:#define __WCHAR_WIDTH__ 32
3246 // I386-NETBSD:#define __WINT_TYPE__ int
3247 // I386-NETBSD:#define __WINT_WIDTH__ 32
3248 // I386-NETBSD:#define __i386 1
3249 // I386-NETBSD:#define __i386__ 1
3250 // I386-NETBSD:#define i386 1
3251 //
3252 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd -target-feature +sse2 < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD-SSE %s
3253 // I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
3254 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd6  < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD6 %s
3255 // I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
3256 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd6 -target-feature +sse2 < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD6-SSE %s
3257 // I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
3258 
3259 // RUN: %clang_cc1 -E -dM -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3260 // RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3261 // RUN: %clang_cc1 -E -dM -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3262 // RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3263 // I386-DECLSPEC: #define __declspec{{.*}}
3264 
3265 //
3266 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-C %s
3267 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-CXX %s
3268 //
3269 // MIPS32BE:#define MIPSEB 1
3270 // MIPS32BE:#define _ABIO32 1
3271 // MIPS32BE-NOT:#define _LP64
3272 // MIPS32BE:#define _MIPSEB 1
3273 // MIPS32BE:#define _MIPS_ARCH "mips32r2"
3274 // MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
3275 // MIPS32BE:#define _MIPS_FPSET 16
3276 // MIPS32BE:#define _MIPS_SIM _ABIO32
3277 // MIPS32BE:#define _MIPS_SZINT 32
3278 // MIPS32BE:#define _MIPS_SZLONG 32
3279 // MIPS32BE:#define _MIPS_SZPTR 32
3280 // MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
3281 // MIPS32BE:#define __BIG_ENDIAN__ 1
3282 // MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3283 // MIPS32BE:#define __CHAR16_TYPE__ unsigned short
3284 // MIPS32BE:#define __CHAR32_TYPE__ unsigned int
3285 // MIPS32BE:#define __CHAR_BIT__ 8
3286 // MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
3287 // MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3288 // MIPS32BE:#define __DBL_DIG__ 15
3289 // MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
3290 // MIPS32BE:#define __DBL_HAS_DENORM__ 1
3291 // MIPS32BE:#define __DBL_HAS_INFINITY__ 1
3292 // MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
3293 // MIPS32BE:#define __DBL_MANT_DIG__ 53
3294 // MIPS32BE:#define __DBL_MAX_10_EXP__ 308
3295 // MIPS32BE:#define __DBL_MAX_EXP__ 1024
3296 // MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
3297 // MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
3298 // MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
3299 // MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
3300 // MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
3301 // MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3302 // MIPS32BE:#define __FLT_DIG__ 6
3303 // MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
3304 // MIPS32BE:#define __FLT_EVAL_METHOD__ 0
3305 // MIPS32BE:#define __FLT_HAS_DENORM__ 1
3306 // MIPS32BE:#define __FLT_HAS_INFINITY__ 1
3307 // MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
3308 // MIPS32BE:#define __FLT_MANT_DIG__ 24
3309 // MIPS32BE:#define __FLT_MAX_10_EXP__ 38
3310 // MIPS32BE:#define __FLT_MAX_EXP__ 128
3311 // MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
3312 // MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
3313 // MIPS32BE:#define __FLT_MIN_EXP__ (-125)
3314 // MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
3315 // MIPS32BE:#define __FLT_RADIX__ 2
3316 // MIPS32BE:#define __INT16_C_SUFFIX__
3317 // MIPS32BE:#define __INT16_FMTd__ "hd"
3318 // MIPS32BE:#define __INT16_FMTi__ "hi"
3319 // MIPS32BE:#define __INT16_MAX__ 32767
3320 // MIPS32BE:#define __INT16_TYPE__ short
3321 // MIPS32BE:#define __INT32_C_SUFFIX__
3322 // MIPS32BE:#define __INT32_FMTd__ "d"
3323 // MIPS32BE:#define __INT32_FMTi__ "i"
3324 // MIPS32BE:#define __INT32_MAX__ 2147483647
3325 // MIPS32BE:#define __INT32_TYPE__ int
3326 // MIPS32BE:#define __INT64_C_SUFFIX__ LL
3327 // MIPS32BE:#define __INT64_FMTd__ "lld"
3328 // MIPS32BE:#define __INT64_FMTi__ "lli"
3329 // MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
3330 // MIPS32BE:#define __INT64_TYPE__ long long int
3331 // MIPS32BE:#define __INT8_C_SUFFIX__
3332 // MIPS32BE:#define __INT8_FMTd__ "hhd"
3333 // MIPS32BE:#define __INT8_FMTi__ "hhi"
3334 // MIPS32BE:#define __INT8_MAX__ 127
3335 // MIPS32BE:#define __INT8_TYPE__ signed char
3336 // MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
3337 // MIPS32BE:#define __INTMAX_FMTd__ "lld"
3338 // MIPS32BE:#define __INTMAX_FMTi__ "lli"
3339 // MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
3340 // MIPS32BE:#define __INTMAX_TYPE__ long long int
3341 // MIPS32BE:#define __INTMAX_WIDTH__ 64
3342 // MIPS32BE:#define __INTPTR_FMTd__ "ld"
3343 // MIPS32BE:#define __INTPTR_FMTi__ "li"
3344 // MIPS32BE:#define __INTPTR_MAX__ 2147483647L
3345 // MIPS32BE:#define __INTPTR_TYPE__ long int
3346 // MIPS32BE:#define __INTPTR_WIDTH__ 32
3347 // MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
3348 // MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
3349 // MIPS32BE:#define __INT_FAST16_MAX__ 32767
3350 // MIPS32BE:#define __INT_FAST16_TYPE__ short
3351 // MIPS32BE:#define __INT_FAST32_FMTd__ "d"
3352 // MIPS32BE:#define __INT_FAST32_FMTi__ "i"
3353 // MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
3354 // MIPS32BE:#define __INT_FAST32_TYPE__ int
3355 // MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
3356 // MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
3357 // MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
3358 // MIPS32BE:#define __INT_FAST64_TYPE__ long long int
3359 // MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
3360 // MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
3361 // MIPS32BE:#define __INT_FAST8_MAX__ 127
3362 // MIPS32BE:#define __INT_FAST8_TYPE__ signed char
3363 // MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
3364 // MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
3365 // MIPS32BE:#define __INT_LEAST16_MAX__ 32767
3366 // MIPS32BE:#define __INT_LEAST16_TYPE__ short
3367 // MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
3368 // MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
3369 // MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
3370 // MIPS32BE:#define __INT_LEAST32_TYPE__ int
3371 // MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
3372 // MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
3373 // MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3374 // MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
3375 // MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
3376 // MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
3377 // MIPS32BE:#define __INT_LEAST8_MAX__ 127
3378 // MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
3379 // MIPS32BE:#define __INT_MAX__ 2147483647
3380 // MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
3381 // MIPS32BE:#define __LDBL_DIG__ 15
3382 // MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
3383 // MIPS32BE:#define __LDBL_HAS_DENORM__ 1
3384 // MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
3385 // MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
3386 // MIPS32BE:#define __LDBL_MANT_DIG__ 53
3387 // MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
3388 // MIPS32BE:#define __LDBL_MAX_EXP__ 1024
3389 // MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
3390 // MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
3391 // MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
3392 // MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
3393 // MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
3394 // MIPS32BE:#define __LONG_MAX__ 2147483647L
3395 // MIPS32BE-NOT:#define __LP64__
3396 // MIPS32BE:#define __MIPSEB 1
3397 // MIPS32BE:#define __MIPSEB__ 1
3398 // MIPS32BE:#define __POINTER_WIDTH__ 32
3399 // MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
3400 // MIPS32BE:#define __PTRDIFF_TYPE__ int
3401 // MIPS32BE:#define __PTRDIFF_WIDTH__ 32
3402 // MIPS32BE:#define __REGISTER_PREFIX__
3403 // MIPS32BE:#define __SCHAR_MAX__ 127
3404 // MIPS32BE:#define __SHRT_MAX__ 32767
3405 // MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
3406 // MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
3407 // MIPS32BE:#define __SIZEOF_DOUBLE__ 8
3408 // MIPS32BE:#define __SIZEOF_FLOAT__ 4
3409 // MIPS32BE:#define __SIZEOF_INT__ 4
3410 // MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
3411 // MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
3412 // MIPS32BE:#define __SIZEOF_LONG__ 4
3413 // MIPS32BE:#define __SIZEOF_POINTER__ 4
3414 // MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
3415 // MIPS32BE:#define __SIZEOF_SHORT__ 2
3416 // MIPS32BE:#define __SIZEOF_SIZE_T__ 4
3417 // MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
3418 // MIPS32BE:#define __SIZEOF_WINT_T__ 4
3419 // MIPS32BE:#define __SIZE_MAX__ 4294967295U
3420 // MIPS32BE:#define __SIZE_TYPE__ unsigned int
3421 // MIPS32BE:#define __SIZE_WIDTH__ 32
3422 // MIPS32BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
3423 // MIPS32BE:#define __STDC_HOSTED__ 0
3424 // MIPS32BE-C:#define __STDC_VERSION__ 201112L
3425 // MIPS32BE:#define __STDC__ 1
3426 // MIPS32BE:#define __UINT16_C_SUFFIX__
3427 // MIPS32BE:#define __UINT16_MAX__ 65535
3428 // MIPS32BE:#define __UINT16_TYPE__ unsigned short
3429 // MIPS32BE:#define __UINT32_C_SUFFIX__ U
3430 // MIPS32BE:#define __UINT32_MAX__ 4294967295U
3431 // MIPS32BE:#define __UINT32_TYPE__ unsigned int
3432 // MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
3433 // MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
3434 // MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
3435 // MIPS32BE:#define __UINT8_C_SUFFIX__
3436 // MIPS32BE:#define __UINT8_MAX__ 255
3437 // MIPS32BE:#define __UINT8_TYPE__ unsigned char
3438 // MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
3439 // MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
3440 // MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
3441 // MIPS32BE:#define __UINTMAX_WIDTH__ 64
3442 // MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
3443 // MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
3444 // MIPS32BE:#define __UINTPTR_WIDTH__ 32
3445 // MIPS32BE:#define __UINT_FAST16_MAX__ 65535
3446 // MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
3447 // MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
3448 // MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
3449 // MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3450 // MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
3451 // MIPS32BE:#define __UINT_FAST8_MAX__ 255
3452 // MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
3453 // MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
3454 // MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
3455 // MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
3456 // MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
3457 // MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3458 // MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
3459 // MIPS32BE:#define __UINT_LEAST8_MAX__ 255
3460 // MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
3461 // MIPS32BE:#define __USER_LABEL_PREFIX__
3462 // MIPS32BE:#define __WCHAR_MAX__ 2147483647
3463 // MIPS32BE:#define __WCHAR_TYPE__ int
3464 // MIPS32BE:#define __WCHAR_WIDTH__ 32
3465 // MIPS32BE:#define __WINT_TYPE__ int
3466 // MIPS32BE:#define __WINT_WIDTH__ 32
3467 // MIPS32BE:#define __clang__ 1
3468 // MIPS32BE:#define __llvm__ 1
3469 // MIPS32BE:#define __mips 32
3470 // MIPS32BE:#define __mips__ 1
3471 // MIPS32BE:#define __mips_abicalls 1
3472 // MIPS32BE:#define __mips_fpr 0
3473 // MIPS32BE:#define __mips_hard_float 1
3474 // MIPS32BE:#define __mips_o32 1
3475 // MIPS32BE:#define _mips 1
3476 // MIPS32BE:#define mips 1
3477 //
3478 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mipsel-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32EL %s
3479 //
3480 // MIPS32EL:#define MIPSEL 1
3481 // MIPS32EL:#define _ABIO32 1
3482 // MIPS32EL-NOT:#define _LP64
3483 // MIPS32EL:#define _MIPSEL 1
3484 // MIPS32EL:#define _MIPS_ARCH "mips32r2"
3485 // MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
3486 // MIPS32EL:#define _MIPS_FPSET 16
3487 // MIPS32EL:#define _MIPS_SIM _ABIO32
3488 // MIPS32EL:#define _MIPS_SZINT 32
3489 // MIPS32EL:#define _MIPS_SZLONG 32
3490 // MIPS32EL:#define _MIPS_SZPTR 32
3491 // MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
3492 // MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3493 // MIPS32EL:#define __CHAR16_TYPE__ unsigned short
3494 // MIPS32EL:#define __CHAR32_TYPE__ unsigned int
3495 // MIPS32EL:#define __CHAR_BIT__ 8
3496 // MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
3497 // MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3498 // MIPS32EL:#define __DBL_DIG__ 15
3499 // MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
3500 // MIPS32EL:#define __DBL_HAS_DENORM__ 1
3501 // MIPS32EL:#define __DBL_HAS_INFINITY__ 1
3502 // MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
3503 // MIPS32EL:#define __DBL_MANT_DIG__ 53
3504 // MIPS32EL:#define __DBL_MAX_10_EXP__ 308
3505 // MIPS32EL:#define __DBL_MAX_EXP__ 1024
3506 // MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
3507 // MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
3508 // MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
3509 // MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
3510 // MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
3511 // MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3512 // MIPS32EL:#define __FLT_DIG__ 6
3513 // MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
3514 // MIPS32EL:#define __FLT_EVAL_METHOD__ 0
3515 // MIPS32EL:#define __FLT_HAS_DENORM__ 1
3516 // MIPS32EL:#define __FLT_HAS_INFINITY__ 1
3517 // MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
3518 // MIPS32EL:#define __FLT_MANT_DIG__ 24
3519 // MIPS32EL:#define __FLT_MAX_10_EXP__ 38
3520 // MIPS32EL:#define __FLT_MAX_EXP__ 128
3521 // MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
3522 // MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
3523 // MIPS32EL:#define __FLT_MIN_EXP__ (-125)
3524 // MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
3525 // MIPS32EL:#define __FLT_RADIX__ 2
3526 // MIPS32EL:#define __INT16_C_SUFFIX__
3527 // MIPS32EL:#define __INT16_FMTd__ "hd"
3528 // MIPS32EL:#define __INT16_FMTi__ "hi"
3529 // MIPS32EL:#define __INT16_MAX__ 32767
3530 // MIPS32EL:#define __INT16_TYPE__ short
3531 // MIPS32EL:#define __INT32_C_SUFFIX__
3532 // MIPS32EL:#define __INT32_FMTd__ "d"
3533 // MIPS32EL:#define __INT32_FMTi__ "i"
3534 // MIPS32EL:#define __INT32_MAX__ 2147483647
3535 // MIPS32EL:#define __INT32_TYPE__ int
3536 // MIPS32EL:#define __INT64_C_SUFFIX__ LL
3537 // MIPS32EL:#define __INT64_FMTd__ "lld"
3538 // MIPS32EL:#define __INT64_FMTi__ "lli"
3539 // MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
3540 // MIPS32EL:#define __INT64_TYPE__ long long int
3541 // MIPS32EL:#define __INT8_C_SUFFIX__
3542 // MIPS32EL:#define __INT8_FMTd__ "hhd"
3543 // MIPS32EL:#define __INT8_FMTi__ "hhi"
3544 // MIPS32EL:#define __INT8_MAX__ 127
3545 // MIPS32EL:#define __INT8_TYPE__ signed char
3546 // MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
3547 // MIPS32EL:#define __INTMAX_FMTd__ "lld"
3548 // MIPS32EL:#define __INTMAX_FMTi__ "lli"
3549 // MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
3550 // MIPS32EL:#define __INTMAX_TYPE__ long long int
3551 // MIPS32EL:#define __INTMAX_WIDTH__ 64
3552 // MIPS32EL:#define __INTPTR_FMTd__ "ld"
3553 // MIPS32EL:#define __INTPTR_FMTi__ "li"
3554 // MIPS32EL:#define __INTPTR_MAX__ 2147483647L
3555 // MIPS32EL:#define __INTPTR_TYPE__ long int
3556 // MIPS32EL:#define __INTPTR_WIDTH__ 32
3557 // MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
3558 // MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
3559 // MIPS32EL:#define __INT_FAST16_MAX__ 32767
3560 // MIPS32EL:#define __INT_FAST16_TYPE__ short
3561 // MIPS32EL:#define __INT_FAST32_FMTd__ "d"
3562 // MIPS32EL:#define __INT_FAST32_FMTi__ "i"
3563 // MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
3564 // MIPS32EL:#define __INT_FAST32_TYPE__ int
3565 // MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
3566 // MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
3567 // MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
3568 // MIPS32EL:#define __INT_FAST64_TYPE__ long long int
3569 // MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
3570 // MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
3571 // MIPS32EL:#define __INT_FAST8_MAX__ 127
3572 // MIPS32EL:#define __INT_FAST8_TYPE__ signed char
3573 // MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
3574 // MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
3575 // MIPS32EL:#define __INT_LEAST16_MAX__ 32767
3576 // MIPS32EL:#define __INT_LEAST16_TYPE__ short
3577 // MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
3578 // MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
3579 // MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
3580 // MIPS32EL:#define __INT_LEAST32_TYPE__ int
3581 // MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
3582 // MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
3583 // MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3584 // MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
3585 // MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
3586 // MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
3587 // MIPS32EL:#define __INT_LEAST8_MAX__ 127
3588 // MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
3589 // MIPS32EL:#define __INT_MAX__ 2147483647
3590 // MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
3591 // MIPS32EL:#define __LDBL_DIG__ 15
3592 // MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
3593 // MIPS32EL:#define __LDBL_HAS_DENORM__ 1
3594 // MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
3595 // MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
3596 // MIPS32EL:#define __LDBL_MANT_DIG__ 53
3597 // MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
3598 // MIPS32EL:#define __LDBL_MAX_EXP__ 1024
3599 // MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
3600 // MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
3601 // MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
3602 // MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
3603 // MIPS32EL:#define __LITTLE_ENDIAN__ 1
3604 // MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
3605 // MIPS32EL:#define __LONG_MAX__ 2147483647L
3606 // MIPS32EL-NOT:#define __LP64__
3607 // MIPS32EL:#define __MIPSEL 1
3608 // MIPS32EL:#define __MIPSEL__ 1
3609 // MIPS32EL:#define __POINTER_WIDTH__ 32
3610 // MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
3611 // MIPS32EL:#define __PTRDIFF_TYPE__ int
3612 // MIPS32EL:#define __PTRDIFF_WIDTH__ 32
3613 // MIPS32EL:#define __REGISTER_PREFIX__
3614 // MIPS32EL:#define __SCHAR_MAX__ 127
3615 // MIPS32EL:#define __SHRT_MAX__ 32767
3616 // MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
3617 // MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
3618 // MIPS32EL:#define __SIZEOF_DOUBLE__ 8
3619 // MIPS32EL:#define __SIZEOF_FLOAT__ 4
3620 // MIPS32EL:#define __SIZEOF_INT__ 4
3621 // MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
3622 // MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
3623 // MIPS32EL:#define __SIZEOF_LONG__ 4
3624 // MIPS32EL:#define __SIZEOF_POINTER__ 4
3625 // MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
3626 // MIPS32EL:#define __SIZEOF_SHORT__ 2
3627 // MIPS32EL:#define __SIZEOF_SIZE_T__ 4
3628 // MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
3629 // MIPS32EL:#define __SIZEOF_WINT_T__ 4
3630 // MIPS32EL:#define __SIZE_MAX__ 4294967295U
3631 // MIPS32EL:#define __SIZE_TYPE__ unsigned int
3632 // MIPS32EL:#define __SIZE_WIDTH__ 32
3633 // MIPS32EL:#define __UINT16_C_SUFFIX__
3634 // MIPS32EL:#define __UINT16_MAX__ 65535
3635 // MIPS32EL:#define __UINT16_TYPE__ unsigned short
3636 // MIPS32EL:#define __UINT32_C_SUFFIX__ U
3637 // MIPS32EL:#define __UINT32_MAX__ 4294967295U
3638 // MIPS32EL:#define __UINT32_TYPE__ unsigned int
3639 // MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
3640 // MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
3641 // MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
3642 // MIPS32EL:#define __UINT8_C_SUFFIX__
3643 // MIPS32EL:#define __UINT8_MAX__ 255
3644 // MIPS32EL:#define __UINT8_TYPE__ unsigned char
3645 // MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
3646 // MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
3647 // MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
3648 // MIPS32EL:#define __UINTMAX_WIDTH__ 64
3649 // MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
3650 // MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
3651 // MIPS32EL:#define __UINTPTR_WIDTH__ 32
3652 // MIPS32EL:#define __UINT_FAST16_MAX__ 65535
3653 // MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
3654 // MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
3655 // MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
3656 // MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3657 // MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
3658 // MIPS32EL:#define __UINT_FAST8_MAX__ 255
3659 // MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
3660 // MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
3661 // MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
3662 // MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
3663 // MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
3664 // MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3665 // MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
3666 // MIPS32EL:#define __UINT_LEAST8_MAX__ 255
3667 // MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
3668 // MIPS32EL:#define __USER_LABEL_PREFIX__
3669 // MIPS32EL:#define __WCHAR_MAX__ 2147483647
3670 // MIPS32EL:#define __WCHAR_TYPE__ int
3671 // MIPS32EL:#define __WCHAR_WIDTH__ 32
3672 // MIPS32EL:#define __WINT_TYPE__ int
3673 // MIPS32EL:#define __WINT_WIDTH__ 32
3674 // MIPS32EL:#define __clang__ 1
3675 // MIPS32EL:#define __llvm__ 1
3676 // MIPS32EL:#define __mips 32
3677 // MIPS32EL:#define __mips__ 1
3678 // MIPS32EL:#define __mips_abicalls 1
3679 // MIPS32EL:#define __mips_fpr 0
3680 // MIPS32EL:#define __mips_hard_float 1
3681 // MIPS32EL:#define __mips_o32 1
3682 // MIPS32EL:#define _mips 1
3683 // MIPS32EL:#define mips 1
3684 //
3685 // RUN: %clang_cc1 -E -dM -ffreestanding \
3686 // RUN:            -triple=mips64-none-none -target-abi n32 < /dev/null \
3687 // RUN:   | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-C %s
3688 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding \
3689 // RUN:            -triple=mips64-none-none -target-abi n32 < /dev/null \
3690 // RUN:   | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-CXX %s
3691 //
3692 // MIPSN32BE: #define MIPSEB 1
3693 // MIPSN32BE: #define _ABIN32 2
3694 // MIPSN32BE: #define _ILP32 1
3695 // MIPSN32BE: #define _MIPSEB 1
3696 // MIPSN32BE: #define _MIPS_ARCH "mips64r2"
3697 // MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
3698 // MIPSN32BE: #define _MIPS_FPSET 32
3699 // MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
3700 // MIPSN32BE: #define _MIPS_SIM _ABIN32
3701 // MIPSN32BE: #define _MIPS_SZINT 32
3702 // MIPSN32BE: #define _MIPS_SZLONG 32
3703 // MIPSN32BE: #define _MIPS_SZPTR 32
3704 // MIPSN32BE: #define __ATOMIC_ACQUIRE 2
3705 // MIPSN32BE: #define __ATOMIC_ACQ_REL 4
3706 // MIPSN32BE: #define __ATOMIC_CONSUME 1
3707 // MIPSN32BE: #define __ATOMIC_RELAXED 0
3708 // MIPSN32BE: #define __ATOMIC_RELEASE 3
3709 // MIPSN32BE: #define __ATOMIC_SEQ_CST 5
3710 // MIPSN32BE: #define __BIG_ENDIAN__ 1
3711 // MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3712 // MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
3713 // MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
3714 // MIPSN32BE: #define __CHAR_BIT__ 8
3715 // MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
3716 // MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3717 // MIPSN32BE: #define __DBL_DIG__ 15
3718 // MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
3719 // MIPSN32BE: #define __DBL_HAS_DENORM__ 1
3720 // MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
3721 // MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
3722 // MIPSN32BE: #define __DBL_MANT_DIG__ 53
3723 // MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
3724 // MIPSN32BE: #define __DBL_MAX_EXP__ 1024
3725 // MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
3726 // MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
3727 // MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
3728 // MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
3729 // MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
3730 // MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
3731 // MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3732 // MIPSN32BE: #define __FLT_DIG__ 6
3733 // MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
3734 // MIPSN32BE: #define __FLT_EVAL_METHOD__ 0
3735 // MIPSN32BE: #define __FLT_HAS_DENORM__ 1
3736 // MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
3737 // MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
3738 // MIPSN32BE: #define __FLT_MANT_DIG__ 24
3739 // MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
3740 // MIPSN32BE: #define __FLT_MAX_EXP__ 128
3741 // MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
3742 // MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
3743 // MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
3744 // MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
3745 // MIPSN32BE: #define __FLT_RADIX__ 2
3746 // MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3747 // MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3748 // MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3749 // MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3750 // MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3751 // MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3752 // MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3753 // MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3754 // MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3755 // MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3756 // MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3757 // MIPSN32BE: #define __GNUC_MINOR__ 2
3758 // MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
3759 // MIPSN32BE-C: #define __GNUC_STDC_INLINE__ 1
3760 // MIPSN32BE: #define __GNUC__ 4
3761 // MIPSN32BE: #define __GXX_ABI_VERSION 1002
3762 // MIPSN32BE: #define __ILP32__ 1
3763 // MIPSN32BE: #define __INT16_C_SUFFIX__
3764 // MIPSN32BE: #define __INT16_FMTd__ "hd"
3765 // MIPSN32BE: #define __INT16_FMTi__ "hi"
3766 // MIPSN32BE: #define __INT16_MAX__ 32767
3767 // MIPSN32BE: #define __INT16_TYPE__ short
3768 // MIPSN32BE: #define __INT32_C_SUFFIX__
3769 // MIPSN32BE: #define __INT32_FMTd__ "d"
3770 // MIPSN32BE: #define __INT32_FMTi__ "i"
3771 // MIPSN32BE: #define __INT32_MAX__ 2147483647
3772 // MIPSN32BE: #define __INT32_TYPE__ int
3773 // MIPSN32BE: #define __INT64_C_SUFFIX__ LL
3774 // MIPSN32BE: #define __INT64_FMTd__ "lld"
3775 // MIPSN32BE: #define __INT64_FMTi__ "lli"
3776 // MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
3777 // MIPSN32BE: #define __INT64_TYPE__ long long int
3778 // MIPSN32BE: #define __INT8_C_SUFFIX__
3779 // MIPSN32BE: #define __INT8_FMTd__ "hhd"
3780 // MIPSN32BE: #define __INT8_FMTi__ "hhi"
3781 // MIPSN32BE: #define __INT8_MAX__ 127
3782 // MIPSN32BE: #define __INT8_TYPE__ signed char
3783 // MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
3784 // MIPSN32BE: #define __INTMAX_FMTd__ "lld"
3785 // MIPSN32BE: #define __INTMAX_FMTi__ "lli"
3786 // MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
3787 // MIPSN32BE: #define __INTMAX_TYPE__ long long int
3788 // MIPSN32BE: #define __INTMAX_WIDTH__ 64
3789 // MIPSN32BE: #define __INTPTR_FMTd__ "ld"
3790 // MIPSN32BE: #define __INTPTR_FMTi__ "li"
3791 // MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
3792 // MIPSN32BE: #define __INTPTR_TYPE__ long int
3793 // MIPSN32BE: #define __INTPTR_WIDTH__ 32
3794 // MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
3795 // MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
3796 // MIPSN32BE: #define __INT_FAST16_MAX__ 32767
3797 // MIPSN32BE: #define __INT_FAST16_TYPE__ short
3798 // MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
3799 // MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
3800 // MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
3801 // MIPSN32BE: #define __INT_FAST32_TYPE__ int
3802 // MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
3803 // MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
3804 // MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
3805 // MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
3806 // MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
3807 // MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
3808 // MIPSN32BE: #define __INT_FAST8_MAX__ 127
3809 // MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
3810 // MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
3811 // MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
3812 // MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
3813 // MIPSN32BE: #define __INT_LEAST16_TYPE__ short
3814 // MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
3815 // MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
3816 // MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
3817 // MIPSN32BE: #define __INT_LEAST32_TYPE__ int
3818 // MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
3819 // MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
3820 // MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3821 // MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
3822 // MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
3823 // MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
3824 // MIPSN32BE: #define __INT_LEAST8_MAX__ 127
3825 // MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
3826 // MIPSN32BE: #define __INT_MAX__ 2147483647
3827 // MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3828 // MIPSN32BE: #define __LDBL_DIG__ 33
3829 // MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3830 // MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
3831 // MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
3832 // MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
3833 // MIPSN32BE: #define __LDBL_MANT_DIG__ 113
3834 // MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
3835 // MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
3836 // MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3837 // MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
3838 // MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
3839 // MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3840 // MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
3841 // MIPSN32BE: #define __LONG_MAX__ 2147483647L
3842 // MIPSN32BE: #define __MIPSEB 1
3843 // MIPSN32BE: #define __MIPSEB__ 1
3844 // MIPSN32BE: #define __NO_INLINE__ 1
3845 // MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
3846 // MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
3847 // MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
3848 // MIPSN32BE: #define __POINTER_WIDTH__ 32
3849 // MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
3850 // MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
3851 // MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
3852 // MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
3853 // MIPSN32BE: #define __PTRDIFF_TYPE__ int
3854 // MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
3855 // MIPSN32BE: #define __REGISTER_PREFIX__
3856 // MIPSN32BE: #define __SCHAR_MAX__ 127
3857 // MIPSN32BE: #define __SHRT_MAX__ 32767
3858 // MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
3859 // MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
3860 // MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
3861 // MIPSN32BE: #define __SIZEOF_FLOAT__ 4
3862 // MIPSN32BE: #define __SIZEOF_INT__ 4
3863 // MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
3864 // MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
3865 // MIPSN32BE: #define __SIZEOF_LONG__ 4
3866 // MIPSN32BE: #define __SIZEOF_POINTER__ 4
3867 // MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
3868 // MIPSN32BE: #define __SIZEOF_SHORT__ 2
3869 // MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
3870 // MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
3871 // MIPSN32BE: #define __SIZEOF_WINT_T__ 4
3872 // MIPSN32BE: #define __SIZE_FMTX__ "X"
3873 // MIPSN32BE: #define __SIZE_FMTo__ "o"
3874 // MIPSN32BE: #define __SIZE_FMTu__ "u"
3875 // MIPSN32BE: #define __SIZE_FMTx__ "x"
3876 // MIPSN32BE: #define __SIZE_MAX__ 4294967295U
3877 // MIPSN32BE: #define __SIZE_TYPE__ unsigned int
3878 // MIPSN32BE: #define __SIZE_WIDTH__ 32
3879 // MIPSN32BE-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
3880 // MIPSN32BE: #define __STDC_HOSTED__ 0
3881 // MIPSN32BE: #define __STDC_UTF_16__ 1
3882 // MIPSN32BE: #define __STDC_UTF_32__ 1
3883 // MIPSN32BE-C: #define __STDC_VERSION__ 201112L
3884 // MIPSN32BE: #define __STDC__ 1
3885 // MIPSN32BE: #define __UINT16_C_SUFFIX__
3886 // MIPSN32BE: #define __UINT16_FMTX__ "hX"
3887 // MIPSN32BE: #define __UINT16_FMTo__ "ho"
3888 // MIPSN32BE: #define __UINT16_FMTu__ "hu"
3889 // MIPSN32BE: #define __UINT16_FMTx__ "hx"
3890 // MIPSN32BE: #define __UINT16_MAX__ 65535
3891 // MIPSN32BE: #define __UINT16_TYPE__ unsigned short
3892 // MIPSN32BE: #define __UINT32_C_SUFFIX__ U
3893 // MIPSN32BE: #define __UINT32_FMTX__ "X"
3894 // MIPSN32BE: #define __UINT32_FMTo__ "o"
3895 // MIPSN32BE: #define __UINT32_FMTu__ "u"
3896 // MIPSN32BE: #define __UINT32_FMTx__ "x"
3897 // MIPSN32BE: #define __UINT32_MAX__ 4294967295U
3898 // MIPSN32BE: #define __UINT32_TYPE__ unsigned int
3899 // MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
3900 // MIPSN32BE: #define __UINT64_FMTX__ "llX"
3901 // MIPSN32BE: #define __UINT64_FMTo__ "llo"
3902 // MIPSN32BE: #define __UINT64_FMTu__ "llu"
3903 // MIPSN32BE: #define __UINT64_FMTx__ "llx"
3904 // MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
3905 // MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
3906 // MIPSN32BE: #define __UINT8_C_SUFFIX__
3907 // MIPSN32BE: #define __UINT8_FMTX__ "hhX"
3908 // MIPSN32BE: #define __UINT8_FMTo__ "hho"
3909 // MIPSN32BE: #define __UINT8_FMTu__ "hhu"
3910 // MIPSN32BE: #define __UINT8_FMTx__ "hhx"
3911 // MIPSN32BE: #define __UINT8_MAX__ 255
3912 // MIPSN32BE: #define __UINT8_TYPE__ unsigned char
3913 // MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
3914 // MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
3915 // MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
3916 // MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
3917 // MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
3918 // MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
3919 // MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
3920 // MIPSN32BE: #define __UINTMAX_WIDTH__ 64
3921 // MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
3922 // MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
3923 // MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
3924 // MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
3925 // MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
3926 // MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
3927 // MIPSN32BE: #define __UINTPTR_WIDTH__ 32
3928 // MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
3929 // MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
3930 // MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
3931 // MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
3932 // MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
3933 // MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
3934 // MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
3935 // MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
3936 // MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
3937 // MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
3938 // MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
3939 // MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
3940 // MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
3941 // MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
3942 // MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
3943 // MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
3944 // MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3945 // MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
3946 // MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
3947 // MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
3948 // MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
3949 // MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
3950 // MIPSN32BE: #define __UINT_FAST8_MAX__ 255
3951 // MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
3952 // MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
3953 // MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
3954 // MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
3955 // MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
3956 // MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
3957 // MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
3958 // MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
3959 // MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
3960 // MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
3961 // MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
3962 // MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
3963 // MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
3964 // MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
3965 // MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
3966 // MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
3967 // MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
3968 // MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3969 // MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
3970 // MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
3971 // MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
3972 // MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
3973 // MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
3974 // MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
3975 // MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
3976 // MIPSN32BE: #define __USER_LABEL_PREFIX__
3977 // MIPSN32BE: #define __WCHAR_MAX__ 2147483647
3978 // MIPSN32BE: #define __WCHAR_TYPE__ int
3979 // MIPSN32BE: #define __WCHAR_WIDTH__ 32
3980 // MIPSN32BE: #define __WINT_TYPE__ int
3981 // MIPSN32BE: #define __WINT_WIDTH__ 32
3982 // MIPSN32BE: #define __clang__ 1
3983 // MIPSN32BE: #define __llvm__ 1
3984 // MIPSN32BE: #define __mips 64
3985 // MIPSN32BE: #define __mips64 1
3986 // MIPSN32BE: #define __mips64__ 1
3987 // MIPSN32BE: #define __mips__ 1
3988 // MIPSN32BE: #define __mips_abicalls 1
3989 // MIPSN32BE: #define __mips_fpr 64
3990 // MIPSN32BE: #define __mips_hard_float 1
3991 // MIPSN32BE: #define __mips_isa_rev 2
3992 // MIPSN32BE: #define __mips_n32 1
3993 // MIPSN32BE: #define _mips 1
3994 // MIPSN32BE: #define mips 1
3995 //
3996 // RUN: %clang_cc1 -E -dM -ffreestanding \
3997 // RUN:            -triple=mips64el-none-none -target-abi n32 < /dev/null \
3998 // RUN:   | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
3999 //
4000 // MIPSN32EL: #define MIPSEL 1
4001 // MIPSN32EL: #define _ABIN32 2
4002 // MIPSN32EL: #define _ILP32 1
4003 // MIPSN32EL: #define _MIPSEL 1
4004 // MIPSN32EL: #define _MIPS_ARCH "mips64r2"
4005 // MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
4006 // MIPSN32EL: #define _MIPS_FPSET 32
4007 // MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
4008 // MIPSN32EL: #define _MIPS_SIM _ABIN32
4009 // MIPSN32EL: #define _MIPS_SZINT 32
4010 // MIPSN32EL: #define _MIPS_SZLONG 32
4011 // MIPSN32EL: #define _MIPS_SZPTR 32
4012 // MIPSN32EL: #define __ATOMIC_ACQUIRE 2
4013 // MIPSN32EL: #define __ATOMIC_ACQ_REL 4
4014 // MIPSN32EL: #define __ATOMIC_CONSUME 1
4015 // MIPSN32EL: #define __ATOMIC_RELAXED 0
4016 // MIPSN32EL: #define __ATOMIC_RELEASE 3
4017 // MIPSN32EL: #define __ATOMIC_SEQ_CST 5
4018 // MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
4019 // MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
4020 // MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
4021 // MIPSN32EL: #define __CHAR_BIT__ 8
4022 // MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
4023 // MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4024 // MIPSN32EL: #define __DBL_DIG__ 15
4025 // MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
4026 // MIPSN32EL: #define __DBL_HAS_DENORM__ 1
4027 // MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
4028 // MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
4029 // MIPSN32EL: #define __DBL_MANT_DIG__ 53
4030 // MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
4031 // MIPSN32EL: #define __DBL_MAX_EXP__ 1024
4032 // MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
4033 // MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
4034 // MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
4035 // MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
4036 // MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
4037 // MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
4038 // MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
4039 // MIPSN32EL: #define __FLT_DIG__ 6
4040 // MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
4041 // MIPSN32EL: #define __FLT_EVAL_METHOD__ 0
4042 // MIPSN32EL: #define __FLT_HAS_DENORM__ 1
4043 // MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
4044 // MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
4045 // MIPSN32EL: #define __FLT_MANT_DIG__ 24
4046 // MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
4047 // MIPSN32EL: #define __FLT_MAX_EXP__ 128
4048 // MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
4049 // MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
4050 // MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
4051 // MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
4052 // MIPSN32EL: #define __FLT_RADIX__ 2
4053 // MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
4054 // MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
4055 // MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
4056 // MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
4057 // MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
4058 // MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
4059 // MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
4060 // MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
4061 // MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
4062 // MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
4063 // MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
4064 // MIPSN32EL: #define __GNUC_MINOR__ 2
4065 // MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
4066 // MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
4067 // MIPSN32EL: #define __GNUC__ 4
4068 // MIPSN32EL: #define __GXX_ABI_VERSION 1002
4069 // MIPSN32EL: #define __ILP32__ 1
4070 // MIPSN32EL: #define __INT16_C_SUFFIX__
4071 // MIPSN32EL: #define __INT16_FMTd__ "hd"
4072 // MIPSN32EL: #define __INT16_FMTi__ "hi"
4073 // MIPSN32EL: #define __INT16_MAX__ 32767
4074 // MIPSN32EL: #define __INT16_TYPE__ short
4075 // MIPSN32EL: #define __INT32_C_SUFFIX__
4076 // MIPSN32EL: #define __INT32_FMTd__ "d"
4077 // MIPSN32EL: #define __INT32_FMTi__ "i"
4078 // MIPSN32EL: #define __INT32_MAX__ 2147483647
4079 // MIPSN32EL: #define __INT32_TYPE__ int
4080 // MIPSN32EL: #define __INT64_C_SUFFIX__ LL
4081 // MIPSN32EL: #define __INT64_FMTd__ "lld"
4082 // MIPSN32EL: #define __INT64_FMTi__ "lli"
4083 // MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
4084 // MIPSN32EL: #define __INT64_TYPE__ long long int
4085 // MIPSN32EL: #define __INT8_C_SUFFIX__
4086 // MIPSN32EL: #define __INT8_FMTd__ "hhd"
4087 // MIPSN32EL: #define __INT8_FMTi__ "hhi"
4088 // MIPSN32EL: #define __INT8_MAX__ 127
4089 // MIPSN32EL: #define __INT8_TYPE__ signed char
4090 // MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
4091 // MIPSN32EL: #define __INTMAX_FMTd__ "lld"
4092 // MIPSN32EL: #define __INTMAX_FMTi__ "lli"
4093 // MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
4094 // MIPSN32EL: #define __INTMAX_TYPE__ long long int
4095 // MIPSN32EL: #define __INTMAX_WIDTH__ 64
4096 // MIPSN32EL: #define __INTPTR_FMTd__ "ld"
4097 // MIPSN32EL: #define __INTPTR_FMTi__ "li"
4098 // MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
4099 // MIPSN32EL: #define __INTPTR_TYPE__ long int
4100 // MIPSN32EL: #define __INTPTR_WIDTH__ 32
4101 // MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
4102 // MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
4103 // MIPSN32EL: #define __INT_FAST16_MAX__ 32767
4104 // MIPSN32EL: #define __INT_FAST16_TYPE__ short
4105 // MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
4106 // MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
4107 // MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
4108 // MIPSN32EL: #define __INT_FAST32_TYPE__ int
4109 // MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
4110 // MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
4111 // MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
4112 // MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
4113 // MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
4114 // MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
4115 // MIPSN32EL: #define __INT_FAST8_MAX__ 127
4116 // MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
4117 // MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
4118 // MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
4119 // MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
4120 // MIPSN32EL: #define __INT_LEAST16_TYPE__ short
4121 // MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
4122 // MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
4123 // MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
4124 // MIPSN32EL: #define __INT_LEAST32_TYPE__ int
4125 // MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
4126 // MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
4127 // MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
4128 // MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
4129 // MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
4130 // MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
4131 // MIPSN32EL: #define __INT_LEAST8_MAX__ 127
4132 // MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
4133 // MIPSN32EL: #define __INT_MAX__ 2147483647
4134 // MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4135 // MIPSN32EL: #define __LDBL_DIG__ 33
4136 // MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4137 // MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
4138 // MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
4139 // MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
4140 // MIPSN32EL: #define __LDBL_MANT_DIG__ 113
4141 // MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
4142 // MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
4143 // MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4144 // MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
4145 // MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
4146 // MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4147 // MIPSN32EL: #define __LITTLE_ENDIAN__ 1
4148 // MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
4149 // MIPSN32EL: #define __LONG_MAX__ 2147483647L
4150 // MIPSN32EL: #define __MIPSEL 1
4151 // MIPSN32EL: #define __MIPSEL__ 1
4152 // MIPSN32EL: #define __NO_INLINE__ 1
4153 // MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
4154 // MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
4155 // MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
4156 // MIPSN32EL: #define __POINTER_WIDTH__ 32
4157 // MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
4158 // MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
4159 // MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
4160 // MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
4161 // MIPSN32EL: #define __PTRDIFF_TYPE__ int
4162 // MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
4163 // MIPSN32EL: #define __REGISTER_PREFIX__
4164 // MIPSN32EL: #define __SCHAR_MAX__ 127
4165 // MIPSN32EL: #define __SHRT_MAX__ 32767
4166 // MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
4167 // MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
4168 // MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
4169 // MIPSN32EL: #define __SIZEOF_FLOAT__ 4
4170 // MIPSN32EL: #define __SIZEOF_INT__ 4
4171 // MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
4172 // MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
4173 // MIPSN32EL: #define __SIZEOF_LONG__ 4
4174 // MIPSN32EL: #define __SIZEOF_POINTER__ 4
4175 // MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
4176 // MIPSN32EL: #define __SIZEOF_SHORT__ 2
4177 // MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
4178 // MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
4179 // MIPSN32EL: #define __SIZEOF_WINT_T__ 4
4180 // MIPSN32EL: #define __SIZE_FMTX__ "X"
4181 // MIPSN32EL: #define __SIZE_FMTo__ "o"
4182 // MIPSN32EL: #define __SIZE_FMTu__ "u"
4183 // MIPSN32EL: #define __SIZE_FMTx__ "x"
4184 // MIPSN32EL: #define __SIZE_MAX__ 4294967295U
4185 // MIPSN32EL: #define __SIZE_TYPE__ unsigned int
4186 // MIPSN32EL: #define __SIZE_WIDTH__ 32
4187 // MIPSN32EL: #define __STDC_HOSTED__ 0
4188 // MIPSN32EL: #define __STDC_UTF_16__ 1
4189 // MIPSN32EL: #define __STDC_UTF_32__ 1
4190 // MIPSN32EL: #define __STDC_VERSION__ 201112L
4191 // MIPSN32EL: #define __STDC__ 1
4192 // MIPSN32EL: #define __UINT16_C_SUFFIX__
4193 // MIPSN32EL: #define __UINT16_FMTX__ "hX"
4194 // MIPSN32EL: #define __UINT16_FMTo__ "ho"
4195 // MIPSN32EL: #define __UINT16_FMTu__ "hu"
4196 // MIPSN32EL: #define __UINT16_FMTx__ "hx"
4197 // MIPSN32EL: #define __UINT16_MAX__ 65535
4198 // MIPSN32EL: #define __UINT16_TYPE__ unsigned short
4199 // MIPSN32EL: #define __UINT32_C_SUFFIX__ U
4200 // MIPSN32EL: #define __UINT32_FMTX__ "X"
4201 // MIPSN32EL: #define __UINT32_FMTo__ "o"
4202 // MIPSN32EL: #define __UINT32_FMTu__ "u"
4203 // MIPSN32EL: #define __UINT32_FMTx__ "x"
4204 // MIPSN32EL: #define __UINT32_MAX__ 4294967295U
4205 // MIPSN32EL: #define __UINT32_TYPE__ unsigned int
4206 // MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
4207 // MIPSN32EL: #define __UINT64_FMTX__ "llX"
4208 // MIPSN32EL: #define __UINT64_FMTo__ "llo"
4209 // MIPSN32EL: #define __UINT64_FMTu__ "llu"
4210 // MIPSN32EL: #define __UINT64_FMTx__ "llx"
4211 // MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
4212 // MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
4213 // MIPSN32EL: #define __UINT8_C_SUFFIX__
4214 // MIPSN32EL: #define __UINT8_FMTX__ "hhX"
4215 // MIPSN32EL: #define __UINT8_FMTo__ "hho"
4216 // MIPSN32EL: #define __UINT8_FMTu__ "hhu"
4217 // MIPSN32EL: #define __UINT8_FMTx__ "hhx"
4218 // MIPSN32EL: #define __UINT8_MAX__ 255
4219 // MIPSN32EL: #define __UINT8_TYPE__ unsigned char
4220 // MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
4221 // MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
4222 // MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
4223 // MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
4224 // MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
4225 // MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
4226 // MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
4227 // MIPSN32EL: #define __UINTMAX_WIDTH__ 64
4228 // MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
4229 // MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
4230 // MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
4231 // MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
4232 // MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
4233 // MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
4234 // MIPSN32EL: #define __UINTPTR_WIDTH__ 32
4235 // MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
4236 // MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
4237 // MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
4238 // MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
4239 // MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
4240 // MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
4241 // MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
4242 // MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
4243 // MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
4244 // MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
4245 // MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
4246 // MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
4247 // MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
4248 // MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
4249 // MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
4250 // MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
4251 // MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
4252 // MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
4253 // MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
4254 // MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
4255 // MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
4256 // MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
4257 // MIPSN32EL: #define __UINT_FAST8_MAX__ 255
4258 // MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
4259 // MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
4260 // MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
4261 // MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
4262 // MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
4263 // MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
4264 // MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
4265 // MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
4266 // MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
4267 // MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
4268 // MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
4269 // MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
4270 // MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
4271 // MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
4272 // MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
4273 // MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
4274 // MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
4275 // MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4276 // MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
4277 // MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
4278 // MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
4279 // MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
4280 // MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
4281 // MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
4282 // MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
4283 // MIPSN32EL: #define __USER_LABEL_PREFIX__
4284 // MIPSN32EL: #define __WCHAR_MAX__ 2147483647
4285 // MIPSN32EL: #define __WCHAR_TYPE__ int
4286 // MIPSN32EL: #define __WCHAR_WIDTH__ 32
4287 // MIPSN32EL: #define __WINT_TYPE__ int
4288 // MIPSN32EL: #define __WINT_WIDTH__ 32
4289 // MIPSN32EL: #define __clang__ 1
4290 // MIPSN32EL: #define __llvm__ 1
4291 // MIPSN32EL: #define __mips 64
4292 // MIPSN32EL: #define __mips64 1
4293 // MIPSN32EL: #define __mips64__ 1
4294 // MIPSN32EL: #define __mips__ 1
4295 // MIPSN32EL: #define __mips_abicalls 1
4296 // MIPSN32EL: #define __mips_fpr 64
4297 // MIPSN32EL: #define __mips_hard_float 1
4298 // MIPSN32EL: #define __mips_isa_rev 2
4299 // MIPSN32EL: #define __mips_n32 1
4300 // MIPSN32EL: #define _mips 1
4301 // MIPSN32EL: #define mips 1
4302 //
4303 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE %s
4304 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE -check-prefix MIPS64BE-CXX %s
4305 //
4306 // MIPS64BE:#define MIPSEB 1
4307 // MIPS64BE:#define _ABI64 3
4308 // MIPS64BE:#define _LP64 1
4309 // MIPS64BE:#define _MIPSEB 1
4310 // MIPS64BE:#define _MIPS_ARCH "mips64r2"
4311 // MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
4312 // MIPS64BE:#define _MIPS_FPSET 32
4313 // MIPS64BE:#define _MIPS_SIM _ABI64
4314 // MIPS64BE:#define _MIPS_SZINT 32
4315 // MIPS64BE:#define _MIPS_SZLONG 64
4316 // MIPS64BE:#define _MIPS_SZPTR 64
4317 // MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
4318 // MIPS64BE:#define __BIG_ENDIAN__ 1
4319 // MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
4320 // MIPS64BE:#define __CHAR16_TYPE__ unsigned short
4321 // MIPS64BE:#define __CHAR32_TYPE__ unsigned int
4322 // MIPS64BE:#define __CHAR_BIT__ 8
4323 // MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
4324 // MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4325 // MIPS64BE:#define __DBL_DIG__ 15
4326 // MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
4327 // MIPS64BE:#define __DBL_HAS_DENORM__ 1
4328 // MIPS64BE:#define __DBL_HAS_INFINITY__ 1
4329 // MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
4330 // MIPS64BE:#define __DBL_MANT_DIG__ 53
4331 // MIPS64BE:#define __DBL_MAX_10_EXP__ 308
4332 // MIPS64BE:#define __DBL_MAX_EXP__ 1024
4333 // MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
4334 // MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
4335 // MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
4336 // MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
4337 // MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
4338 // MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4339 // MIPS64BE:#define __FLT_DIG__ 6
4340 // MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
4341 // MIPS64BE:#define __FLT_EVAL_METHOD__ 0
4342 // MIPS64BE:#define __FLT_HAS_DENORM__ 1
4343 // MIPS64BE:#define __FLT_HAS_INFINITY__ 1
4344 // MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
4345 // MIPS64BE:#define __FLT_MANT_DIG__ 24
4346 // MIPS64BE:#define __FLT_MAX_10_EXP__ 38
4347 // MIPS64BE:#define __FLT_MAX_EXP__ 128
4348 // MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
4349 // MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
4350 // MIPS64BE:#define __FLT_MIN_EXP__ (-125)
4351 // MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
4352 // MIPS64BE:#define __FLT_RADIX__ 2
4353 // MIPS64BE:#define __INT16_C_SUFFIX__
4354 // MIPS64BE:#define __INT16_FMTd__ "hd"
4355 // MIPS64BE:#define __INT16_FMTi__ "hi"
4356 // MIPS64BE:#define __INT16_MAX__ 32767
4357 // MIPS64BE:#define __INT16_TYPE__ short
4358 // MIPS64BE:#define __INT32_C_SUFFIX__
4359 // MIPS64BE:#define __INT32_FMTd__ "d"
4360 // MIPS64BE:#define __INT32_FMTi__ "i"
4361 // MIPS64BE:#define __INT32_MAX__ 2147483647
4362 // MIPS64BE:#define __INT32_TYPE__ int
4363 // MIPS64BE:#define __INT64_C_SUFFIX__ L
4364 // MIPS64BE:#define __INT64_FMTd__ "ld"
4365 // MIPS64BE:#define __INT64_FMTi__ "li"
4366 // MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
4367 // MIPS64BE:#define __INT64_TYPE__ long int
4368 // MIPS64BE:#define __INT8_C_SUFFIX__
4369 // MIPS64BE:#define __INT8_FMTd__ "hhd"
4370 // MIPS64BE:#define __INT8_FMTi__ "hhi"
4371 // MIPS64BE:#define __INT8_MAX__ 127
4372 // MIPS64BE:#define __INT8_TYPE__ signed char
4373 // MIPS64BE:#define __INTMAX_C_SUFFIX__ L
4374 // MIPS64BE:#define __INTMAX_FMTd__ "ld"
4375 // MIPS64BE:#define __INTMAX_FMTi__ "li"
4376 // MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
4377 // MIPS64BE:#define __INTMAX_TYPE__ long int
4378 // MIPS64BE:#define __INTMAX_WIDTH__ 64
4379 // MIPS64BE:#define __INTPTR_FMTd__ "ld"
4380 // MIPS64BE:#define __INTPTR_FMTi__ "li"
4381 // MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
4382 // MIPS64BE:#define __INTPTR_TYPE__ long int
4383 // MIPS64BE:#define __INTPTR_WIDTH__ 64
4384 // MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
4385 // MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
4386 // MIPS64BE:#define __INT_FAST16_MAX__ 32767
4387 // MIPS64BE:#define __INT_FAST16_TYPE__ short
4388 // MIPS64BE:#define __INT_FAST32_FMTd__ "d"
4389 // MIPS64BE:#define __INT_FAST32_FMTi__ "i"
4390 // MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
4391 // MIPS64BE:#define __INT_FAST32_TYPE__ int
4392 // MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
4393 // MIPS64BE:#define __INT_FAST64_FMTi__ "li"
4394 // MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
4395 // MIPS64BE:#define __INT_FAST64_TYPE__ long int
4396 // MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
4397 // MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
4398 // MIPS64BE:#define __INT_FAST8_MAX__ 127
4399 // MIPS64BE:#define __INT_FAST8_TYPE__ signed char
4400 // MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
4401 // MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
4402 // MIPS64BE:#define __INT_LEAST16_MAX__ 32767
4403 // MIPS64BE:#define __INT_LEAST16_TYPE__ short
4404 // MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
4405 // MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
4406 // MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
4407 // MIPS64BE:#define __INT_LEAST32_TYPE__ int
4408 // MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
4409 // MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
4410 // MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
4411 // MIPS64BE:#define __INT_LEAST64_TYPE__ long int
4412 // MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
4413 // MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
4414 // MIPS64BE:#define __INT_LEAST8_MAX__ 127
4415 // MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
4416 // MIPS64BE:#define __INT_MAX__ 2147483647
4417 // MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4418 // MIPS64BE:#define __LDBL_DIG__ 33
4419 // MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4420 // MIPS64BE:#define __LDBL_HAS_DENORM__ 1
4421 // MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
4422 // MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
4423 // MIPS64BE:#define __LDBL_MANT_DIG__ 113
4424 // MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
4425 // MIPS64BE:#define __LDBL_MAX_EXP__ 16384
4426 // MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4427 // MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
4428 // MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
4429 // MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4430 // MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
4431 // MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
4432 // MIPS64BE:#define __LP64__ 1
4433 // MIPS64BE:#define __MIPSEB 1
4434 // MIPS64BE:#define __MIPSEB__ 1
4435 // MIPS64BE:#define __POINTER_WIDTH__ 64
4436 // MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
4437 // MIPS64BE:#define __PTRDIFF_TYPE__ long int
4438 // MIPS64BE:#define __PTRDIFF_WIDTH__ 64
4439 // MIPS64BE:#define __REGISTER_PREFIX__
4440 // MIPS64BE:#define __SCHAR_MAX__ 127
4441 // MIPS64BE:#define __SHRT_MAX__ 32767
4442 // MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
4443 // MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
4444 // MIPS64BE:#define __SIZEOF_DOUBLE__ 8
4445 // MIPS64BE:#define __SIZEOF_FLOAT__ 4
4446 // MIPS64BE:#define __SIZEOF_INT128__ 16
4447 // MIPS64BE:#define __SIZEOF_INT__ 4
4448 // MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
4449 // MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
4450 // MIPS64BE:#define __SIZEOF_LONG__ 8
4451 // MIPS64BE:#define __SIZEOF_POINTER__ 8
4452 // MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
4453 // MIPS64BE:#define __SIZEOF_SHORT__ 2
4454 // MIPS64BE:#define __SIZEOF_SIZE_T__ 8
4455 // MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
4456 // MIPS64BE:#define __SIZEOF_WINT_T__ 4
4457 // MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
4458 // MIPS64BE:#define __SIZE_TYPE__ long unsigned int
4459 // MIPS64BE:#define __SIZE_WIDTH__ 64
4460 // MIPS64BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
4461 // MIPS64BE:#define __UINT16_C_SUFFIX__
4462 // MIPS64BE:#define __UINT16_MAX__ 65535
4463 // MIPS64BE:#define __UINT16_TYPE__ unsigned short
4464 // MIPS64BE:#define __UINT32_C_SUFFIX__ U
4465 // MIPS64BE:#define __UINT32_MAX__ 4294967295U
4466 // MIPS64BE:#define __UINT32_TYPE__ unsigned int
4467 // MIPS64BE:#define __UINT64_C_SUFFIX__ UL
4468 // MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
4469 // MIPS64BE:#define __UINT64_TYPE__ long unsigned int
4470 // MIPS64BE:#define __UINT8_C_SUFFIX__
4471 // MIPS64BE:#define __UINT8_MAX__ 255
4472 // MIPS64BE:#define __UINT8_TYPE__ unsigned char
4473 // MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
4474 // MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
4475 // MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
4476 // MIPS64BE:#define __UINTMAX_WIDTH__ 64
4477 // MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
4478 // MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
4479 // MIPS64BE:#define __UINTPTR_WIDTH__ 64
4480 // MIPS64BE:#define __UINT_FAST16_MAX__ 65535
4481 // MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
4482 // MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
4483 // MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
4484 // MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4485 // MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
4486 // MIPS64BE:#define __UINT_FAST8_MAX__ 255
4487 // MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
4488 // MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
4489 // MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
4490 // MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
4491 // MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
4492 // MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4493 // MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
4494 // MIPS64BE:#define __UINT_LEAST8_MAX__ 255
4495 // MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
4496 // MIPS64BE:#define __USER_LABEL_PREFIX__
4497 // MIPS64BE:#define __WCHAR_MAX__ 2147483647
4498 // MIPS64BE:#define __WCHAR_TYPE__ int
4499 // MIPS64BE:#define __WCHAR_WIDTH__ 32
4500 // MIPS64BE:#define __WINT_TYPE__ int
4501 // MIPS64BE:#define __WINT_WIDTH__ 32
4502 // MIPS64BE:#define __clang__ 1
4503 // MIPS64BE:#define __llvm__ 1
4504 // MIPS64BE:#define __mips 64
4505 // MIPS64BE:#define __mips64 1
4506 // MIPS64BE:#define __mips64__ 1
4507 // MIPS64BE:#define __mips__ 1
4508 // MIPS64BE:#define __mips_abicalls 1
4509 // MIPS64BE:#define __mips_fpr 64
4510 // MIPS64BE:#define __mips_hard_float 1
4511 // MIPS64BE:#define __mips_n64 1
4512 // MIPS64BE:#define _mips 1
4513 // MIPS64BE:#define mips 1
4514 //
4515 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64EL %s
4516 //
4517 // MIPS64EL:#define MIPSEL 1
4518 // MIPS64EL:#define _ABI64 3
4519 // MIPS64EL:#define _LP64 1
4520 // MIPS64EL:#define _MIPSEL 1
4521 // MIPS64EL:#define _MIPS_ARCH "mips64r2"
4522 // MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
4523 // MIPS64EL:#define _MIPS_FPSET 32
4524 // MIPS64EL:#define _MIPS_SIM _ABI64
4525 // MIPS64EL:#define _MIPS_SZINT 32
4526 // MIPS64EL:#define _MIPS_SZLONG 64
4527 // MIPS64EL:#define _MIPS_SZPTR 64
4528 // MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
4529 // MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
4530 // MIPS64EL:#define __CHAR16_TYPE__ unsigned short
4531 // MIPS64EL:#define __CHAR32_TYPE__ unsigned int
4532 // MIPS64EL:#define __CHAR_BIT__ 8
4533 // MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
4534 // MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4535 // MIPS64EL:#define __DBL_DIG__ 15
4536 // MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
4537 // MIPS64EL:#define __DBL_HAS_DENORM__ 1
4538 // MIPS64EL:#define __DBL_HAS_INFINITY__ 1
4539 // MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
4540 // MIPS64EL:#define __DBL_MANT_DIG__ 53
4541 // MIPS64EL:#define __DBL_MAX_10_EXP__ 308
4542 // MIPS64EL:#define __DBL_MAX_EXP__ 1024
4543 // MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
4544 // MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
4545 // MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
4546 // MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
4547 // MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
4548 // MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4549 // MIPS64EL:#define __FLT_DIG__ 6
4550 // MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
4551 // MIPS64EL:#define __FLT_EVAL_METHOD__ 0
4552 // MIPS64EL:#define __FLT_HAS_DENORM__ 1
4553 // MIPS64EL:#define __FLT_HAS_INFINITY__ 1
4554 // MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
4555 // MIPS64EL:#define __FLT_MANT_DIG__ 24
4556 // MIPS64EL:#define __FLT_MAX_10_EXP__ 38
4557 // MIPS64EL:#define __FLT_MAX_EXP__ 128
4558 // MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
4559 // MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
4560 // MIPS64EL:#define __FLT_MIN_EXP__ (-125)
4561 // MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
4562 // MIPS64EL:#define __FLT_RADIX__ 2
4563 // MIPS64EL:#define __INT16_C_SUFFIX__
4564 // MIPS64EL:#define __INT16_FMTd__ "hd"
4565 // MIPS64EL:#define __INT16_FMTi__ "hi"
4566 // MIPS64EL:#define __INT16_MAX__ 32767
4567 // MIPS64EL:#define __INT16_TYPE__ short
4568 // MIPS64EL:#define __INT32_C_SUFFIX__
4569 // MIPS64EL:#define __INT32_FMTd__ "d"
4570 // MIPS64EL:#define __INT32_FMTi__ "i"
4571 // MIPS64EL:#define __INT32_MAX__ 2147483647
4572 // MIPS64EL:#define __INT32_TYPE__ int
4573 // MIPS64EL:#define __INT64_C_SUFFIX__ L
4574 // MIPS64EL:#define __INT64_FMTd__ "ld"
4575 // MIPS64EL:#define __INT64_FMTi__ "li"
4576 // MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
4577 // MIPS64EL:#define __INT64_TYPE__ long int
4578 // MIPS64EL:#define __INT8_C_SUFFIX__
4579 // MIPS64EL:#define __INT8_FMTd__ "hhd"
4580 // MIPS64EL:#define __INT8_FMTi__ "hhi"
4581 // MIPS64EL:#define __INT8_MAX__ 127
4582 // MIPS64EL:#define __INT8_TYPE__ signed char
4583 // MIPS64EL:#define __INTMAX_C_SUFFIX__ L
4584 // MIPS64EL:#define __INTMAX_FMTd__ "ld"
4585 // MIPS64EL:#define __INTMAX_FMTi__ "li"
4586 // MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
4587 // MIPS64EL:#define __INTMAX_TYPE__ long int
4588 // MIPS64EL:#define __INTMAX_WIDTH__ 64
4589 // MIPS64EL:#define __INTPTR_FMTd__ "ld"
4590 // MIPS64EL:#define __INTPTR_FMTi__ "li"
4591 // MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
4592 // MIPS64EL:#define __INTPTR_TYPE__ long int
4593 // MIPS64EL:#define __INTPTR_WIDTH__ 64
4594 // MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
4595 // MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
4596 // MIPS64EL:#define __INT_FAST16_MAX__ 32767
4597 // MIPS64EL:#define __INT_FAST16_TYPE__ short
4598 // MIPS64EL:#define __INT_FAST32_FMTd__ "d"
4599 // MIPS64EL:#define __INT_FAST32_FMTi__ "i"
4600 // MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
4601 // MIPS64EL:#define __INT_FAST32_TYPE__ int
4602 // MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
4603 // MIPS64EL:#define __INT_FAST64_FMTi__ "li"
4604 // MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
4605 // MIPS64EL:#define __INT_FAST64_TYPE__ long int
4606 // MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
4607 // MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
4608 // MIPS64EL:#define __INT_FAST8_MAX__ 127
4609 // MIPS64EL:#define __INT_FAST8_TYPE__ signed char
4610 // MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
4611 // MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
4612 // MIPS64EL:#define __INT_LEAST16_MAX__ 32767
4613 // MIPS64EL:#define __INT_LEAST16_TYPE__ short
4614 // MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
4615 // MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
4616 // MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
4617 // MIPS64EL:#define __INT_LEAST32_TYPE__ int
4618 // MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
4619 // MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
4620 // MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
4621 // MIPS64EL:#define __INT_LEAST64_TYPE__ long int
4622 // MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
4623 // MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
4624 // MIPS64EL:#define __INT_LEAST8_MAX__ 127
4625 // MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
4626 // MIPS64EL:#define __INT_MAX__ 2147483647
4627 // MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4628 // MIPS64EL:#define __LDBL_DIG__ 33
4629 // MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4630 // MIPS64EL:#define __LDBL_HAS_DENORM__ 1
4631 // MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
4632 // MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
4633 // MIPS64EL:#define __LDBL_MANT_DIG__ 113
4634 // MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
4635 // MIPS64EL:#define __LDBL_MAX_EXP__ 16384
4636 // MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4637 // MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
4638 // MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
4639 // MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4640 // MIPS64EL:#define __LITTLE_ENDIAN__ 1
4641 // MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
4642 // MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
4643 // MIPS64EL:#define __LP64__ 1
4644 // MIPS64EL:#define __MIPSEL 1
4645 // MIPS64EL:#define __MIPSEL__ 1
4646 // MIPS64EL:#define __POINTER_WIDTH__ 64
4647 // MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
4648 // MIPS64EL:#define __PTRDIFF_TYPE__ long int
4649 // MIPS64EL:#define __PTRDIFF_WIDTH__ 64
4650 // MIPS64EL:#define __REGISTER_PREFIX__
4651 // MIPS64EL:#define __SCHAR_MAX__ 127
4652 // MIPS64EL:#define __SHRT_MAX__ 32767
4653 // MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
4654 // MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
4655 // MIPS64EL:#define __SIZEOF_DOUBLE__ 8
4656 // MIPS64EL:#define __SIZEOF_FLOAT__ 4
4657 // MIPS64EL:#define __SIZEOF_INT128__ 16
4658 // MIPS64EL:#define __SIZEOF_INT__ 4
4659 // MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
4660 // MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
4661 // MIPS64EL:#define __SIZEOF_LONG__ 8
4662 // MIPS64EL:#define __SIZEOF_POINTER__ 8
4663 // MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
4664 // MIPS64EL:#define __SIZEOF_SHORT__ 2
4665 // MIPS64EL:#define __SIZEOF_SIZE_T__ 8
4666 // MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
4667 // MIPS64EL:#define __SIZEOF_WINT_T__ 4
4668 // MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
4669 // MIPS64EL:#define __SIZE_TYPE__ long unsigned int
4670 // MIPS64EL:#define __SIZE_WIDTH__ 64
4671 // MIPS64EL:#define __UINT16_C_SUFFIX__
4672 // MIPS64EL:#define __UINT16_MAX__ 65535
4673 // MIPS64EL:#define __UINT16_TYPE__ unsigned short
4674 // MIPS64EL:#define __UINT32_C_SUFFIX__ U
4675 // MIPS64EL:#define __UINT32_MAX__ 4294967295U
4676 // MIPS64EL:#define __UINT32_TYPE__ unsigned int
4677 // MIPS64EL:#define __UINT64_C_SUFFIX__ UL
4678 // MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
4679 // MIPS64EL:#define __UINT64_TYPE__ long unsigned int
4680 // MIPS64EL:#define __UINT8_C_SUFFIX__
4681 // MIPS64EL:#define __UINT8_MAX__ 255
4682 // MIPS64EL:#define __UINT8_TYPE__ unsigned char
4683 // MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
4684 // MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
4685 // MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
4686 // MIPS64EL:#define __UINTMAX_WIDTH__ 64
4687 // MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
4688 // MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
4689 // MIPS64EL:#define __UINTPTR_WIDTH__ 64
4690 // MIPS64EL:#define __UINT_FAST16_MAX__ 65535
4691 // MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
4692 // MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
4693 // MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
4694 // MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4695 // MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
4696 // MIPS64EL:#define __UINT_FAST8_MAX__ 255
4697 // MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
4698 // MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
4699 // MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
4700 // MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
4701 // MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
4702 // MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4703 // MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
4704 // MIPS64EL:#define __UINT_LEAST8_MAX__ 255
4705 // MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
4706 // MIPS64EL:#define __USER_LABEL_PREFIX__
4707 // MIPS64EL:#define __WCHAR_MAX__ 2147483647
4708 // MIPS64EL:#define __WCHAR_TYPE__ int
4709 // MIPS64EL:#define __WCHAR_WIDTH__ 32
4710 // MIPS64EL:#define __WINT_TYPE__ int
4711 // MIPS64EL:#define __WINT_WIDTH__ 32
4712 // MIPS64EL:#define __clang__ 1
4713 // MIPS64EL:#define __llvm__ 1
4714 // MIPS64EL:#define __mips 64
4715 // MIPS64EL:#define __mips64 1
4716 // MIPS64EL:#define __mips64__ 1
4717 // MIPS64EL:#define __mips__ 1
4718 // MIPS64EL:#define __mips_abicalls 1
4719 // MIPS64EL:#define __mips_fpr 64
4720 // MIPS64EL:#define __mips_hard_float 1
4721 // MIPS64EL:#define __mips_n64 1
4722 // MIPS64EL:#define _mips 1
4723 // MIPS64EL:#define mips 1
4724 //
4725 // Check MIPS arch and isa macros
4726 //
4727 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4728 // RUN:            < /dev/null \
4729 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
4730 //
4731 // MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
4732 // MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
4733 // MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4734 // MIPS-ARCH-DEF32:#define __mips_isa_rev 2
4735 //
4736 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
4737 // RUN:            -target-cpu mips32 < /dev/null \
4738 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
4739 //
4740 // MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
4741 // MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
4742 // MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4743 // MIPS-ARCH-32:#define __mips_isa_rev 1
4744 //
4745 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4746 // RUN:            -target-cpu mips32r2 < /dev/null \
4747 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
4748 //
4749 // MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
4750 // MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
4751 // MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
4752 // MIPS-ARCH-32R2:#define __mips_isa_rev 2
4753 //
4754 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4755 // RUN:            -target-cpu mips32r3 < /dev/null \
4756 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
4757 //
4758 // MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
4759 // MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
4760 // MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
4761 // MIPS-ARCH-32R3:#define __mips_isa_rev 3
4762 //
4763 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4764 // RUN:            -target-cpu mips32r5 < /dev/null \
4765 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
4766 //
4767 // MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
4768 // MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
4769 // MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
4770 // MIPS-ARCH-32R5:#define __mips_isa_rev 5
4771 //
4772 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4773 // RUN:            -target-cpu mips32r6 < /dev/null \
4774 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
4775 //
4776 // MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
4777 // MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
4778 // MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
4779 // MIPS-ARCH-32R6:#define __mips_isa_rev 6
4780 //
4781 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4782 // RUN:            < /dev/null \
4783 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
4784 //
4785 // MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
4786 // MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
4787 // MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4788 // MIPS-ARCH-DEF64:#define __mips_isa_rev 2
4789 //
4790 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4791 // RUN:            -target-cpu mips64 < /dev/null \
4792 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
4793 //
4794 // MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
4795 // MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
4796 // MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4797 // MIPS-ARCH-64:#define __mips_isa_rev 1
4798 //
4799 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4800 // RUN:            -target-cpu mips64r2 < /dev/null \
4801 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
4802 //
4803 // MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
4804 // MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
4805 // MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
4806 // MIPS-ARCH-64R2:#define __mips_isa_rev 2
4807 //
4808 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4809 // RUN:            -target-cpu mips64r3 < /dev/null \
4810 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
4811 //
4812 // MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
4813 // MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
4814 // MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
4815 // MIPS-ARCH-64R3:#define __mips_isa_rev 3
4816 //
4817 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4818 // RUN:            -target-cpu mips64r5 < /dev/null \
4819 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
4820 //
4821 // MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
4822 // MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
4823 // MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
4824 // MIPS-ARCH-64R5:#define __mips_isa_rev 5
4825 //
4826 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4827 // RUN:            -target-cpu mips64r6 < /dev/null \
4828 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
4829 //
4830 // MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
4831 // MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
4832 // MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
4833 // MIPS-ARCH-64R6:#define __mips_isa_rev 6
4834 //
4835 // Check MIPS float ABI macros
4836 //
4837 // RUN: %clang_cc1 -E -dM -ffreestanding \
4838 // RUN:   -triple=mips-none-none < /dev/null \
4839 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
4840 // MIPS-FABI-HARD:#define __mips_hard_float 1
4841 //
4842 // RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
4843 // RUN:   -triple=mips-none-none < /dev/null \
4844 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
4845 // MIPS-FABI-SOFT:#define __mips_soft_float 1
4846 //
4847 // RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
4848 // RUN:   -triple=mips-none-none < /dev/null \
4849 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
4850 // MIPS-FABI-SINGLE:#define __mips_hard_float 1
4851 // MIPS-FABI-SINGLE:#define __mips_single_float 1
4852 //
4853 // RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
4854 // RUN:   -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
4855 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
4856 // MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
4857 // MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
4858 //
4859 // Check MIPS features macros
4860 //
4861 // RUN: %clang_cc1 -target-feature +mips16 \
4862 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4863 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS16 %s
4864 // MIPS16:#define __mips16 1
4865 //
4866 // RUN: %clang_cc1 -target-feature -mips16 \
4867 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4868 // RUN:   | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
4869 // NOMIPS16-NOT:#define __mips16 1
4870 //
4871 // RUN: %clang_cc1 -target-feature +micromips \
4872 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4873 // RUN:   | FileCheck -match-full-lines -check-prefix MICROMIPS %s
4874 // MICROMIPS:#define __mips_micromips 1
4875 //
4876 // RUN: %clang_cc1 -target-feature -micromips \
4877 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4878 // RUN:   | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
4879 // NOMICROMIPS-NOT:#define __mips_micromips 1
4880 //
4881 // RUN: %clang_cc1 -target-feature +dsp \
4882 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4883 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
4884 // MIPS-DSP:#define __mips_dsp 1
4885 // MIPS-DSP:#define __mips_dsp_rev 1
4886 // MIPS-DSP-NOT:#define __mips_dspr2 1
4887 //
4888 // RUN: %clang_cc1 -target-feature +dspr2 \
4889 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4890 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
4891 // MIPS-DSPR2:#define __mips_dsp 1
4892 // MIPS-DSPR2:#define __mips_dsp_rev 2
4893 // MIPS-DSPR2:#define __mips_dspr2 1
4894 //
4895 // RUN: %clang_cc1 -target-feature +msa \
4896 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4897 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-MSA %s
4898 // MIPS-MSA:#define __mips_msa 1
4899 //
4900 // RUN: %clang_cc1 -target-feature +nomadd4 \
4901 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4902 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-NOMADD4 %s
4903 // MIPS-NOMADD4:#define __mips_no_madd4 1
4904 //
4905 // RUN: %clang_cc1 \
4906 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4907 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-MADD4 %s
4908 // MIPS-MADD4-NOT:#define __mips_no_madd4 1
4909 //
4910 // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
4911 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4912 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
4913 // MIPS-NAN2008:#define __mips_nan2008 1
4914 //
4915 // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
4916 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4917 // RUN:   | FileCheck -match-full-lines -check-prefix NOMIPS-NAN2008 %s
4918 // NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
4919 //
4920 // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +abs2008 \
4921 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4922 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ABS2008 %s
4923 // MIPS-ABS2008:#define __mips_abs2008 1
4924 //
4925 // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -abs2008 \
4926 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4927 // RUN:   | FileCheck -match-full-lines -check-prefix NOMIPS-ABS2008 %s
4928 // NOMIPS-ABS2008-NOT:#define __mips_abs2008 1
4929 //
4930 // RUN: %clang_cc1  \
4931 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4932 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-NOFP %s
4933 // MIPS32-NOFP:#define __mips_fpr 0
4934 //
4935 // RUN: %clang_cc1 -target-feature +fpxx \
4936 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4937 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-MFPXX %s
4938 // MIPS32-MFPXX:#define __mips_fpr 0
4939 //
4940 // RUN: %clang_cc1 -target-cpu mips32r6 -target-feature +fpxx \
4941 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4942 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32R6-MFPXX %s
4943 // MIPS32R6-MFPXX:#define __mips_fpr 0
4944 //
4945 // RUN: %clang_cc1  \
4946 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
4947 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-NOFP %s
4948 // MIPS64-NOFP:#define __mips_fpr 64
4949 //
4950 // RUN: not %clang_cc1 -target-feature -fp64 \
4951 // RUN:   -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
4952 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-MFP32 %s
4953 // MIPS64-MFP32:error: option '-mfpxx' cannot be specified with 'mips64r2'
4954 //
4955 // RUN: not %clang_cc1 -target-feature +fpxx \
4956 // RUN:   -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
4957 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-MFPXX %s
4958 // MIPS64-MFPXX:error: '-mfpxx' can only be used with the 'o32' ABI
4959 //
4960 // RUN: not %clang_cc1 -target-cpu mips64r6 -target-feature +fpxx \
4961 // RUN:   -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
4962 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64R6-MFPXX %s
4963 // MIPS64R6-MFPXX:error: '-mfpxx' can only be used with the 'o32' ABI
4964 //
4965 // RUN: %clang_cc1 -target-feature -fp64 \
4966 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4967 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-MFP32 %s
4968 // MIPS32-MFP32:#define _MIPS_FPSET 16
4969 // MIPS32-MFP32:#define __mips_fpr 32
4970 //
4971 // RUN: %clang_cc1 -target-feature +fp64 \
4972 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4973 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
4974 // MIPS32-MFP64:#define _MIPS_FPSET 32
4975 // MIPS32-MFP64:#define __mips_fpr 64
4976 //
4977 // RUN: %clang_cc1 -target-feature +single-float \
4978 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4979 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
4980 // MIPS32-MFP32SF:#define _MIPS_FPSET 32
4981 // MIPS32-MFP32SF:#define __mips_fpr 0
4982 //
4983 // RUN: %clang_cc1 -target-feature +fp64 \
4984 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
4985 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
4986 // MIPS64-MFP64:#define _MIPS_FPSET 32
4987 // MIPS64-MFP64:#define __mips_fpr 64
4988 //
4989 // RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
4990 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
4991 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
4992 // MIPS64-NOMFP64:#define _MIPS_FPSET 32
4993 // MIPS64-NOMFP64:#define __mips_fpr 32
4994 //
4995 // RUN: %clang_cc1 -target-cpu mips32r6 \
4996 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
4997 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
4998 // RUN: %clang_cc1 -target-cpu mips64r6 \
4999 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
5000 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
5001 // MIPS-XXR6:#define _MIPS_FPSET 32
5002 // MIPS-XXR6:#define __mips_fpr 64
5003 // MIPS-XXR6:#define __mips_nan2008 1
5004 //
5005 // RUN: %clang_cc1 -target-cpu mips32 \
5006 // RUN:   -E -dM -triple=mips-unknown-netbsd -mrelocation-model pic < /dev/null \
5007 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-NETBSD %s
5008 // MIPS-ABICALLS-NETBSD-NOT: #define __ABICALLS__ 1
5009 // MIPS-ABICALLS-NETBSD: #define __mips_abicalls 1
5010 //
5011 // RUN: %clang_cc1 -target-cpu mips64 \
5012 // RUN:   -E -dM -triple=mips64-unknown-netbsd -mrelocation-model pic < \
5013 // RUN:   /dev/null | FileCheck -match-full-lines \
5014 // RUN:   -check-prefix MIPS-ABICALLS-NETBSD64 %s
5015 // MIPS-ABICALLS-NETBSD64-NOT: #define __ABICALLS__ 1
5016 // MIPS-ABICALLS-NETBSD64: #define __mips_abicalls 1
5017 //
5018 // RUN: %clang_cc1 -target-cpu mips32 \
5019 // RUN:   -E -dM -triple=mips-unknown-freebsd -mrelocation-model pic < /dev/null \
5020 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-FREEBSD %s
5021 // MIPS-ABICALLS-FREEBSD: #define __ABICALLS__ 1
5022 // MIPS-ABICALLS-FREEBSD: #define __mips_abicalls 1
5023 //
5024 // RUN: %clang_cc1 -target-cpu mips64 \
5025 // RUN:   -E -dM -triple=mips64-unknown-freebsd -mrelocation-model pic < \
5026 // RUN:   /dev/null | FileCheck -match-full-lines \
5027 // RUN:   -check-prefix MIPS-ABICALLS-FREEBSD64 %s
5028 // MIPS-ABICALLS-FREEBSD64: #define __ABICALLS__ 1
5029 // MIPS-ABICALLS-FREEBSD64: #define __mips_abicalls 1
5030 //
5031 // RUN: %clang_cc1 -target-cpu mips32 \
5032 // RUN:   -E -dM -triple=mips-unknown-openbsd -mrelocation-model pic < /dev/null \
5033 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-OPENBSD %s
5034 // MIPS-ABICALLS-OPENBSD: #define __ABICALLS__ 1
5035 // MIPS-ABICALLS-OPENBSD: #define __mips_abicalls 1
5036 //
5037 // RUN: %clang_cc1 -target-cpu mips64 \
5038 // RUN:   -E -dM -triple=mips64-unknown-openbsd -mrelocation-model pic < \
5039 // RUN:   /dev/null | FileCheck -match-full-lines \
5040 // RUN:   -check-prefix MIPS-ABICALLS-OPENBSD64 %s
5041 // MIPS-ABICALLS-OPENBSD64: #define __ABICALLS__ 1
5042 // MIPS-ABICALLS-OPENBSD64: #define __mips_abicalls 1
5043 //
5044 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MSP430 %s
5045 // 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
5046 //
5047 // MSP430:#define MSP430 1
5048 // MSP430-NOT:#define _LP64
5049 // MSP430:#define __BIGGEST_ALIGNMENT__ 2
5050 // MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5051 // MSP430:#define __CHAR16_TYPE__ unsigned short
5052 // MSP430:#define __CHAR32_TYPE__ unsigned int
5053 // MSP430:#define __CHAR_BIT__ 8
5054 // MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5055 // MSP430:#define __DBL_DIG__ 15
5056 // MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
5057 // MSP430:#define __DBL_HAS_DENORM__ 1
5058 // MSP430:#define __DBL_HAS_INFINITY__ 1
5059 // MSP430:#define __DBL_HAS_QUIET_NAN__ 1
5060 // MSP430:#define __DBL_MANT_DIG__ 53
5061 // MSP430:#define __DBL_MAX_10_EXP__ 308
5062 // MSP430:#define __DBL_MAX_EXP__ 1024
5063 // MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
5064 // MSP430:#define __DBL_MIN_10_EXP__ (-307)
5065 // MSP430:#define __DBL_MIN_EXP__ (-1021)
5066 // MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
5067 // MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
5068 // MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5069 // MSP430:#define __FLT_DIG__ 6
5070 // MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
5071 // MSP430:#define __FLT_EVAL_METHOD__ 0
5072 // MSP430:#define __FLT_HAS_DENORM__ 1
5073 // MSP430:#define __FLT_HAS_INFINITY__ 1
5074 // MSP430:#define __FLT_HAS_QUIET_NAN__ 1
5075 // MSP430:#define __FLT_MANT_DIG__ 24
5076 // MSP430:#define __FLT_MAX_10_EXP__ 38
5077 // MSP430:#define __FLT_MAX_EXP__ 128
5078 // MSP430:#define __FLT_MAX__ 3.40282347e+38F
5079 // MSP430:#define __FLT_MIN_10_EXP__ (-37)
5080 // MSP430:#define __FLT_MIN_EXP__ (-125)
5081 // MSP430:#define __FLT_MIN__ 1.17549435e-38F
5082 // MSP430:#define __FLT_RADIX__ 2
5083 // MSP430:#define __INT16_C_SUFFIX__
5084 // MSP430:#define __INT16_FMTd__ "hd"
5085 // MSP430:#define __INT16_FMTi__ "hi"
5086 // MSP430:#define __INT16_MAX__ 32767
5087 // MSP430:#define __INT16_TYPE__ short
5088 // MSP430:#define __INT32_C_SUFFIX__ L
5089 // MSP430:#define __INT32_FMTd__ "ld"
5090 // MSP430:#define __INT32_FMTi__ "li"
5091 // MSP430:#define __INT32_MAX__ 2147483647L
5092 // MSP430:#define __INT32_TYPE__ long int
5093 // MSP430:#define __INT64_C_SUFFIX__ LL
5094 // MSP430:#define __INT64_FMTd__ "lld"
5095 // MSP430:#define __INT64_FMTi__ "lli"
5096 // MSP430:#define __INT64_MAX__ 9223372036854775807LL
5097 // MSP430:#define __INT64_TYPE__ long long int
5098 // MSP430:#define __INT8_C_SUFFIX__
5099 // MSP430:#define __INT8_FMTd__ "hhd"
5100 // MSP430:#define __INT8_FMTi__ "hhi"
5101 // MSP430:#define __INT8_MAX__ 127
5102 // MSP430:#define __INT8_TYPE__ signed char
5103 // MSP430:#define __INTMAX_C_SUFFIX__ LL
5104 // MSP430:#define __INTMAX_FMTd__ "lld"
5105 // MSP430:#define __INTMAX_FMTi__ "lli"
5106 // MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
5107 // MSP430:#define __INTMAX_TYPE__ long long int
5108 // MSP430:#define __INTMAX_WIDTH__ 64
5109 // MSP430:#define __INTPTR_FMTd__ "d"
5110 // MSP430:#define __INTPTR_FMTi__ "i"
5111 // MSP430:#define __INTPTR_MAX__ 32767
5112 // MSP430:#define __INTPTR_TYPE__ int
5113 // MSP430:#define __INTPTR_WIDTH__ 16
5114 // MSP430:#define __INT_FAST16_FMTd__ "hd"
5115 // MSP430:#define __INT_FAST16_FMTi__ "hi"
5116 // MSP430:#define __INT_FAST16_MAX__ 32767
5117 // MSP430:#define __INT_FAST16_TYPE__ short
5118 // MSP430:#define __INT_FAST32_FMTd__ "ld"
5119 // MSP430:#define __INT_FAST32_FMTi__ "li"
5120 // MSP430:#define __INT_FAST32_MAX__ 2147483647L
5121 // MSP430:#define __INT_FAST32_TYPE__ long int
5122 // MSP430:#define __INT_FAST64_FMTd__ "lld"
5123 // MSP430:#define __INT_FAST64_FMTi__ "lli"
5124 // MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
5125 // MSP430:#define __INT_FAST64_TYPE__ long long int
5126 // MSP430:#define __INT_FAST8_FMTd__ "hhd"
5127 // MSP430:#define __INT_FAST8_FMTi__ "hhi"
5128 // MSP430:#define __INT_FAST8_MAX__ 127
5129 // MSP430:#define __INT_FAST8_TYPE__ signed char
5130 // MSP430:#define __INT_LEAST16_FMTd__ "hd"
5131 // MSP430:#define __INT_LEAST16_FMTi__ "hi"
5132 // MSP430:#define __INT_LEAST16_MAX__ 32767
5133 // MSP430:#define __INT_LEAST16_TYPE__ short
5134 // MSP430:#define __INT_LEAST32_FMTd__ "ld"
5135 // MSP430:#define __INT_LEAST32_FMTi__ "li"
5136 // MSP430:#define __INT_LEAST32_MAX__ 2147483647L
5137 // MSP430:#define __INT_LEAST32_TYPE__ long int
5138 // MSP430:#define __INT_LEAST64_FMTd__ "lld"
5139 // MSP430:#define __INT_LEAST64_FMTi__ "lli"
5140 // MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5141 // MSP430:#define __INT_LEAST64_TYPE__ long long int
5142 // MSP430:#define __INT_LEAST8_FMTd__ "hhd"
5143 // MSP430:#define __INT_LEAST8_FMTi__ "hhi"
5144 // MSP430:#define __INT_LEAST8_MAX__ 127
5145 // MSP430:#define __INT_LEAST8_TYPE__ signed char
5146 // MSP430:#define __INT_MAX__ 32767
5147 // MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
5148 // MSP430:#define __LDBL_DIG__ 15
5149 // MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
5150 // MSP430:#define __LDBL_HAS_DENORM__ 1
5151 // MSP430:#define __LDBL_HAS_INFINITY__ 1
5152 // MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
5153 // MSP430:#define __LDBL_MANT_DIG__ 53
5154 // MSP430:#define __LDBL_MAX_10_EXP__ 308
5155 // MSP430:#define __LDBL_MAX_EXP__ 1024
5156 // MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
5157 // MSP430:#define __LDBL_MIN_10_EXP__ (-307)
5158 // MSP430:#define __LDBL_MIN_EXP__ (-1021)
5159 // MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
5160 // MSP430:#define __LITTLE_ENDIAN__ 1
5161 // MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
5162 // MSP430:#define __LONG_MAX__ 2147483647L
5163 // MSP430-NOT:#define __LP64__
5164 // MSP430:#define __MSP430__ 1
5165 // MSP430:#define __POINTER_WIDTH__ 16
5166 // MSP430:#define __PTRDIFF_TYPE__ int
5167 // MSP430:#define __PTRDIFF_WIDTH__ 16
5168 // MSP430:#define __SCHAR_MAX__ 127
5169 // MSP430:#define __SHRT_MAX__ 32767
5170 // MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
5171 // MSP430:#define __SIG_ATOMIC_WIDTH__ 32
5172 // MSP430:#define __SIZEOF_DOUBLE__ 8
5173 // MSP430:#define __SIZEOF_FLOAT__ 4
5174 // MSP430:#define __SIZEOF_INT__ 2
5175 // MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
5176 // MSP430:#define __SIZEOF_LONG_LONG__ 8
5177 // MSP430:#define __SIZEOF_LONG__ 4
5178 // MSP430:#define __SIZEOF_POINTER__ 2
5179 // MSP430:#define __SIZEOF_PTRDIFF_T__ 2
5180 // MSP430:#define __SIZEOF_SHORT__ 2
5181 // MSP430:#define __SIZEOF_SIZE_T__ 2
5182 // MSP430:#define __SIZEOF_WCHAR_T__ 2
5183 // MSP430:#define __SIZEOF_WINT_T__ 2
5184 // MSP430:#define __SIZE_MAX__ 65535U
5185 // MSP430:#define __SIZE_TYPE__ unsigned int
5186 // MSP430:#define __SIZE_WIDTH__ 16
5187 // MSP430-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 2U
5188 // MSP430:#define __UINT16_C_SUFFIX__ U
5189 // MSP430:#define __UINT16_MAX__ 65535U
5190 // MSP430:#define __UINT16_TYPE__ unsigned short
5191 // MSP430:#define __UINT32_C_SUFFIX__ UL
5192 // MSP430:#define __UINT32_MAX__ 4294967295UL
5193 // MSP430:#define __UINT32_TYPE__ long unsigned int
5194 // MSP430:#define __UINT64_C_SUFFIX__ ULL
5195 // MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
5196 // MSP430:#define __UINT64_TYPE__ long long unsigned int
5197 // MSP430:#define __UINT8_C_SUFFIX__
5198 // MSP430:#define __UINT8_MAX__ 255
5199 // MSP430:#define __UINT8_TYPE__ unsigned char
5200 // MSP430:#define __UINTMAX_C_SUFFIX__ ULL
5201 // MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
5202 // MSP430:#define __UINTMAX_TYPE__ long long unsigned int
5203 // MSP430:#define __UINTMAX_WIDTH__ 64
5204 // MSP430:#define __UINTPTR_MAX__ 65535U
5205 // MSP430:#define __UINTPTR_TYPE__ unsigned int
5206 // MSP430:#define __UINTPTR_WIDTH__ 16
5207 // MSP430:#define __UINT_FAST16_MAX__ 65535U
5208 // MSP430:#define __UINT_FAST16_TYPE__ unsigned short
5209 // MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
5210 // MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
5211 // MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5212 // MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
5213 // MSP430:#define __UINT_FAST8_MAX__ 255
5214 // MSP430:#define __UINT_FAST8_TYPE__ unsigned char
5215 // MSP430:#define __UINT_LEAST16_MAX__ 65535U
5216 // MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
5217 // MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
5218 // MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
5219 // MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5220 // MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
5221 // MSP430:#define __UINT_LEAST8_MAX__ 255
5222 // MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
5223 // MSP430:#define __USER_LABEL_PREFIX__
5224 // MSP430:#define __WCHAR_MAX__ 32767
5225 // MSP430:#define __WCHAR_TYPE__ int
5226 // MSP430:#define __WCHAR_WIDTH__ 16
5227 // MSP430:#define __WINT_TYPE__ int
5228 // MSP430:#define __WINT_WIDTH__ 16
5229 // MSP430:#define __clang__ 1
5230 //
5231 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX32 %s
5232 // 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
5233 //
5234 // NVPTX32-NOT:#define _LP64
5235 // NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
5236 // NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5237 // NVPTX32:#define __CHAR16_TYPE__ unsigned short
5238 // NVPTX32:#define __CHAR32_TYPE__ unsigned int
5239 // NVPTX32:#define __CHAR_BIT__ 8
5240 // NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
5241 // NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5242 // NVPTX32:#define __DBL_DIG__ 15
5243 // NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
5244 // NVPTX32:#define __DBL_HAS_DENORM__ 1
5245 // NVPTX32:#define __DBL_HAS_INFINITY__ 1
5246 // NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
5247 // NVPTX32:#define __DBL_MANT_DIG__ 53
5248 // NVPTX32:#define __DBL_MAX_10_EXP__ 308
5249 // NVPTX32:#define __DBL_MAX_EXP__ 1024
5250 // NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
5251 // NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
5252 // NVPTX32:#define __DBL_MIN_EXP__ (-1021)
5253 // NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
5254 // NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
5255 // NVPTX32:#define __FINITE_MATH_ONLY__ 0
5256 // NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5257 // NVPTX32:#define __FLT_DIG__ 6
5258 // NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
5259 // NVPTX32:#define __FLT_EVAL_METHOD__ 0
5260 // NVPTX32:#define __FLT_HAS_DENORM__ 1
5261 // NVPTX32:#define __FLT_HAS_INFINITY__ 1
5262 // NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
5263 // NVPTX32:#define __FLT_MANT_DIG__ 24
5264 // NVPTX32:#define __FLT_MAX_10_EXP__ 38
5265 // NVPTX32:#define __FLT_MAX_EXP__ 128
5266 // NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
5267 // NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
5268 // NVPTX32:#define __FLT_MIN_EXP__ (-125)
5269 // NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
5270 // NVPTX32:#define __FLT_RADIX__ 2
5271 // NVPTX32:#define __INT16_C_SUFFIX__
5272 // NVPTX32:#define __INT16_FMTd__ "hd"
5273 // NVPTX32:#define __INT16_FMTi__ "hi"
5274 // NVPTX32:#define __INT16_MAX__ 32767
5275 // NVPTX32:#define __INT16_TYPE__ short
5276 // NVPTX32:#define __INT32_C_SUFFIX__
5277 // NVPTX32:#define __INT32_FMTd__ "d"
5278 // NVPTX32:#define __INT32_FMTi__ "i"
5279 // NVPTX32:#define __INT32_MAX__ 2147483647
5280 // NVPTX32:#define __INT32_TYPE__ int
5281 // NVPTX32:#define __INT64_C_SUFFIX__ LL
5282 // NVPTX32:#define __INT64_FMTd__ "lld"
5283 // NVPTX32:#define __INT64_FMTi__ "lli"
5284 // NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
5285 // NVPTX32:#define __INT64_TYPE__ long long int
5286 // NVPTX32:#define __INT8_C_SUFFIX__
5287 // NVPTX32:#define __INT8_FMTd__ "hhd"
5288 // NVPTX32:#define __INT8_FMTi__ "hhi"
5289 // NVPTX32:#define __INT8_MAX__ 127
5290 // NVPTX32:#define __INT8_TYPE__ signed char
5291 // NVPTX32:#define __INTMAX_C_SUFFIX__ LL
5292 // NVPTX32:#define __INTMAX_FMTd__ "lld"
5293 // NVPTX32:#define __INTMAX_FMTi__ "lli"
5294 // NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
5295 // NVPTX32:#define __INTMAX_TYPE__ long long int
5296 // NVPTX32:#define __INTMAX_WIDTH__ 64
5297 // NVPTX32:#define __INTPTR_FMTd__ "d"
5298 // NVPTX32:#define __INTPTR_FMTi__ "i"
5299 // NVPTX32:#define __INTPTR_MAX__ 2147483647
5300 // NVPTX32:#define __INTPTR_TYPE__ int
5301 // NVPTX32:#define __INTPTR_WIDTH__ 32
5302 // NVPTX32:#define __INT_FAST16_FMTd__ "hd"
5303 // NVPTX32:#define __INT_FAST16_FMTi__ "hi"
5304 // NVPTX32:#define __INT_FAST16_MAX__ 32767
5305 // NVPTX32:#define __INT_FAST16_TYPE__ short
5306 // NVPTX32:#define __INT_FAST32_FMTd__ "d"
5307 // NVPTX32:#define __INT_FAST32_FMTi__ "i"
5308 // NVPTX32:#define __INT_FAST32_MAX__ 2147483647
5309 // NVPTX32:#define __INT_FAST32_TYPE__ int
5310 // NVPTX32:#define __INT_FAST64_FMTd__ "lld"
5311 // NVPTX32:#define __INT_FAST64_FMTi__ "lli"
5312 // NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
5313 // NVPTX32:#define __INT_FAST64_TYPE__ long long int
5314 // NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
5315 // NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
5316 // NVPTX32:#define __INT_FAST8_MAX__ 127
5317 // NVPTX32:#define __INT_FAST8_TYPE__ signed char
5318 // NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
5319 // NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
5320 // NVPTX32:#define __INT_LEAST16_MAX__ 32767
5321 // NVPTX32:#define __INT_LEAST16_TYPE__ short
5322 // NVPTX32:#define __INT_LEAST32_FMTd__ "d"
5323 // NVPTX32:#define __INT_LEAST32_FMTi__ "i"
5324 // NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
5325 // NVPTX32:#define __INT_LEAST32_TYPE__ int
5326 // NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
5327 // NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
5328 // NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5329 // NVPTX32:#define __INT_LEAST64_TYPE__ long long int
5330 // NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
5331 // NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
5332 // NVPTX32:#define __INT_LEAST8_MAX__ 127
5333 // NVPTX32:#define __INT_LEAST8_TYPE__ signed char
5334 // NVPTX32:#define __INT_MAX__ 2147483647
5335 // NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
5336 // NVPTX32:#define __LDBL_DIG__ 15
5337 // NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
5338 // NVPTX32:#define __LDBL_HAS_DENORM__ 1
5339 // NVPTX32:#define __LDBL_HAS_INFINITY__ 1
5340 // NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
5341 // NVPTX32:#define __LDBL_MANT_DIG__ 53
5342 // NVPTX32:#define __LDBL_MAX_10_EXP__ 308
5343 // NVPTX32:#define __LDBL_MAX_EXP__ 1024
5344 // NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
5345 // NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
5346 // NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
5347 // NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
5348 // NVPTX32:#define __LITTLE_ENDIAN__ 1
5349 // NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
5350 // NVPTX32:#define __LONG_MAX__ 2147483647L
5351 // NVPTX32-NOT:#define __LP64__
5352 // NVPTX32:#define __NVPTX__ 1
5353 // NVPTX32:#define __POINTER_WIDTH__ 32
5354 // NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
5355 // NVPTX32:#define __PTRDIFF_TYPE__ int
5356 // NVPTX32:#define __PTRDIFF_WIDTH__ 32
5357 // NVPTX32:#define __PTX__ 1
5358 // NVPTX32:#define __SCHAR_MAX__ 127
5359 // NVPTX32:#define __SHRT_MAX__ 32767
5360 // NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
5361 // NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
5362 // NVPTX32:#define __SIZEOF_DOUBLE__ 8
5363 // NVPTX32:#define __SIZEOF_FLOAT__ 4
5364 // NVPTX32:#define __SIZEOF_INT__ 4
5365 // NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
5366 // NVPTX32:#define __SIZEOF_LONG_LONG__ 8
5367 // NVPTX32:#define __SIZEOF_LONG__ 4
5368 // NVPTX32:#define __SIZEOF_POINTER__ 4
5369 // NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
5370 // NVPTX32:#define __SIZEOF_SHORT__ 2
5371 // NVPTX32:#define __SIZEOF_SIZE_T__ 4
5372 // NVPTX32:#define __SIZEOF_WCHAR_T__ 4
5373 // NVPTX32:#define __SIZEOF_WINT_T__ 4
5374 // NVPTX32:#define __SIZE_MAX__ 4294967295U
5375 // NVPTX32:#define __SIZE_TYPE__ unsigned int
5376 // NVPTX32:#define __SIZE_WIDTH__ 32
5377 // NVPTX32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
5378 // NVPTX32:#define __UINT16_C_SUFFIX__
5379 // NVPTX32:#define __UINT16_MAX__ 65535
5380 // NVPTX32:#define __UINT16_TYPE__ unsigned short
5381 // NVPTX32:#define __UINT32_C_SUFFIX__ U
5382 // NVPTX32:#define __UINT32_MAX__ 4294967295U
5383 // NVPTX32:#define __UINT32_TYPE__ unsigned int
5384 // NVPTX32:#define __UINT64_C_SUFFIX__ ULL
5385 // NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
5386 // NVPTX32:#define __UINT64_TYPE__ long long unsigned int
5387 // NVPTX32:#define __UINT8_C_SUFFIX__
5388 // NVPTX32:#define __UINT8_MAX__ 255
5389 // NVPTX32:#define __UINT8_TYPE__ unsigned char
5390 // NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
5391 // NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
5392 // NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
5393 // NVPTX32:#define __UINTMAX_WIDTH__ 64
5394 // NVPTX32:#define __UINTPTR_MAX__ 4294967295U
5395 // NVPTX32:#define __UINTPTR_TYPE__ unsigned int
5396 // NVPTX32:#define __UINTPTR_WIDTH__ 32
5397 // NVPTX32:#define __UINT_FAST16_MAX__ 65535
5398 // NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
5399 // NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
5400 // NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
5401 // NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5402 // NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
5403 // NVPTX32:#define __UINT_FAST8_MAX__ 255
5404 // NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
5405 // NVPTX32:#define __UINT_LEAST16_MAX__ 65535
5406 // NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
5407 // NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
5408 // NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
5409 // NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5410 // NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
5411 // NVPTX32:#define __UINT_LEAST8_MAX__ 255
5412 // NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
5413 // NVPTX32:#define __USER_LABEL_PREFIX__
5414 // NVPTX32:#define __WCHAR_MAX__ 2147483647
5415 // NVPTX32:#define __WCHAR_TYPE__ int
5416 // NVPTX32:#define __WCHAR_WIDTH__ 32
5417 // NVPTX32:#define __WINT_TYPE__ int
5418 // NVPTX32:#define __WINT_WIDTH__ 32
5419 //
5420 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX64 %s
5421 // 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
5422 //
5423 // NVPTX64:#define _LP64 1
5424 // NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
5425 // NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5426 // NVPTX64:#define __CHAR16_TYPE__ unsigned short
5427 // NVPTX64:#define __CHAR32_TYPE__ unsigned int
5428 // NVPTX64:#define __CHAR_BIT__ 8
5429 // NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
5430 // NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5431 // NVPTX64:#define __DBL_DIG__ 15
5432 // NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5433 // NVPTX64:#define __DBL_HAS_DENORM__ 1
5434 // NVPTX64:#define __DBL_HAS_INFINITY__ 1
5435 // NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
5436 // NVPTX64:#define __DBL_MANT_DIG__ 53
5437 // NVPTX64:#define __DBL_MAX_10_EXP__ 308
5438 // NVPTX64:#define __DBL_MAX_EXP__ 1024
5439 // NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
5440 // NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
5441 // NVPTX64:#define __DBL_MIN_EXP__ (-1021)
5442 // NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
5443 // NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
5444 // NVPTX64:#define __FINITE_MATH_ONLY__ 0
5445 // NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5446 // NVPTX64:#define __FLT_DIG__ 6
5447 // NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
5448 // NVPTX64:#define __FLT_EVAL_METHOD__ 0
5449 // NVPTX64:#define __FLT_HAS_DENORM__ 1
5450 // NVPTX64:#define __FLT_HAS_INFINITY__ 1
5451 // NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
5452 // NVPTX64:#define __FLT_MANT_DIG__ 24
5453 // NVPTX64:#define __FLT_MAX_10_EXP__ 38
5454 // NVPTX64:#define __FLT_MAX_EXP__ 128
5455 // NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
5456 // NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
5457 // NVPTX64:#define __FLT_MIN_EXP__ (-125)
5458 // NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
5459 // NVPTX64:#define __FLT_RADIX__ 2
5460 // NVPTX64:#define __INT16_C_SUFFIX__
5461 // NVPTX64:#define __INT16_FMTd__ "hd"
5462 // NVPTX64:#define __INT16_FMTi__ "hi"
5463 // NVPTX64:#define __INT16_MAX__ 32767
5464 // NVPTX64:#define __INT16_TYPE__ short
5465 // NVPTX64:#define __INT32_C_SUFFIX__
5466 // NVPTX64:#define __INT32_FMTd__ "d"
5467 // NVPTX64:#define __INT32_FMTi__ "i"
5468 // NVPTX64:#define __INT32_MAX__ 2147483647
5469 // NVPTX64:#define __INT32_TYPE__ int
5470 // NVPTX64:#define __INT64_C_SUFFIX__ LL
5471 // NVPTX64:#define __INT64_FMTd__ "lld"
5472 // NVPTX64:#define __INT64_FMTi__ "lli"
5473 // NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
5474 // NVPTX64:#define __INT64_TYPE__ long long int
5475 // NVPTX64:#define __INT8_C_SUFFIX__
5476 // NVPTX64:#define __INT8_FMTd__ "hhd"
5477 // NVPTX64:#define __INT8_FMTi__ "hhi"
5478 // NVPTX64:#define __INT8_MAX__ 127
5479 // NVPTX64:#define __INT8_TYPE__ signed char
5480 // NVPTX64:#define __INTMAX_C_SUFFIX__ LL
5481 // NVPTX64:#define __INTMAX_FMTd__ "lld"
5482 // NVPTX64:#define __INTMAX_FMTi__ "lli"
5483 // NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
5484 // NVPTX64:#define __INTMAX_TYPE__ long long int
5485 // NVPTX64:#define __INTMAX_WIDTH__ 64
5486 // NVPTX64:#define __INTPTR_FMTd__ "ld"
5487 // NVPTX64:#define __INTPTR_FMTi__ "li"
5488 // NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
5489 // NVPTX64:#define __INTPTR_TYPE__ long int
5490 // NVPTX64:#define __INTPTR_WIDTH__ 64
5491 // NVPTX64:#define __INT_FAST16_FMTd__ "hd"
5492 // NVPTX64:#define __INT_FAST16_FMTi__ "hi"
5493 // NVPTX64:#define __INT_FAST16_MAX__ 32767
5494 // NVPTX64:#define __INT_FAST16_TYPE__ short
5495 // NVPTX64:#define __INT_FAST32_FMTd__ "d"
5496 // NVPTX64:#define __INT_FAST32_FMTi__ "i"
5497 // NVPTX64:#define __INT_FAST32_MAX__ 2147483647
5498 // NVPTX64:#define __INT_FAST32_TYPE__ int
5499 // NVPTX64:#define __INT_FAST64_FMTd__ "ld"
5500 // NVPTX64:#define __INT_FAST64_FMTi__ "li"
5501 // NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
5502 // NVPTX64:#define __INT_FAST64_TYPE__ long int
5503 // NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
5504 // NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
5505 // NVPTX64:#define __INT_FAST8_MAX__ 127
5506 // NVPTX64:#define __INT_FAST8_TYPE__ signed char
5507 // NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
5508 // NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
5509 // NVPTX64:#define __INT_LEAST16_MAX__ 32767
5510 // NVPTX64:#define __INT_LEAST16_TYPE__ short
5511 // NVPTX64:#define __INT_LEAST32_FMTd__ "d"
5512 // NVPTX64:#define __INT_LEAST32_FMTi__ "i"
5513 // NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
5514 // NVPTX64:#define __INT_LEAST32_TYPE__ int
5515 // NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
5516 // NVPTX64:#define __INT_LEAST64_FMTi__ "li"
5517 // NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5518 // NVPTX64:#define __INT_LEAST64_TYPE__ long int
5519 // NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
5520 // NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
5521 // NVPTX64:#define __INT_LEAST8_MAX__ 127
5522 // NVPTX64:#define __INT_LEAST8_TYPE__ signed char
5523 // NVPTX64:#define __INT_MAX__ 2147483647
5524 // NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
5525 // NVPTX64:#define __LDBL_DIG__ 15
5526 // NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
5527 // NVPTX64:#define __LDBL_HAS_DENORM__ 1
5528 // NVPTX64:#define __LDBL_HAS_INFINITY__ 1
5529 // NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
5530 // NVPTX64:#define __LDBL_MANT_DIG__ 53
5531 // NVPTX64:#define __LDBL_MAX_10_EXP__ 308
5532 // NVPTX64:#define __LDBL_MAX_EXP__ 1024
5533 // NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
5534 // NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
5535 // NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
5536 // NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
5537 // NVPTX64:#define __LITTLE_ENDIAN__ 1
5538 // NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5539 // NVPTX64:#define __LONG_MAX__ 9223372036854775807L
5540 // NVPTX64:#define __LP64__ 1
5541 // NVPTX64:#define __NVPTX__ 1
5542 // NVPTX64:#define __POINTER_WIDTH__ 64
5543 // NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
5544 // NVPTX64:#define __PTRDIFF_TYPE__ long int
5545 // NVPTX64:#define __PTRDIFF_WIDTH__ 64
5546 // NVPTX64:#define __PTX__ 1
5547 // NVPTX64:#define __SCHAR_MAX__ 127
5548 // NVPTX64:#define __SHRT_MAX__ 32767
5549 // NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
5550 // NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
5551 // NVPTX64:#define __SIZEOF_DOUBLE__ 8
5552 // NVPTX64:#define __SIZEOF_FLOAT__ 4
5553 // NVPTX64:#define __SIZEOF_INT__ 4
5554 // NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
5555 // NVPTX64:#define __SIZEOF_LONG_LONG__ 8
5556 // NVPTX64:#define __SIZEOF_LONG__ 8
5557 // NVPTX64:#define __SIZEOF_POINTER__ 8
5558 // NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
5559 // NVPTX64:#define __SIZEOF_SHORT__ 2
5560 // NVPTX64:#define __SIZEOF_SIZE_T__ 8
5561 // NVPTX64:#define __SIZEOF_WCHAR_T__ 4
5562 // NVPTX64:#define __SIZEOF_WINT_T__ 4
5563 // NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
5564 // NVPTX64:#define __SIZE_TYPE__ long unsigned int
5565 // NVPTX64:#define __SIZE_WIDTH__ 64
5566 // NVPTX64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
5567 // NVPTX64:#define __UINT16_C_SUFFIX__
5568 // NVPTX64:#define __UINT16_MAX__ 65535
5569 // NVPTX64:#define __UINT16_TYPE__ unsigned short
5570 // NVPTX64:#define __UINT32_C_SUFFIX__ U
5571 // NVPTX64:#define __UINT32_MAX__ 4294967295U
5572 // NVPTX64:#define __UINT32_TYPE__ unsigned int
5573 // NVPTX64:#define __UINT64_C_SUFFIX__ ULL
5574 // NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
5575 // NVPTX64:#define __UINT64_TYPE__ long long unsigned int
5576 // NVPTX64:#define __UINT8_C_SUFFIX__
5577 // NVPTX64:#define __UINT8_MAX__ 255
5578 // NVPTX64:#define __UINT8_TYPE__ unsigned char
5579 // NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
5580 // NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
5581 // NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
5582 // NVPTX64:#define __UINTMAX_WIDTH__ 64
5583 // NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
5584 // NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
5585 // NVPTX64:#define __UINTPTR_WIDTH__ 64
5586 // NVPTX64:#define __UINT_FAST16_MAX__ 65535
5587 // NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
5588 // NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
5589 // NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
5590 // NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5591 // NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
5592 // NVPTX64:#define __UINT_FAST8_MAX__ 255
5593 // NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
5594 // NVPTX64:#define __UINT_LEAST16_MAX__ 65535
5595 // NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
5596 // NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
5597 // NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
5598 // NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5599 // NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
5600 // NVPTX64:#define __UINT_LEAST8_MAX__ 255
5601 // NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
5602 // NVPTX64:#define __USER_LABEL_PREFIX__
5603 // NVPTX64:#define __WCHAR_MAX__ 2147483647
5604 // NVPTX64:#define __WCHAR_TYPE__ int
5605 // NVPTX64:#define __WCHAR_WIDTH__ 32
5606 // NVPTX64:#define __WINT_TYPE__ int
5607 // NVPTX64:#define __WINT_WIDTH__ 32
5608 //
5609 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -match-full-lines -check-prefix PPC603E %s
5610 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -match-full-lines -check-prefix PPC603E-CXX %s
5611 //
5612 // PPC603E:#define _ARCH_603 1
5613 // PPC603E:#define _ARCH_603E 1
5614 // PPC603E:#define _ARCH_PPC 1
5615 // PPC603E:#define _ARCH_PPCGR 1
5616 // PPC603E:#define _BIG_ENDIAN 1
5617 // PPC603E-NOT:#define _LP64
5618 // PPC603E:#define __BIGGEST_ALIGNMENT__ 16
5619 // PPC603E:#define __BIG_ENDIAN__ 1
5620 // PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
5621 // PPC603E:#define __CHAR16_TYPE__ unsigned short
5622 // PPC603E:#define __CHAR32_TYPE__ unsigned int
5623 // PPC603E:#define __CHAR_BIT__ 8
5624 // PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5625 // PPC603E:#define __DBL_DIG__ 15
5626 // PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
5627 // PPC603E:#define __DBL_HAS_DENORM__ 1
5628 // PPC603E:#define __DBL_HAS_INFINITY__ 1
5629 // PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
5630 // PPC603E:#define __DBL_MANT_DIG__ 53
5631 // PPC603E:#define __DBL_MAX_10_EXP__ 308
5632 // PPC603E:#define __DBL_MAX_EXP__ 1024
5633 // PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
5634 // PPC603E:#define __DBL_MIN_10_EXP__ (-307)
5635 // PPC603E:#define __DBL_MIN_EXP__ (-1021)
5636 // PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
5637 // PPC603E:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
5638 // PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5639 // PPC603E:#define __FLT_DIG__ 6
5640 // PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
5641 // PPC603E:#define __FLT_EVAL_METHOD__ 0
5642 // PPC603E:#define __FLT_HAS_DENORM__ 1
5643 // PPC603E:#define __FLT_HAS_INFINITY__ 1
5644 // PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
5645 // PPC603E:#define __FLT_MANT_DIG__ 24
5646 // PPC603E:#define __FLT_MAX_10_EXP__ 38
5647 // PPC603E:#define __FLT_MAX_EXP__ 128
5648 // PPC603E:#define __FLT_MAX__ 3.40282347e+38F
5649 // PPC603E:#define __FLT_MIN_10_EXP__ (-37)
5650 // PPC603E:#define __FLT_MIN_EXP__ (-125)
5651 // PPC603E:#define __FLT_MIN__ 1.17549435e-38F
5652 // PPC603E:#define __FLT_RADIX__ 2
5653 // PPC603E:#define __INT16_C_SUFFIX__
5654 // PPC603E:#define __INT16_FMTd__ "hd"
5655 // PPC603E:#define __INT16_FMTi__ "hi"
5656 // PPC603E:#define __INT16_MAX__ 32767
5657 // PPC603E:#define __INT16_TYPE__ short
5658 // PPC603E:#define __INT32_C_SUFFIX__
5659 // PPC603E:#define __INT32_FMTd__ "d"
5660 // PPC603E:#define __INT32_FMTi__ "i"
5661 // PPC603E:#define __INT32_MAX__ 2147483647
5662 // PPC603E:#define __INT32_TYPE__ int
5663 // PPC603E:#define __INT64_C_SUFFIX__ LL
5664 // PPC603E:#define __INT64_FMTd__ "lld"
5665 // PPC603E:#define __INT64_FMTi__ "lli"
5666 // PPC603E:#define __INT64_MAX__ 9223372036854775807LL
5667 // PPC603E:#define __INT64_TYPE__ long long int
5668 // PPC603E:#define __INT8_C_SUFFIX__
5669 // PPC603E:#define __INT8_FMTd__ "hhd"
5670 // PPC603E:#define __INT8_FMTi__ "hhi"
5671 // PPC603E:#define __INT8_MAX__ 127
5672 // PPC603E:#define __INT8_TYPE__ signed char
5673 // PPC603E:#define __INTMAX_C_SUFFIX__ LL
5674 // PPC603E:#define __INTMAX_FMTd__ "lld"
5675 // PPC603E:#define __INTMAX_FMTi__ "lli"
5676 // PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
5677 // PPC603E:#define __INTMAX_TYPE__ long long int
5678 // PPC603E:#define __INTMAX_WIDTH__ 64
5679 // PPC603E:#define __INTPTR_FMTd__ "ld"
5680 // PPC603E:#define __INTPTR_FMTi__ "li"
5681 // PPC603E:#define __INTPTR_MAX__ 2147483647L
5682 // PPC603E:#define __INTPTR_TYPE__ long int
5683 // PPC603E:#define __INTPTR_WIDTH__ 32
5684 // PPC603E:#define __INT_FAST16_FMTd__ "hd"
5685 // PPC603E:#define __INT_FAST16_FMTi__ "hi"
5686 // PPC603E:#define __INT_FAST16_MAX__ 32767
5687 // PPC603E:#define __INT_FAST16_TYPE__ short
5688 // PPC603E:#define __INT_FAST32_FMTd__ "d"
5689 // PPC603E:#define __INT_FAST32_FMTi__ "i"
5690 // PPC603E:#define __INT_FAST32_MAX__ 2147483647
5691 // PPC603E:#define __INT_FAST32_TYPE__ int
5692 // PPC603E:#define __INT_FAST64_FMTd__ "lld"
5693 // PPC603E:#define __INT_FAST64_FMTi__ "lli"
5694 // PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
5695 // PPC603E:#define __INT_FAST64_TYPE__ long long int
5696 // PPC603E:#define __INT_FAST8_FMTd__ "hhd"
5697 // PPC603E:#define __INT_FAST8_FMTi__ "hhi"
5698 // PPC603E:#define __INT_FAST8_MAX__ 127
5699 // PPC603E:#define __INT_FAST8_TYPE__ signed char
5700 // PPC603E:#define __INT_LEAST16_FMTd__ "hd"
5701 // PPC603E:#define __INT_LEAST16_FMTi__ "hi"
5702 // PPC603E:#define __INT_LEAST16_MAX__ 32767
5703 // PPC603E:#define __INT_LEAST16_TYPE__ short
5704 // PPC603E:#define __INT_LEAST32_FMTd__ "d"
5705 // PPC603E:#define __INT_LEAST32_FMTi__ "i"
5706 // PPC603E:#define __INT_LEAST32_MAX__ 2147483647
5707 // PPC603E:#define __INT_LEAST32_TYPE__ int
5708 // PPC603E:#define __INT_LEAST64_FMTd__ "lld"
5709 // PPC603E:#define __INT_LEAST64_FMTi__ "lli"
5710 // PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5711 // PPC603E:#define __INT_LEAST64_TYPE__ long long int
5712 // PPC603E:#define __INT_LEAST8_FMTd__ "hhd"
5713 // PPC603E:#define __INT_LEAST8_FMTi__ "hhi"
5714 // PPC603E:#define __INT_LEAST8_MAX__ 127
5715 // PPC603E:#define __INT_LEAST8_TYPE__ signed char
5716 // PPC603E:#define __INT_MAX__ 2147483647
5717 // PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5718 // PPC603E:#define __LDBL_DIG__ 31
5719 // PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5720 // PPC603E:#define __LDBL_HAS_DENORM__ 1
5721 // PPC603E:#define __LDBL_HAS_INFINITY__ 1
5722 // PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
5723 // PPC603E:#define __LDBL_MANT_DIG__ 106
5724 // PPC603E:#define __LDBL_MAX_10_EXP__ 308
5725 // PPC603E:#define __LDBL_MAX_EXP__ 1024
5726 // PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5727 // PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
5728 // PPC603E:#define __LDBL_MIN_EXP__ (-968)
5729 // PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5730 // PPC603E:#define __LONGDOUBLE128 1
5731 // PPC603E:#define __LONG_DOUBLE_128__ 1
5732 // PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
5733 // PPC603E:#define __LONG_MAX__ 2147483647L
5734 // PPC603E-NOT:#define __LP64__
5735 // PPC603E:#define __NATURAL_ALIGNMENT__ 1
5736 // PPC603E:#define __POINTER_WIDTH__ 32
5737 // PPC603E:#define __POWERPC__ 1
5738 // PPC603E:#define __PPC__ 1
5739 // PPC603E:#define __PTRDIFF_TYPE__ long int
5740 // PPC603E:#define __PTRDIFF_WIDTH__ 32
5741 // PPC603E:#define __REGISTER_PREFIX__
5742 // PPC603E:#define __SCHAR_MAX__ 127
5743 // PPC603E:#define __SHRT_MAX__ 32767
5744 // PPC603E:#define __SIG_ATOMIC_MAX__ 2147483647
5745 // PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
5746 // PPC603E:#define __SIZEOF_DOUBLE__ 8
5747 // PPC603E:#define __SIZEOF_FLOAT__ 4
5748 // PPC603E:#define __SIZEOF_INT__ 4
5749 // PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
5750 // PPC603E:#define __SIZEOF_LONG_LONG__ 8
5751 // PPC603E:#define __SIZEOF_LONG__ 4
5752 // PPC603E:#define __SIZEOF_POINTER__ 4
5753 // PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
5754 // PPC603E:#define __SIZEOF_SHORT__ 2
5755 // PPC603E:#define __SIZEOF_SIZE_T__ 4
5756 // PPC603E:#define __SIZEOF_WCHAR_T__ 4
5757 // PPC603E:#define __SIZEOF_WINT_T__ 4
5758 // PPC603E:#define __SIZE_MAX__ 4294967295UL
5759 // PPC603E:#define __SIZE_TYPE__ long unsigned int
5760 // PPC603E:#define __SIZE_WIDTH__ 32
5761 // PPC603E-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
5762 // PPC603E:#define __UINT16_C_SUFFIX__
5763 // PPC603E:#define __UINT16_MAX__ 65535
5764 // PPC603E:#define __UINT16_TYPE__ unsigned short
5765 // PPC603E:#define __UINT32_C_SUFFIX__ U
5766 // PPC603E:#define __UINT32_MAX__ 4294967295U
5767 // PPC603E:#define __UINT32_TYPE__ unsigned int
5768 // PPC603E:#define __UINT64_C_SUFFIX__ ULL
5769 // PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
5770 // PPC603E:#define __UINT64_TYPE__ long long unsigned int
5771 // PPC603E:#define __UINT8_C_SUFFIX__
5772 // PPC603E:#define __UINT8_MAX__ 255
5773 // PPC603E:#define __UINT8_TYPE__ unsigned char
5774 // PPC603E:#define __UINTMAX_C_SUFFIX__ ULL
5775 // PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
5776 // PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
5777 // PPC603E:#define __UINTMAX_WIDTH__ 64
5778 // PPC603E:#define __UINTPTR_MAX__ 4294967295UL
5779 // PPC603E:#define __UINTPTR_TYPE__ long unsigned int
5780 // PPC603E:#define __UINTPTR_WIDTH__ 32
5781 // PPC603E:#define __UINT_FAST16_MAX__ 65535
5782 // PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
5783 // PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
5784 // PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
5785 // PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5786 // PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
5787 // PPC603E:#define __UINT_FAST8_MAX__ 255
5788 // PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
5789 // PPC603E:#define __UINT_LEAST16_MAX__ 65535
5790 // PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
5791 // PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
5792 // PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
5793 // PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5794 // PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
5795 // PPC603E:#define __UINT_LEAST8_MAX__ 255
5796 // PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
5797 // PPC603E:#define __USER_LABEL_PREFIX__
5798 // PPC603E:#define __WCHAR_MAX__ 2147483647
5799 // PPC603E:#define __WCHAR_TYPE__ int
5800 // PPC603E:#define __WCHAR_WIDTH__ 32
5801 // PPC603E:#define __WINT_TYPE__ int
5802 // PPC603E:#define __WINT_WIDTH__ 32
5803 // PPC603E:#define __powerpc__ 1
5804 // PPC603E:#define __ppc__ 1
5805 //
5806 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64 %s
5807 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64 -check-prefix PPC64-CXX %s
5808 //
5809 // PPC64:#define _ARCH_PPC 1
5810 // PPC64:#define _ARCH_PPC64 1
5811 // PPC64:#define _ARCH_PPCGR 1
5812 // PPC64:#define _ARCH_PPCSQ 1
5813 // PPC64:#define _ARCH_PWR4 1
5814 // PPC64:#define _ARCH_PWR5 1
5815 // PPC64:#define _ARCH_PWR6 1
5816 // PPC64:#define _ARCH_PWR7 1
5817 // PPC64:#define _BIG_ENDIAN 1
5818 // PPC64:#define _LP64 1
5819 // PPC64:#define __BIGGEST_ALIGNMENT__ 16
5820 // PPC64:#define __BIG_ENDIAN__ 1
5821 // PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
5822 // PPC64:#define __CHAR16_TYPE__ unsigned short
5823 // PPC64:#define __CHAR32_TYPE__ unsigned int
5824 // PPC64:#define __CHAR_BIT__ 8
5825 // PPC64:#define __CHAR_UNSIGNED__ 1
5826 // PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5827 // PPC64:#define __DBL_DIG__ 15
5828 // PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5829 // PPC64:#define __DBL_HAS_DENORM__ 1
5830 // PPC64:#define __DBL_HAS_INFINITY__ 1
5831 // PPC64:#define __DBL_HAS_QUIET_NAN__ 1
5832 // PPC64:#define __DBL_MANT_DIG__ 53
5833 // PPC64:#define __DBL_MAX_10_EXP__ 308
5834 // PPC64:#define __DBL_MAX_EXP__ 1024
5835 // PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
5836 // PPC64:#define __DBL_MIN_10_EXP__ (-307)
5837 // PPC64:#define __DBL_MIN_EXP__ (-1021)
5838 // PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
5839 // PPC64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
5840 // PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5841 // PPC64:#define __FLT_DIG__ 6
5842 // PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
5843 // PPC64:#define __FLT_EVAL_METHOD__ 0
5844 // PPC64:#define __FLT_HAS_DENORM__ 1
5845 // PPC64:#define __FLT_HAS_INFINITY__ 1
5846 // PPC64:#define __FLT_HAS_QUIET_NAN__ 1
5847 // PPC64:#define __FLT_MANT_DIG__ 24
5848 // PPC64:#define __FLT_MAX_10_EXP__ 38
5849 // PPC64:#define __FLT_MAX_EXP__ 128
5850 // PPC64:#define __FLT_MAX__ 3.40282347e+38F
5851 // PPC64:#define __FLT_MIN_10_EXP__ (-37)
5852 // PPC64:#define __FLT_MIN_EXP__ (-125)
5853 // PPC64:#define __FLT_MIN__ 1.17549435e-38F
5854 // PPC64:#define __FLT_RADIX__ 2
5855 // PPC64:#define __HAVE_BSWAP__ 1
5856 // PPC64:#define __INT16_C_SUFFIX__
5857 // PPC64:#define __INT16_FMTd__ "hd"
5858 // PPC64:#define __INT16_FMTi__ "hi"
5859 // PPC64:#define __INT16_MAX__ 32767
5860 // PPC64:#define __INT16_TYPE__ short
5861 // PPC64:#define __INT32_C_SUFFIX__
5862 // PPC64:#define __INT32_FMTd__ "d"
5863 // PPC64:#define __INT32_FMTi__ "i"
5864 // PPC64:#define __INT32_MAX__ 2147483647
5865 // PPC64:#define __INT32_TYPE__ int
5866 // PPC64:#define __INT64_C_SUFFIX__ L
5867 // PPC64:#define __INT64_FMTd__ "ld"
5868 // PPC64:#define __INT64_FMTi__ "li"
5869 // PPC64:#define __INT64_MAX__ 9223372036854775807L
5870 // PPC64:#define __INT64_TYPE__ long int
5871 // PPC64:#define __INT8_C_SUFFIX__
5872 // PPC64:#define __INT8_FMTd__ "hhd"
5873 // PPC64:#define __INT8_FMTi__ "hhi"
5874 // PPC64:#define __INT8_MAX__ 127
5875 // PPC64:#define __INT8_TYPE__ signed char
5876 // PPC64:#define __INTMAX_C_SUFFIX__ L
5877 // PPC64:#define __INTMAX_FMTd__ "ld"
5878 // PPC64:#define __INTMAX_FMTi__ "li"
5879 // PPC64:#define __INTMAX_MAX__ 9223372036854775807L
5880 // PPC64:#define __INTMAX_TYPE__ long int
5881 // PPC64:#define __INTMAX_WIDTH__ 64
5882 // PPC64:#define __INTPTR_FMTd__ "ld"
5883 // PPC64:#define __INTPTR_FMTi__ "li"
5884 // PPC64:#define __INTPTR_MAX__ 9223372036854775807L
5885 // PPC64:#define __INTPTR_TYPE__ long int
5886 // PPC64:#define __INTPTR_WIDTH__ 64
5887 // PPC64:#define __INT_FAST16_FMTd__ "hd"
5888 // PPC64:#define __INT_FAST16_FMTi__ "hi"
5889 // PPC64:#define __INT_FAST16_MAX__ 32767
5890 // PPC64:#define __INT_FAST16_TYPE__ short
5891 // PPC64:#define __INT_FAST32_FMTd__ "d"
5892 // PPC64:#define __INT_FAST32_FMTi__ "i"
5893 // PPC64:#define __INT_FAST32_MAX__ 2147483647
5894 // PPC64:#define __INT_FAST32_TYPE__ int
5895 // PPC64:#define __INT_FAST64_FMTd__ "ld"
5896 // PPC64:#define __INT_FAST64_FMTi__ "li"
5897 // PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
5898 // PPC64:#define __INT_FAST64_TYPE__ long int
5899 // PPC64:#define __INT_FAST8_FMTd__ "hhd"
5900 // PPC64:#define __INT_FAST8_FMTi__ "hhi"
5901 // PPC64:#define __INT_FAST8_MAX__ 127
5902 // PPC64:#define __INT_FAST8_TYPE__ signed char
5903 // PPC64:#define __INT_LEAST16_FMTd__ "hd"
5904 // PPC64:#define __INT_LEAST16_FMTi__ "hi"
5905 // PPC64:#define __INT_LEAST16_MAX__ 32767
5906 // PPC64:#define __INT_LEAST16_TYPE__ short
5907 // PPC64:#define __INT_LEAST32_FMTd__ "d"
5908 // PPC64:#define __INT_LEAST32_FMTi__ "i"
5909 // PPC64:#define __INT_LEAST32_MAX__ 2147483647
5910 // PPC64:#define __INT_LEAST32_TYPE__ int
5911 // PPC64:#define __INT_LEAST64_FMTd__ "ld"
5912 // PPC64:#define __INT_LEAST64_FMTi__ "li"
5913 // PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5914 // PPC64:#define __INT_LEAST64_TYPE__ long int
5915 // PPC64:#define __INT_LEAST8_FMTd__ "hhd"
5916 // PPC64:#define __INT_LEAST8_FMTi__ "hhi"
5917 // PPC64:#define __INT_LEAST8_MAX__ 127
5918 // PPC64:#define __INT_LEAST8_TYPE__ signed char
5919 // PPC64:#define __INT_MAX__ 2147483647
5920 // PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5921 // PPC64:#define __LDBL_DIG__ 31
5922 // PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5923 // PPC64:#define __LDBL_HAS_DENORM__ 1
5924 // PPC64:#define __LDBL_HAS_INFINITY__ 1
5925 // PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
5926 // PPC64:#define __LDBL_MANT_DIG__ 106
5927 // PPC64:#define __LDBL_MAX_10_EXP__ 308
5928 // PPC64:#define __LDBL_MAX_EXP__ 1024
5929 // PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5930 // PPC64:#define __LDBL_MIN_10_EXP__ (-291)
5931 // PPC64:#define __LDBL_MIN_EXP__ (-968)
5932 // PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5933 // PPC64:#define __LONGDOUBLE128 1
5934 // PPC64:#define __LONG_DOUBLE_128__ 1
5935 // PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5936 // PPC64:#define __LONG_MAX__ 9223372036854775807L
5937 // PPC64:#define __LP64__ 1
5938 // PPC64:#define __NATURAL_ALIGNMENT__ 1
5939 // PPC64:#define __POINTER_WIDTH__ 64
5940 // PPC64:#define __POWERPC__ 1
5941 // PPC64:#define __PPC64__ 1
5942 // PPC64:#define __PPC__ 1
5943 // PPC64:#define __PTRDIFF_TYPE__ long int
5944 // PPC64:#define __PTRDIFF_WIDTH__ 64
5945 // PPC64:#define __REGISTER_PREFIX__
5946 // PPC64:#define __SCHAR_MAX__ 127
5947 // PPC64:#define __SHRT_MAX__ 32767
5948 // PPC64:#define __SIG_ATOMIC_MAX__ 2147483647
5949 // PPC64:#define __SIG_ATOMIC_WIDTH__ 32
5950 // PPC64:#define __SIZEOF_DOUBLE__ 8
5951 // PPC64:#define __SIZEOF_FLOAT__ 4
5952 // PPC64:#define __SIZEOF_INT__ 4
5953 // PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
5954 // PPC64:#define __SIZEOF_LONG_LONG__ 8
5955 // PPC64:#define __SIZEOF_LONG__ 8
5956 // PPC64:#define __SIZEOF_POINTER__ 8
5957 // PPC64:#define __SIZEOF_PTRDIFF_T__ 8
5958 // PPC64:#define __SIZEOF_SHORT__ 2
5959 // PPC64:#define __SIZEOF_SIZE_T__ 8
5960 // PPC64:#define __SIZEOF_WCHAR_T__ 4
5961 // PPC64:#define __SIZEOF_WINT_T__ 4
5962 // PPC64:#define __SIZE_MAX__ 18446744073709551615UL
5963 // PPC64:#define __SIZE_TYPE__ long unsigned int
5964 // PPC64:#define __SIZE_WIDTH__ 64
5965 // PPC64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
5966 // PPC64:#define __UINT16_C_SUFFIX__
5967 // PPC64:#define __UINT16_MAX__ 65535
5968 // PPC64:#define __UINT16_TYPE__ unsigned short
5969 // PPC64:#define __UINT32_C_SUFFIX__ U
5970 // PPC64:#define __UINT32_MAX__ 4294967295U
5971 // PPC64:#define __UINT32_TYPE__ unsigned int
5972 // PPC64:#define __UINT64_C_SUFFIX__ UL
5973 // PPC64:#define __UINT64_MAX__ 18446744073709551615UL
5974 // PPC64:#define __UINT64_TYPE__ long unsigned int
5975 // PPC64:#define __UINT8_C_SUFFIX__
5976 // PPC64:#define __UINT8_MAX__ 255
5977 // PPC64:#define __UINT8_TYPE__ unsigned char
5978 // PPC64:#define __UINTMAX_C_SUFFIX__ UL
5979 // PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
5980 // PPC64:#define __UINTMAX_TYPE__ long unsigned int
5981 // PPC64:#define __UINTMAX_WIDTH__ 64
5982 // PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
5983 // PPC64:#define __UINTPTR_TYPE__ long unsigned int
5984 // PPC64:#define __UINTPTR_WIDTH__ 64
5985 // PPC64:#define __UINT_FAST16_MAX__ 65535
5986 // PPC64:#define __UINT_FAST16_TYPE__ unsigned short
5987 // PPC64:#define __UINT_FAST32_MAX__ 4294967295U
5988 // PPC64:#define __UINT_FAST32_TYPE__ unsigned int
5989 // PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5990 // PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
5991 // PPC64:#define __UINT_FAST8_MAX__ 255
5992 // PPC64:#define __UINT_FAST8_TYPE__ unsigned char
5993 // PPC64:#define __UINT_LEAST16_MAX__ 65535
5994 // PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
5995 // PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
5996 // PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
5997 // PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5998 // PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
5999 // PPC64:#define __UINT_LEAST8_MAX__ 255
6000 // PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
6001 // PPC64:#define __USER_LABEL_PREFIX__
6002 // PPC64:#define __WCHAR_MAX__ 2147483647
6003 // PPC64:#define __WCHAR_TYPE__ int
6004 // PPC64:#define __WCHAR_WIDTH__ 32
6005 // PPC64:#define __WINT_TYPE__ int
6006 // PPC64:#define __WINT_WIDTH__ 32
6007 // PPC64:#define __ppc64__ 1
6008 // PPC64:#define __ppc__ 1
6009 //
6010 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64LE %s
6011 //
6012 // PPC64LE:#define _ARCH_PPC 1
6013 // PPC64LE:#define _ARCH_PPC64 1
6014 // PPC64LE:#define _ARCH_PPCGR 1
6015 // PPC64LE:#define _ARCH_PPCSQ 1
6016 // PPC64LE:#define _ARCH_PWR4 1
6017 // PPC64LE:#define _ARCH_PWR5 1
6018 // PPC64LE:#define _ARCH_PWR5X 1
6019 // PPC64LE:#define _ARCH_PWR6 1
6020 // PPC64LE-NOT:#define _ARCH_PWR6X 1
6021 // PPC64LE:#define _ARCH_PWR7 1
6022 // PPC64LE:#define _CALL_ELF 2
6023 // PPC64LE:#define _LITTLE_ENDIAN 1
6024 // PPC64LE:#define _LP64 1
6025 // PPC64LE:#define __BIGGEST_ALIGNMENT__ 16
6026 // PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
6027 // PPC64LE:#define __CHAR16_TYPE__ unsigned short
6028 // PPC64LE:#define __CHAR32_TYPE__ unsigned int
6029 // PPC64LE:#define __CHAR_BIT__ 8
6030 // PPC64LE:#define __CHAR_UNSIGNED__ 1
6031 // PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6032 // PPC64LE:#define __DBL_DIG__ 15
6033 // PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
6034 // PPC64LE:#define __DBL_HAS_DENORM__ 1
6035 // PPC64LE:#define __DBL_HAS_INFINITY__ 1
6036 // PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
6037 // PPC64LE:#define __DBL_MANT_DIG__ 53
6038 // PPC64LE:#define __DBL_MAX_10_EXP__ 308
6039 // PPC64LE:#define __DBL_MAX_EXP__ 1024
6040 // PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
6041 // PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
6042 // PPC64LE:#define __DBL_MIN_EXP__ (-1021)
6043 // PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
6044 // PPC64LE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
6045 // PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6046 // PPC64LE:#define __FLT_DIG__ 6
6047 // PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
6048 // PPC64LE:#define __FLT_EVAL_METHOD__ 0
6049 // PPC64LE:#define __FLT_HAS_DENORM__ 1
6050 // PPC64LE:#define __FLT_HAS_INFINITY__ 1
6051 // PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
6052 // PPC64LE:#define __FLT_MANT_DIG__ 24
6053 // PPC64LE:#define __FLT_MAX_10_EXP__ 38
6054 // PPC64LE:#define __FLT_MAX_EXP__ 128
6055 // PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
6056 // PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
6057 // PPC64LE:#define __FLT_MIN_EXP__ (-125)
6058 // PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
6059 // PPC64LE:#define __FLT_RADIX__ 2
6060 // PPC64LE:#define __HAVE_BSWAP__ 1
6061 // PPC64LE:#define __INT16_C_SUFFIX__
6062 // PPC64LE:#define __INT16_FMTd__ "hd"
6063 // PPC64LE:#define __INT16_FMTi__ "hi"
6064 // PPC64LE:#define __INT16_MAX__ 32767
6065 // PPC64LE:#define __INT16_TYPE__ short
6066 // PPC64LE:#define __INT32_C_SUFFIX__
6067 // PPC64LE:#define __INT32_FMTd__ "d"
6068 // PPC64LE:#define __INT32_FMTi__ "i"
6069 // PPC64LE:#define __INT32_MAX__ 2147483647
6070 // PPC64LE:#define __INT32_TYPE__ int
6071 // PPC64LE:#define __INT64_C_SUFFIX__ L
6072 // PPC64LE:#define __INT64_FMTd__ "ld"
6073 // PPC64LE:#define __INT64_FMTi__ "li"
6074 // PPC64LE:#define __INT64_MAX__ 9223372036854775807L
6075 // PPC64LE:#define __INT64_TYPE__ long int
6076 // PPC64LE:#define __INT8_C_SUFFIX__
6077 // PPC64LE:#define __INT8_FMTd__ "hhd"
6078 // PPC64LE:#define __INT8_FMTi__ "hhi"
6079 // PPC64LE:#define __INT8_MAX__ 127
6080 // PPC64LE:#define __INT8_TYPE__ signed char
6081 // PPC64LE:#define __INTMAX_C_SUFFIX__ L
6082 // PPC64LE:#define __INTMAX_FMTd__ "ld"
6083 // PPC64LE:#define __INTMAX_FMTi__ "li"
6084 // PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
6085 // PPC64LE:#define __INTMAX_TYPE__ long int
6086 // PPC64LE:#define __INTMAX_WIDTH__ 64
6087 // PPC64LE:#define __INTPTR_FMTd__ "ld"
6088 // PPC64LE:#define __INTPTR_FMTi__ "li"
6089 // PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
6090 // PPC64LE:#define __INTPTR_TYPE__ long int
6091 // PPC64LE:#define __INTPTR_WIDTH__ 64
6092 // PPC64LE:#define __INT_FAST16_FMTd__ "hd"
6093 // PPC64LE:#define __INT_FAST16_FMTi__ "hi"
6094 // PPC64LE:#define __INT_FAST16_MAX__ 32767
6095 // PPC64LE:#define __INT_FAST16_TYPE__ short
6096 // PPC64LE:#define __INT_FAST32_FMTd__ "d"
6097 // PPC64LE:#define __INT_FAST32_FMTi__ "i"
6098 // PPC64LE:#define __INT_FAST32_MAX__ 2147483647
6099 // PPC64LE:#define __INT_FAST32_TYPE__ int
6100 // PPC64LE:#define __INT_FAST64_FMTd__ "ld"
6101 // PPC64LE:#define __INT_FAST64_FMTi__ "li"
6102 // PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
6103 // PPC64LE:#define __INT_FAST64_TYPE__ long int
6104 // PPC64LE:#define __INT_FAST8_FMTd__ "hhd"
6105 // PPC64LE:#define __INT_FAST8_FMTi__ "hhi"
6106 // PPC64LE:#define __INT_FAST8_MAX__ 127
6107 // PPC64LE:#define __INT_FAST8_TYPE__ signed char
6108 // PPC64LE:#define __INT_LEAST16_FMTd__ "hd"
6109 // PPC64LE:#define __INT_LEAST16_FMTi__ "hi"
6110 // PPC64LE:#define __INT_LEAST16_MAX__ 32767
6111 // PPC64LE:#define __INT_LEAST16_TYPE__ short
6112 // PPC64LE:#define __INT_LEAST32_FMTd__ "d"
6113 // PPC64LE:#define __INT_LEAST32_FMTi__ "i"
6114 // PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
6115 // PPC64LE:#define __INT_LEAST32_TYPE__ int
6116 // PPC64LE:#define __INT_LEAST64_FMTd__ "ld"
6117 // PPC64LE:#define __INT_LEAST64_FMTi__ "li"
6118 // PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
6119 // PPC64LE:#define __INT_LEAST64_TYPE__ long int
6120 // PPC64LE:#define __INT_LEAST8_FMTd__ "hhd"
6121 // PPC64LE:#define __INT_LEAST8_FMTi__ "hhi"
6122 // PPC64LE:#define __INT_LEAST8_MAX__ 127
6123 // PPC64LE:#define __INT_LEAST8_TYPE__ signed char
6124 // PPC64LE:#define __INT_MAX__ 2147483647
6125 // PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6126 // PPC64LE:#define __LDBL_DIG__ 31
6127 // PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6128 // PPC64LE:#define __LDBL_HAS_DENORM__ 1
6129 // PPC64LE:#define __LDBL_HAS_INFINITY__ 1
6130 // PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
6131 // PPC64LE:#define __LDBL_MANT_DIG__ 106
6132 // PPC64LE:#define __LDBL_MAX_10_EXP__ 308
6133 // PPC64LE:#define __LDBL_MAX_EXP__ 1024
6134 // PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6135 // PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
6136 // PPC64LE:#define __LDBL_MIN_EXP__ (-968)
6137 // PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6138 // PPC64LE:#define __LITTLE_ENDIAN__ 1
6139 // PPC64LE:#define __LONGDOUBLE128 1
6140 // PPC64LE:#define __LONG_DOUBLE_128__ 1
6141 // PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
6142 // PPC64LE:#define __LONG_MAX__ 9223372036854775807L
6143 // PPC64LE:#define __LP64__ 1
6144 // PPC64LE:#define __NATURAL_ALIGNMENT__ 1
6145 // PPC64LE:#define __POINTER_WIDTH__ 64
6146 // PPC64LE:#define __POWERPC__ 1
6147 // PPC64LE:#define __PPC64__ 1
6148 // PPC64LE:#define __PPC__ 1
6149 // PPC64LE:#define __PTRDIFF_TYPE__ long int
6150 // PPC64LE:#define __PTRDIFF_WIDTH__ 64
6151 // PPC64LE:#define __REGISTER_PREFIX__
6152 // PPC64LE:#define __SCHAR_MAX__ 127
6153 // PPC64LE:#define __SHRT_MAX__ 32767
6154 // PPC64LE:#define __SIG_ATOMIC_MAX__ 2147483647
6155 // PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
6156 // PPC64LE:#define __SIZEOF_DOUBLE__ 8
6157 // PPC64LE:#define __SIZEOF_FLOAT__ 4
6158 // PPC64LE:#define __SIZEOF_INT__ 4
6159 // PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
6160 // PPC64LE:#define __SIZEOF_LONG_LONG__ 8
6161 // PPC64LE:#define __SIZEOF_LONG__ 8
6162 // PPC64LE:#define __SIZEOF_POINTER__ 8
6163 // PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
6164 // PPC64LE:#define __SIZEOF_SHORT__ 2
6165 // PPC64LE:#define __SIZEOF_SIZE_T__ 8
6166 // PPC64LE:#define __SIZEOF_WCHAR_T__ 4
6167 // PPC64LE:#define __SIZEOF_WINT_T__ 4
6168 // PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
6169 // PPC64LE:#define __SIZE_TYPE__ long unsigned int
6170 // PPC64LE:#define __SIZE_WIDTH__ 64
6171 // PPC64LE:#define __STRUCT_PARM_ALIGN__ 16
6172 // PPC64LE:#define __UINT16_C_SUFFIX__
6173 // PPC64LE:#define __UINT16_MAX__ 65535
6174 // PPC64LE:#define __UINT16_TYPE__ unsigned short
6175 // PPC64LE:#define __UINT32_C_SUFFIX__ U
6176 // PPC64LE:#define __UINT32_MAX__ 4294967295U
6177 // PPC64LE:#define __UINT32_TYPE__ unsigned int
6178 // PPC64LE:#define __UINT64_C_SUFFIX__ UL
6179 // PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
6180 // PPC64LE:#define __UINT64_TYPE__ long unsigned int
6181 // PPC64LE:#define __UINT8_C_SUFFIX__
6182 // PPC64LE:#define __UINT8_MAX__ 255
6183 // PPC64LE:#define __UINT8_TYPE__ unsigned char
6184 // PPC64LE:#define __UINTMAX_C_SUFFIX__ UL
6185 // PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
6186 // PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
6187 // PPC64LE:#define __UINTMAX_WIDTH__ 64
6188 // PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
6189 // PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
6190 // PPC64LE:#define __UINTPTR_WIDTH__ 64
6191 // PPC64LE:#define __UINT_FAST16_MAX__ 65535
6192 // PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
6193 // PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
6194 // PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
6195 // PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6196 // PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
6197 // PPC64LE:#define __UINT_FAST8_MAX__ 255
6198 // PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
6199 // PPC64LE:#define __UINT_LEAST16_MAX__ 65535
6200 // PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
6201 // PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
6202 // PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
6203 // PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6204 // PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
6205 // PPC64LE:#define __UINT_LEAST8_MAX__ 255
6206 // PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
6207 // PPC64LE:#define __USER_LABEL_PREFIX__
6208 // PPC64LE:#define __WCHAR_MAX__ 2147483647
6209 // PPC64LE:#define __WCHAR_TYPE__ int
6210 // PPC64LE:#define __WCHAR_WIDTH__ 32
6211 // PPC64LE:#define __WINT_TYPE__ int
6212 // PPC64LE:#define __WINT_WIDTH__ 32
6213 // PPC64LE:#define __ppc64__ 1
6214 // PPC64LE:#define __ppc__ 1
6215 //
6216 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu a2q -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCA2Q %s
6217 //
6218 // PPCA2Q:#define _ARCH_A2 1
6219 // PPCA2Q:#define _ARCH_A2Q 1
6220 // PPCA2Q:#define _ARCH_PPC 1
6221 // PPCA2Q:#define _ARCH_PPC64 1
6222 // PPCA2Q:#define _ARCH_QP 1
6223 //
6224 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-bgq-linux -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCBGQ %s
6225 //
6226 // PPCBGQ:#define __THW_BLUEGENE__ 1
6227 // PPCBGQ:#define __TOS_BGQ__ 1
6228 // PPCBGQ:#define __bg__ 1
6229 // PPCBGQ:#define __bgq__ 1
6230 //
6231 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu 630 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC630 %s
6232 //
6233 // PPC630:#define _ARCH_630 1
6234 // PPC630:#define _ARCH_PPC 1
6235 // PPC630:#define _ARCH_PPC64 1
6236 // PPC630:#define _ARCH_PPCGR 1
6237 //
6238 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr3 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR3 %s
6239 //
6240 // PPCPWR3:#define _ARCH_PPC 1
6241 // PPCPWR3:#define _ARCH_PPC64 1
6242 // PPCPWR3:#define _ARCH_PPCGR 1
6243 //
6244 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power3 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER3 %s
6245 //
6246 // PPCPOWER3:#define _ARCH_PPC 1
6247 // PPCPOWER3:#define _ARCH_PPC64 1
6248 // PPCPOWER3:#define _ARCH_PPCGR 1
6249 //
6250 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr4 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR4 %s
6251 //
6252 // PPCPWR4:#define _ARCH_PPC 1
6253 // PPCPWR4:#define _ARCH_PPC64 1
6254 // PPCPWR4:#define _ARCH_PPCGR 1
6255 // PPCPWR4:#define _ARCH_PPCSQ 1
6256 // PPCPWR4:#define _ARCH_PWR4 1
6257 //
6258 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power4 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER4 %s
6259 //
6260 // PPCPOWER4:#define _ARCH_PPC 1
6261 // PPCPOWER4:#define _ARCH_PPC64 1
6262 // PPCPOWER4:#define _ARCH_PPCGR 1
6263 // PPCPOWER4:#define _ARCH_PPCSQ 1
6264 // PPCPOWER4:#define _ARCH_PWR4 1
6265 //
6266 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR5 %s
6267 //
6268 // PPCPWR5:#define _ARCH_PPC 1
6269 // PPCPWR5:#define _ARCH_PPC64 1
6270 // PPCPWR5:#define _ARCH_PPCGR 1
6271 // PPCPWR5:#define _ARCH_PPCSQ 1
6272 // PPCPWR5:#define _ARCH_PWR4 1
6273 // PPCPWR5:#define _ARCH_PWR5 1
6274 //
6275 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power5 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER5 %s
6276 //
6277 // PPCPOWER5:#define _ARCH_PPC 1
6278 // PPCPOWER5:#define _ARCH_PPC64 1
6279 // PPCPOWER5:#define _ARCH_PPCGR 1
6280 // PPCPOWER5:#define _ARCH_PPCSQ 1
6281 // PPCPOWER5:#define _ARCH_PWR4 1
6282 // PPCPOWER5:#define _ARCH_PWR5 1
6283 //
6284 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR5X %s
6285 //
6286 // PPCPWR5X:#define _ARCH_PPC 1
6287 // PPCPWR5X:#define _ARCH_PPC64 1
6288 // PPCPWR5X:#define _ARCH_PPCGR 1
6289 // PPCPWR5X:#define _ARCH_PPCSQ 1
6290 // PPCPWR5X:#define _ARCH_PWR4 1
6291 // PPCPWR5X:#define _ARCH_PWR5 1
6292 // PPCPWR5X:#define _ARCH_PWR5X 1
6293 //
6294 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power5x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER5X %s
6295 //
6296 // PPCPOWER5X:#define _ARCH_PPC 1
6297 // PPCPOWER5X:#define _ARCH_PPC64 1
6298 // PPCPOWER5X:#define _ARCH_PPCGR 1
6299 // PPCPOWER5X:#define _ARCH_PPCSQ 1
6300 // PPCPOWER5X:#define _ARCH_PWR4 1
6301 // PPCPOWER5X:#define _ARCH_PWR5 1
6302 // PPCPOWER5X:#define _ARCH_PWR5X 1
6303 //
6304 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr6 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR6 %s
6305 //
6306 // PPCPWR6:#define _ARCH_PPC 1
6307 // PPCPWR6:#define _ARCH_PPC64 1
6308 // PPCPWR6:#define _ARCH_PPCGR 1
6309 // PPCPWR6:#define _ARCH_PPCSQ 1
6310 // PPCPWR6:#define _ARCH_PWR4 1
6311 // PPCPWR6:#define _ARCH_PWR5 1
6312 // PPCPWR6:#define _ARCH_PWR5X 1
6313 // PPCPWR6:#define _ARCH_PWR6 1
6314 //
6315 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power6 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER6 %s
6316 //
6317 // PPCPOWER6:#define _ARCH_PPC 1
6318 // PPCPOWER6:#define _ARCH_PPC64 1
6319 // PPCPOWER6:#define _ARCH_PPCGR 1
6320 // PPCPOWER6:#define _ARCH_PPCSQ 1
6321 // PPCPOWER6:#define _ARCH_PWR4 1
6322 // PPCPOWER6:#define _ARCH_PWR5 1
6323 // PPCPOWER6:#define _ARCH_PWR5X 1
6324 // PPCPOWER6:#define _ARCH_PWR6 1
6325 //
6326 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr6x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR6X %s
6327 //
6328 // PPCPWR6X:#define _ARCH_PPC 1
6329 // PPCPWR6X:#define _ARCH_PPC64 1
6330 // PPCPWR6X:#define _ARCH_PPCGR 1
6331 // PPCPWR6X:#define _ARCH_PPCSQ 1
6332 // PPCPWR6X:#define _ARCH_PWR4 1
6333 // PPCPWR6X:#define _ARCH_PWR5 1
6334 // PPCPWR6X:#define _ARCH_PWR5X 1
6335 // PPCPWR6X:#define _ARCH_PWR6 1
6336 // PPCPWR6X:#define _ARCH_PWR6X 1
6337 //
6338 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power6x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER6X %s
6339 //
6340 // PPCPOWER6X:#define _ARCH_PPC 1
6341 // PPCPOWER6X:#define _ARCH_PPC64 1
6342 // PPCPOWER6X:#define _ARCH_PPCGR 1
6343 // PPCPOWER6X:#define _ARCH_PPCSQ 1
6344 // PPCPOWER6X:#define _ARCH_PWR4 1
6345 // PPCPOWER6X:#define _ARCH_PWR5 1
6346 // PPCPOWER6X:#define _ARCH_PWR5X 1
6347 // PPCPOWER6X:#define _ARCH_PWR6 1
6348 // PPCPOWER6X:#define _ARCH_PWR6X 1
6349 //
6350 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR7 %s
6351 //
6352 // PPCPWR7:#define _ARCH_PPC 1
6353 // PPCPWR7:#define _ARCH_PPC64 1
6354 // PPCPWR7:#define _ARCH_PPCGR 1
6355 // PPCPWR7:#define _ARCH_PPCSQ 1
6356 // PPCPWR7:#define _ARCH_PWR4 1
6357 // PPCPWR7:#define _ARCH_PWR5 1
6358 // PPCPWR7:#define _ARCH_PWR5X 1
6359 // PPCPWR7:#define _ARCH_PWR6 1
6360 // PPCPWR7-NOT:#define _ARCH_PWR6X 1
6361 // PPCPWR7:#define _ARCH_PWR7 1
6362 //
6363 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER7 %s
6364 //
6365 // PPCPOWER7:#define _ARCH_PPC 1
6366 // PPCPOWER7:#define _ARCH_PPC64 1
6367 // PPCPOWER7:#define _ARCH_PPCGR 1
6368 // PPCPOWER7:#define _ARCH_PPCSQ 1
6369 // PPCPOWER7:#define _ARCH_PWR4 1
6370 // PPCPOWER7:#define _ARCH_PWR5 1
6371 // PPCPOWER7:#define _ARCH_PWR5X 1
6372 // PPCPOWER7:#define _ARCH_PWR6 1
6373 // PPCPOWER7-NOT:#define _ARCH_PWR6X 1
6374 // PPCPOWER7:#define _ARCH_PWR7 1
6375 //
6376 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr8 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR8 %s
6377 //
6378 // PPCPWR8:#define _ARCH_PPC 1
6379 // PPCPWR8:#define _ARCH_PPC64 1
6380 // PPCPWR8:#define _ARCH_PPCGR 1
6381 // PPCPWR8:#define _ARCH_PPCSQ 1
6382 // PPCPWR8:#define _ARCH_PWR4 1
6383 // PPCPWR8:#define _ARCH_PWR5 1
6384 // PPCPWR8:#define _ARCH_PWR5X 1
6385 // PPCPWR8:#define _ARCH_PWR6 1
6386 // PPCPWR8-NOT:#define _ARCH_PWR6X 1
6387 // PPCPWR8:#define _ARCH_PWR7 1
6388 // PPCPWR8:#define _ARCH_PWR8 1
6389 //
6390 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power8 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER8 %s
6391 //
6392 // ppc64le also defaults to power8.
6393 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-none-none -target-cpu ppc64le -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER8 %s
6394 //
6395 // PPCPOWER8:#define _ARCH_PPC 1
6396 // PPCPOWER8:#define _ARCH_PPC64 1
6397 // PPCPOWER8:#define _ARCH_PPCGR 1
6398 // PPCPOWER8:#define _ARCH_PPCSQ 1
6399 // PPCPOWER8:#define _ARCH_PWR4 1
6400 // PPCPOWER8:#define _ARCH_PWR5 1
6401 // PPCPOWER8:#define _ARCH_PWR5X 1
6402 // PPCPOWER8:#define _ARCH_PWR6 1
6403 // PPCPOWER8-NOT:#define _ARCH_PWR6X 1
6404 // PPCPOWER8:#define _ARCH_PWR7 1
6405 // PPCPOWER8:#define _ARCH_PWR8 1
6406 //
6407 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr9 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR9 %s
6408 //
6409 // PPCPWR9:#define _ARCH_PPC 1
6410 // PPCPWR9:#define _ARCH_PPC64 1
6411 // PPCPWR9:#define _ARCH_PPCGR 1
6412 // PPCPWR9:#define _ARCH_PPCSQ 1
6413 // PPCPWR9:#define _ARCH_PWR4 1
6414 // PPCPWR9:#define _ARCH_PWR5 1
6415 // PPCPWR9:#define _ARCH_PWR5X 1
6416 // PPCPWR9:#define _ARCH_PWR6 1
6417 // PPCPWR9-NOT:#define _ARCH_PWR6X 1
6418 // PPCPWR9:#define _ARCH_PWR7 1
6419 // PPCPWR9:#define _ARCH_PWR9 1
6420 //
6421 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power9 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER9 %s
6422 //
6423 // PPCPOWER9:#define _ARCH_PPC 1
6424 // PPCPOWER9:#define _ARCH_PPC64 1
6425 // PPCPOWER9:#define _ARCH_PPCGR 1
6426 // PPCPOWER9:#define _ARCH_PPCSQ 1
6427 // PPCPOWER9:#define _ARCH_PWR4 1
6428 // PPCPOWER9:#define _ARCH_PWR5 1
6429 // PPCPOWER9:#define _ARCH_PWR5X 1
6430 // PPCPOWER9:#define _ARCH_PWR6 1
6431 // PPCPOWER9-NOT:#define _ARCH_PWR6X 1
6432 // PPCPOWER9:#define _ARCH_PWR7 1
6433 // PPCPOWER9:#define _ARCH_PWR9 1
6434 //
6435 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-feature +float128 -target-cpu power9 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-FLOAT128 %s
6436 // PPC-FLOAT128:#define __FLOAT128__ 1
6437 //
6438 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-ibm-aix7.1.0.0 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-AIX %s
6439 //
6440 // PPC64-AIX:#define _AIX 1
6441 // PPC64-AIX:#define _ARCH_PPC 1
6442 // PPC64-AIX:#define _ARCH_PPC64 1
6443 // PPC64-AIX:#define _BIG_ENDIAN 1
6444 // PPC64-AIX:#define _IBMR2 1
6445 // PPC64-AIX-NOT:#define _ILP32 1
6446 // PPC64-AIX:#define _LONG_LONG 1
6447 // PPC64-AIX:#define _LP64 1
6448 // PPC64-AIX:#define _POWER 1
6449 // PPC64-AIX:#define __64BIT__ 1
6450 // PPC64-AIX:#define __BIGGEST_ALIGNMENT__ 8
6451 // PPC64-AIX:#define __BIG_ENDIAN__ 1
6452 // PPC64-AIX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6453 // PPC64-AIX:#define __CHAR16_TYPE__ unsigned short
6454 // PPC64-AIX:#define __CHAR32_TYPE__ unsigned int
6455 // PPC64-AIX:#define __CHAR_BIT__ 8
6456 // PPC64-AIX:#define __CHAR_UNSIGNED__ 1
6457 // PPC64-AIX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6458 // PPC64-AIX:#define __DBL_DIG__ 15
6459 // PPC64-AIX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6460 // PPC64-AIX:#define __DBL_HAS_DENORM__ 1
6461 // PPC64-AIX:#define __DBL_HAS_INFINITY__ 1
6462 // PPC64-AIX:#define __DBL_HAS_QUIET_NAN__ 1
6463 // PPC64-AIX:#define __DBL_MANT_DIG__ 53
6464 // PPC64-AIX:#define __DBL_MAX_10_EXP__ 308
6465 // PPC64-AIX:#define __DBL_MAX_EXP__ 1024
6466 // PPC64-AIX:#define __DBL_MAX__ 1.7976931348623157e+308
6467 // PPC64-AIX:#define __DBL_MIN_10_EXP__ (-307)
6468 // PPC64-AIX:#define __DBL_MIN_EXP__ (-1021)
6469 // PPC64-AIX:#define __DBL_MIN__ 2.2250738585072014e-308
6470 // PPC64-AIX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
6471 // PPC64-AIX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6472 // PPC64-AIX:#define __FLT_DIG__ 6
6473 // PPC64-AIX:#define __FLT_EPSILON__ 1.19209290e-7F
6474 // PPC64-AIX:#define __FLT_EVAL_METHOD__ 1
6475 // PPC64-AIX:#define __FLT_HAS_DENORM__ 1
6476 // PPC64-AIX:#define __FLT_HAS_INFINITY__ 1
6477 // PPC64-AIX:#define __FLT_HAS_QUIET_NAN__ 1
6478 // PPC64-AIX:#define __FLT_MANT_DIG__ 24
6479 // PPC64-AIX:#define __FLT_MAX_10_EXP__ 38
6480 // PPC64-AIX:#define __FLT_MAX_EXP__ 128
6481 // PPC64-AIX:#define __FLT_MAX__ 3.40282347e+38F
6482 // PPC64-AIX:#define __FLT_MIN_10_EXP__ (-37)
6483 // PPC64-AIX:#define __FLT_MIN_EXP__ (-125)
6484 // PPC64-AIX:#define __FLT_MIN__ 1.17549435e-38F
6485 // PPC64-AIX:#define __FLT_RADIX__ 2
6486 // PPC64-AIX-NOT:#define __ILP32__ 1
6487 // PPC64-AIX:#define __INT16_C_SUFFIX__
6488 // PPC64-AIX:#define __INT16_FMTd__ "hd"
6489 // PPC64-AIX:#define __INT16_FMTi__ "hi"
6490 // PPC64-AIX:#define __INT16_MAX__ 32767
6491 // PPC64-AIX:#define __INT16_TYPE__ short
6492 // PPC64-AIX:#define __INT32_C_SUFFIX__
6493 // PPC64-AIX:#define __INT32_FMTd__ "d"
6494 // PPC64-AIX:#define __INT32_FMTi__ "i"
6495 // PPC64-AIX:#define __INT32_MAX__ 2147483647
6496 // PPC64-AIX:#define __INT32_TYPE__ int
6497 // PPC64-AIX:#define __INT64_C_SUFFIX__ L
6498 // PPC64-AIX:#define __INT64_FMTd__ "ld"
6499 // PPC64-AIX:#define __INT64_FMTi__ "li"
6500 // PPC64-AIX:#define __INT64_MAX__ 9223372036854775807L
6501 // PPC64-AIX:#define __INT64_TYPE__ long int
6502 // PPC64-AIX:#define __INT8_C_SUFFIX__
6503 // PPC64-AIX:#define __INT8_FMTd__ "hhd"
6504 // PPC64-AIX:#define __INT8_FMTi__ "hhi"
6505 // PPC64-AIX:#define __INT8_MAX__ 127
6506 // PPC64-AIX:#define __INT8_TYPE__ signed char
6507 // PPC64-AIX:#define __INTMAX_C_SUFFIX__ L
6508 // PPC64-AIX:#define __INTMAX_FMTd__ "ld"
6509 // PPC64-AIX:#define __INTMAX_FMTi__ "li"
6510 // PPC64-AIX:#define __INTMAX_MAX__ 9223372036854775807L
6511 // PPC64-AIX:#define __INTMAX_TYPE__ long int
6512 // PPC64-AIX:#define __INTMAX_WIDTH__ 64
6513 // PPC64-AIX:#define __INTPTR_FMTd__ "ld"
6514 // PPC64-AIX:#define __INTPTR_FMTi__ "li"
6515 // PPC64-AIX:#define __INTPTR_MAX__ 9223372036854775807L
6516 // PPC64-AIX:#define __INTPTR_TYPE__ long int
6517 // PPC64-AIX:#define __INTPTR_WIDTH__ 64
6518 // PPC64-AIX:#define __INT_FAST16_FMTd__ "hd"
6519 // PPC64-AIX:#define __INT_FAST16_FMTi__ "hi"
6520 // PPC64-AIX:#define __INT_FAST16_MAX__ 32767
6521 // PPC64-AIX:#define __INT_FAST16_TYPE__ short
6522 // PPC64-AIX:#define __INT_FAST32_FMTd__ "d"
6523 // PPC64-AIX:#define __INT_FAST32_FMTi__ "i"
6524 // PPC64-AIX:#define __INT_FAST32_MAX__ 2147483647
6525 // PPC64-AIX:#define __INT_FAST32_TYPE__ int
6526 // PPC64-AIX:#define __INT_FAST64_FMTd__ "ld"
6527 // PPC64-AIX:#define __INT_FAST64_FMTi__ "li"
6528 // PPC64-AIX:#define __INT_FAST64_MAX__ 9223372036854775807L
6529 // PPC64-AIX:#define __INT_FAST64_TYPE__ long int
6530 // PPC64-AIX:#define __INT_FAST8_FMTd__ "hhd"
6531 // PPC64-AIX:#define __INT_FAST8_FMTi__ "hhi"
6532 // PPC64-AIX:#define __INT_FAST8_MAX__ 127
6533 // PPC64-AIX:#define __INT_FAST8_TYPE__ signed char
6534 // PPC64-AIX:#define __INT_LEAST16_FMTd__ "hd"
6535 // PPC64-AIX:#define __INT_LEAST16_FMTi__ "hi"
6536 // PPC64-AIX:#define __INT_LEAST16_MAX__ 32767
6537 // PPC64-AIX:#define __INT_LEAST16_TYPE__ short
6538 // PPC64-AIX:#define __INT_LEAST32_FMTd__ "d"
6539 // PPC64-AIX:#define __INT_LEAST32_FMTi__ "i"
6540 // PPC64-AIX:#define __INT_LEAST32_MAX__ 2147483647
6541 // PPC64-AIX:#define __INT_LEAST32_TYPE__ int
6542 // PPC64-AIX:#define __INT_LEAST64_FMTd__ "ld"
6543 // PPC64-AIX:#define __INT_LEAST64_FMTi__ "li"
6544 // PPC64-AIX:#define __INT_LEAST64_MAX__ 9223372036854775807L
6545 // PPC64-AIX:#define __INT_LEAST64_TYPE__ long int
6546 // PPC64-AIX:#define __INT_LEAST8_FMTd__ "hhd"
6547 // PPC64-AIX:#define __INT_LEAST8_FMTi__ "hhi"
6548 // PPC64-AIX:#define __INT_LEAST8_MAX__ 127
6549 // PPC64-AIX:#define __INT_LEAST8_TYPE__ signed char
6550 // PPC64-AIX:#define __INT_MAX__ 2147483647
6551 // PPC64-AIX:#define __LDBL_DECIMAL_DIG__ 17
6552 // PPC64-AIX:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
6553 // PPC64-AIX:#define __LDBL_DIG__ 15
6554 // PPC64-AIX:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
6555 // PPC64-AIX:#define __LDBL_HAS_DENORM__ 1
6556 // PPC64-AIX:#define __LDBL_HAS_INFINITY__ 1
6557 // PPC64-AIX:#define __LDBL_HAS_QUIET_NAN__ 1
6558 // PPC64-AIX:#define __LDBL_MANT_DIG__ 53
6559 // PPC64-AIX:#define __LDBL_MAX_10_EXP__ 308
6560 // PPC64-AIX:#define __LDBL_MAX_EXP__ 1024
6561 // PPC64-AIX:#define __LDBL_MAX__ 1.7976931348623157e+308L
6562 // PPC64-AIX:#define __LDBL_MIN_10_EXP__ (-307)
6563 // PPC64-AIX:#define __LDBL_MIN_EXP__ (-1021)
6564 // PPC64-AIX:#define __LDBL_MIN__ 2.2250738585072014e-308L
6565 // PPC64-AIX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6566 // PPC64-AIX:#define __LONG_MAX__ 9223372036854775807L
6567 // PPC64-AIX:#define __LP64__ 1
6568 // PPC64-AIX-NOT:#define __NATURAL_ALIGNMENT__ 1
6569 // PPC64-AIX:#define __POINTER_WIDTH__ 64
6570 // PPC64-AIX:#define __POWERPC__ 1
6571 // PPC64-AIX:#define __PPC64__ 1
6572 // PPC64-AIX:#define __PPC__ 1
6573 // PPC64-AIX:#define __PTRDIFF_TYPE__ long int
6574 // PPC64-AIX:#define __PTRDIFF_WIDTH__ 64
6575 // PPC64-AIX:#define __REGISTER_PREFIX__
6576 // PPC64-AIX:#define __SCHAR_MAX__ 127
6577 // PPC64-AIX:#define __SHRT_MAX__ 32767
6578 // PPC64-AIX:#define __SIG_ATOMIC_MAX__ 2147483647
6579 // PPC64-AIX:#define __SIG_ATOMIC_WIDTH__ 32
6580 // PPC64-AIX:#define __SIZEOF_DOUBLE__ 8
6581 // PPC64-AIX:#define __SIZEOF_FLOAT__ 4
6582 // PPC64-AIX:#define __SIZEOF_INT__ 4
6583 // PPC64-AIX:#define __SIZEOF_LONG_DOUBLE__ 8
6584 // PPC64-AIX:#define __SIZEOF_LONG_LONG__ 8
6585 // PPC64-AIX:#define __SIZEOF_LONG__ 8
6586 // PPC64-AIX:#define __SIZEOF_POINTER__ 8
6587 // PPC64-AIX:#define __SIZEOF_PTRDIFF_T__ 8
6588 // PPC64-AIX:#define __SIZEOF_SHORT__ 2
6589 // PPC64-AIX:#define __SIZEOF_SIZE_T__ 8
6590 // PPC64-AIX:#define __SIZEOF_WCHAR_T__ 4
6591 // PPC64-AIX:#define __SIZEOF_WINT_T__ 4
6592 // PPC64-AIX:#define __SIZE_MAX__ 18446744073709551615UL
6593 // PPC64-AIX:#define __SIZE_TYPE__ long unsigned int
6594 // PPC64-AIX:#define __SIZE_WIDTH__ 64
6595 // PPC64-AIX:#define __UINT16_C_SUFFIX__
6596 // PPC64-AIX:#define __UINT16_MAX__ 65535
6597 // PPC64-AIX:#define __UINT16_TYPE__ unsigned short
6598 // PPC64-AIX:#define __UINT32_C_SUFFIX__ U
6599 // PPC64-AIX:#define __UINT32_MAX__ 4294967295U
6600 // PPC64-AIX:#define __UINT32_TYPE__ unsigned int
6601 // PPC64-AIX:#define __UINT64_C_SUFFIX__ UL
6602 // PPC64-AIX:#define __UINT64_MAX__ 18446744073709551615UL
6603 // PPC64-AIX:#define __UINT64_TYPE__ long unsigned int
6604 // PPC64-AIX:#define __UINT8_C_SUFFIX__
6605 // PPC64-AIX:#define __UINT8_MAX__ 255
6606 // PPC64-AIX:#define __UINT8_TYPE__ unsigned char
6607 // PPC64-AIX:#define __UINTMAX_C_SUFFIX__ UL
6608 // PPC64-AIX:#define __UINTMAX_MAX__ 18446744073709551615UL
6609 // PPC64-AIX:#define __UINTMAX_TYPE__ long unsigned int
6610 // PPC64-AIX:#define __UINTMAX_WIDTH__ 64
6611 // PPC64-AIX:#define __UINTPTR_MAX__ 18446744073709551615UL
6612 // PPC64-AIX:#define __UINTPTR_TYPE__ long unsigned int
6613 // PPC64-AIX:#define __UINTPTR_WIDTH__ 64
6614 // PPC64-AIX:#define __UINT_FAST16_MAX__ 65535
6615 // PPC64-AIX:#define __UINT_FAST16_TYPE__ unsigned short
6616 // PPC64-AIX:#define __UINT_FAST32_MAX__ 4294967295U
6617 // PPC64-AIX:#define __UINT_FAST32_TYPE__ unsigned int
6618 // PPC64-AIX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6619 // PPC64-AIX:#define __UINT_FAST64_TYPE__ long unsigned int
6620 // PPC64-AIX:#define __UINT_FAST8_MAX__ 255
6621 // PPC64-AIX:#define __UINT_FAST8_TYPE__ unsigned char
6622 // PPC64-AIX:#define __UINT_LEAST16_MAX__ 65535
6623 // PPC64-AIX:#define __UINT_LEAST16_TYPE__ unsigned short
6624 // PPC64-AIX:#define __UINT_LEAST32_MAX__ 4294967295U
6625 // PPC64-AIX:#define __UINT_LEAST32_TYPE__ unsigned int
6626 // PPC64-AIX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6627 // PPC64-AIX:#define __UINT_LEAST64_TYPE__ long unsigned int
6628 // PPC64-AIX:#define __UINT_LEAST8_MAX__ 255
6629 // PPC64-AIX:#define __UINT_LEAST8_TYPE__ unsigned char
6630 // PPC64-AIX:#define __USER_LABEL_PREFIX__
6631 // PPC64-AIX:#define __WCHAR_MAX__ 4294967295U
6632 // PPC64-AIX:#define __WCHAR_TYPE__ unsigned int
6633 // PPC64-AIX:#define __WCHAR_WIDTH__ 32
6634 // PPC64-AIX:#define __WINT_TYPE__ int
6635 // PPC64-AIX:#define __WINT_WIDTH__ 32
6636 // PPC64-AIX:#define __powerpc64__ 1
6637 // PPC64-AIX:#define __powerpc__ 1
6638 // PPC64-AIX:#define __ppc64__ 1
6639 // PPC64-AIX:#define __ppc__ 1
6640 //
6641 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-LINUX %s
6642 //
6643 // PPC64-LINUX:#define _ARCH_PPC 1
6644 // PPC64-LINUX:#define _ARCH_PPC64 1
6645 // PPC64-LINUX:#define _BIG_ENDIAN 1
6646 // PPC64-LINUX:#define _CALL_LINUX 1
6647 // PPC64-LINUX:#define _LP64 1
6648 // PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
6649 // PPC64-LINUX:#define __BIG_ENDIAN__ 1
6650 // PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6651 // PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
6652 // PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
6653 // PPC64-LINUX:#define __CHAR_BIT__ 8
6654 // PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
6655 // PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6656 // PPC64-LINUX:#define __DBL_DIG__ 15
6657 // PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6658 // PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
6659 // PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
6660 // PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6661 // PPC64-LINUX:#define __DBL_MANT_DIG__ 53
6662 // PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
6663 // PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
6664 // PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6665 // PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6666 // PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
6667 // PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
6668 // PPC64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
6669 // PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6670 // PPC64-LINUX:#define __FLT_DIG__ 6
6671 // PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6672 // PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
6673 // PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
6674 // PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
6675 // PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6676 // PPC64-LINUX:#define __FLT_MANT_DIG__ 24
6677 // PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
6678 // PPC64-LINUX:#define __FLT_MAX_EXP__ 128
6679 // PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6680 // PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6681 // PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
6682 // PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6683 // PPC64-LINUX:#define __FLT_RADIX__ 2
6684 // PPC64-LINUX:#define __HAVE_BSWAP__ 1
6685 // PPC64-LINUX:#define __INT16_C_SUFFIX__
6686 // PPC64-LINUX:#define __INT16_FMTd__ "hd"
6687 // PPC64-LINUX:#define __INT16_FMTi__ "hi"
6688 // PPC64-LINUX:#define __INT16_MAX__ 32767
6689 // PPC64-LINUX:#define __INT16_TYPE__ short
6690 // PPC64-LINUX:#define __INT32_C_SUFFIX__
6691 // PPC64-LINUX:#define __INT32_FMTd__ "d"
6692 // PPC64-LINUX:#define __INT32_FMTi__ "i"
6693 // PPC64-LINUX:#define __INT32_MAX__ 2147483647
6694 // PPC64-LINUX:#define __INT32_TYPE__ int
6695 // PPC64-LINUX:#define __INT64_C_SUFFIX__ L
6696 // PPC64-LINUX:#define __INT64_FMTd__ "ld"
6697 // PPC64-LINUX:#define __INT64_FMTi__ "li"
6698 // PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
6699 // PPC64-LINUX:#define __INT64_TYPE__ long int
6700 // PPC64-LINUX:#define __INT8_C_SUFFIX__
6701 // PPC64-LINUX:#define __INT8_FMTd__ "hhd"
6702 // PPC64-LINUX:#define __INT8_FMTi__ "hhi"
6703 // PPC64-LINUX:#define __INT8_MAX__ 127
6704 // PPC64-LINUX:#define __INT8_TYPE__ signed char
6705 // PPC64-LINUX:#define __INTMAX_C_SUFFIX__ L
6706 // PPC64-LINUX:#define __INTMAX_FMTd__ "ld"
6707 // PPC64-LINUX:#define __INTMAX_FMTi__ "li"
6708 // PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
6709 // PPC64-LINUX:#define __INTMAX_TYPE__ long int
6710 // PPC64-LINUX:#define __INTMAX_WIDTH__ 64
6711 // PPC64-LINUX:#define __INTPTR_FMTd__ "ld"
6712 // PPC64-LINUX:#define __INTPTR_FMTi__ "li"
6713 // PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
6714 // PPC64-LINUX:#define __INTPTR_TYPE__ long int
6715 // PPC64-LINUX:#define __INTPTR_WIDTH__ 64
6716 // PPC64-LINUX:#define __INT_FAST16_FMTd__ "hd"
6717 // PPC64-LINUX:#define __INT_FAST16_FMTi__ "hi"
6718 // PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
6719 // PPC64-LINUX:#define __INT_FAST16_TYPE__ short
6720 // PPC64-LINUX:#define __INT_FAST32_FMTd__ "d"
6721 // PPC64-LINUX:#define __INT_FAST32_FMTi__ "i"
6722 // PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
6723 // PPC64-LINUX:#define __INT_FAST32_TYPE__ int
6724 // PPC64-LINUX:#define __INT_FAST64_FMTd__ "ld"
6725 // PPC64-LINUX:#define __INT_FAST64_FMTi__ "li"
6726 // PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
6727 // PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
6728 // PPC64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6729 // PPC64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
6730 // PPC64-LINUX:#define __INT_FAST8_MAX__ 127
6731 // PPC64-LINUX:#define __INT_FAST8_TYPE__ signed char
6732 // PPC64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6733 // PPC64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
6734 // PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
6735 // PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
6736 // PPC64-LINUX:#define __INT_LEAST32_FMTd__ "d"
6737 // PPC64-LINUX:#define __INT_LEAST32_FMTi__ "i"
6738 // PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6739 // PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
6740 // PPC64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
6741 // PPC64-LINUX:#define __INT_LEAST64_FMTi__ "li"
6742 // PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
6743 // PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
6744 // PPC64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6745 // PPC64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
6746 // PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
6747 // PPC64-LINUX:#define __INT_LEAST8_TYPE__ signed char
6748 // PPC64-LINUX:#define __INT_MAX__ 2147483647
6749 // PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6750 // PPC64-LINUX:#define __LDBL_DIG__ 31
6751 // PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6752 // PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
6753 // PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
6754 // PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6755 // PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
6756 // PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
6757 // PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
6758 // PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6759 // PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6760 // PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
6761 // PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6762 // PPC64-LINUX:#define __LONGDOUBLE128 1
6763 // PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
6764 // PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6765 // PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
6766 // PPC64-LINUX:#define __LP64__ 1
6767 // PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
6768 // PPC64-LINUX:#define __POINTER_WIDTH__ 64
6769 // PPC64-LINUX:#define __POWERPC__ 1
6770 // PPC64-LINUX:#define __PPC64__ 1
6771 // PPC64-LINUX:#define __PPC__ 1
6772 // PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
6773 // PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
6774 // PPC64-LINUX:#define __REGISTER_PREFIX__
6775 // PPC64-LINUX:#define __SCHAR_MAX__ 127
6776 // PPC64-LINUX:#define __SHRT_MAX__ 32767
6777 // PPC64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
6778 // PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6779 // PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
6780 // PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
6781 // PPC64-LINUX:#define __SIZEOF_INT__ 4
6782 // PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6783 // PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
6784 // PPC64-LINUX:#define __SIZEOF_LONG__ 8
6785 // PPC64-LINUX:#define __SIZEOF_POINTER__ 8
6786 // PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
6787 // PPC64-LINUX:#define __SIZEOF_SHORT__ 2
6788 // PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
6789 // PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
6790 // PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
6791 // PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
6792 // PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
6793 // PPC64-LINUX:#define __SIZE_WIDTH__ 64
6794 // PPC64-LINUX:#define __UINT16_C_SUFFIX__
6795 // PPC64-LINUX:#define __UINT16_MAX__ 65535
6796 // PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
6797 // PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
6798 // PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
6799 // PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
6800 // PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
6801 // PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
6802 // PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
6803 // PPC64-LINUX:#define __UINT8_C_SUFFIX__
6804 // PPC64-LINUX:#define __UINT8_MAX__ 255
6805 // PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
6806 // PPC64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
6807 // PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
6808 // PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
6809 // PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
6810 // PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
6811 // PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
6812 // PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
6813 // PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535
6814 // PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6815 // PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6816 // PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6817 // PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6818 // PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
6819 // PPC64-LINUX:#define __UINT_FAST8_MAX__ 255
6820 // PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
6821 // PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535
6822 // PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6823 // PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6824 // PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6825 // PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6826 // PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
6827 // PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255
6828 // PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
6829 // PPC64-LINUX:#define __USER_LABEL_PREFIX__
6830 // PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
6831 // PPC64-LINUX:#define __WCHAR_TYPE__ int
6832 // PPC64-LINUX:#define __WCHAR_WIDTH__ 32
6833 // PPC64-LINUX:#define __WINT_TYPE__ unsigned int
6834 // PPC64-LINUX:#define __WINT_UNSIGNED__ 1
6835 // PPC64-LINUX:#define __WINT_WIDTH__ 32
6836 // PPC64-LINUX:#define __powerpc64__ 1
6837 // PPC64-LINUX:#define __powerpc__ 1
6838 // PPC64-LINUX:#define __ppc64__ 1
6839 // PPC64-LINUX:#define __ppc__ 1
6840 
6841 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6842 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -target-abi elfv1 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6843 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -target-abi elfv1-qpx < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6844 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -target-abi elfv2 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6845 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6846 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu -target-abi elfv1 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6847 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu -target-abi elfv2 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6848 // PPC64-ELFv1:#define _CALL_ELF 1
6849 // PPC64-ELFv2:#define _CALL_ELF 2
6850 //
6851 // Most of this is encompassed in other places.
6852 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu -target-abi elfv2 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64LE-LINUX %s
6853 //
6854 // PPC64LE-LINUX:#define _CALL_LINUX 1
6855 //
6856 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC %s
6857 //
6858 // PPC:#define _ARCH_PPC 1
6859 // PPC:#define _BIG_ENDIAN 1
6860 // PPC-NOT:#define _LP64
6861 // PPC:#define __BIGGEST_ALIGNMENT__ 16
6862 // PPC:#define __BIG_ENDIAN__ 1
6863 // PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6864 // PPC:#define __CHAR16_TYPE__ unsigned short
6865 // PPC:#define __CHAR32_TYPE__ unsigned int
6866 // PPC:#define __CHAR_BIT__ 8
6867 // PPC:#define __CHAR_UNSIGNED__ 1
6868 // PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6869 // PPC:#define __DBL_DIG__ 15
6870 // PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6871 // PPC:#define __DBL_HAS_DENORM__ 1
6872 // PPC:#define __DBL_HAS_INFINITY__ 1
6873 // PPC:#define __DBL_HAS_QUIET_NAN__ 1
6874 // PPC:#define __DBL_MANT_DIG__ 53
6875 // PPC:#define __DBL_MAX_10_EXP__ 308
6876 // PPC:#define __DBL_MAX_EXP__ 1024
6877 // PPC:#define __DBL_MAX__ 1.7976931348623157e+308
6878 // PPC:#define __DBL_MIN_10_EXP__ (-307)
6879 // PPC:#define __DBL_MIN_EXP__ (-1021)
6880 // PPC:#define __DBL_MIN__ 2.2250738585072014e-308
6881 // PPC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
6882 // PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6883 // PPC:#define __FLT_DIG__ 6
6884 // PPC:#define __FLT_EPSILON__ 1.19209290e-7F
6885 // PPC:#define __FLT_EVAL_METHOD__ 0
6886 // PPC:#define __FLT_HAS_DENORM__ 1
6887 // PPC:#define __FLT_HAS_INFINITY__ 1
6888 // PPC:#define __FLT_HAS_QUIET_NAN__ 1
6889 // PPC:#define __FLT_MANT_DIG__ 24
6890 // PPC:#define __FLT_MAX_10_EXP__ 38
6891 // PPC:#define __FLT_MAX_EXP__ 128
6892 // PPC:#define __FLT_MAX__ 3.40282347e+38F
6893 // PPC:#define __FLT_MIN_10_EXP__ (-37)
6894 // PPC:#define __FLT_MIN_EXP__ (-125)
6895 // PPC:#define __FLT_MIN__ 1.17549435e-38F
6896 // PPC:#define __FLT_RADIX__ 2
6897 // PPC:#define __HAVE_BSWAP__ 1
6898 // PPC:#define __INT16_C_SUFFIX__
6899 // PPC:#define __INT16_FMTd__ "hd"
6900 // PPC:#define __INT16_FMTi__ "hi"
6901 // PPC:#define __INT16_MAX__ 32767
6902 // PPC:#define __INT16_TYPE__ short
6903 // PPC:#define __INT32_C_SUFFIX__
6904 // PPC:#define __INT32_FMTd__ "d"
6905 // PPC:#define __INT32_FMTi__ "i"
6906 // PPC:#define __INT32_MAX__ 2147483647
6907 // PPC:#define __INT32_TYPE__ int
6908 // PPC:#define __INT64_C_SUFFIX__ LL
6909 // PPC:#define __INT64_FMTd__ "lld"
6910 // PPC:#define __INT64_FMTi__ "lli"
6911 // PPC:#define __INT64_MAX__ 9223372036854775807LL
6912 // PPC:#define __INT64_TYPE__ long long int
6913 // PPC:#define __INT8_C_SUFFIX__
6914 // PPC:#define __INT8_FMTd__ "hhd"
6915 // PPC:#define __INT8_FMTi__ "hhi"
6916 // PPC:#define __INT8_MAX__ 127
6917 // PPC:#define __INT8_TYPE__ signed char
6918 // PPC:#define __INTMAX_C_SUFFIX__ LL
6919 // PPC:#define __INTMAX_FMTd__ "lld"
6920 // PPC:#define __INTMAX_FMTi__ "lli"
6921 // PPC:#define __INTMAX_MAX__ 9223372036854775807LL
6922 // PPC:#define __INTMAX_TYPE__ long long int
6923 // PPC:#define __INTMAX_WIDTH__ 64
6924 // PPC:#define __INTPTR_FMTd__ "ld"
6925 // PPC:#define __INTPTR_FMTi__ "li"
6926 // PPC:#define __INTPTR_MAX__ 2147483647L
6927 // PPC:#define __INTPTR_TYPE__ long int
6928 // PPC:#define __INTPTR_WIDTH__ 32
6929 // PPC:#define __INT_FAST16_FMTd__ "hd"
6930 // PPC:#define __INT_FAST16_FMTi__ "hi"
6931 // PPC:#define __INT_FAST16_MAX__ 32767
6932 // PPC:#define __INT_FAST16_TYPE__ short
6933 // PPC:#define __INT_FAST32_FMTd__ "d"
6934 // PPC:#define __INT_FAST32_FMTi__ "i"
6935 // PPC:#define __INT_FAST32_MAX__ 2147483647
6936 // PPC:#define __INT_FAST32_TYPE__ int
6937 // PPC:#define __INT_FAST64_FMTd__ "lld"
6938 // PPC:#define __INT_FAST64_FMTi__ "lli"
6939 // PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6940 // PPC:#define __INT_FAST64_TYPE__ long long int
6941 // PPC:#define __INT_FAST8_FMTd__ "hhd"
6942 // PPC:#define __INT_FAST8_FMTi__ "hhi"
6943 // PPC:#define __INT_FAST8_MAX__ 127
6944 // PPC:#define __INT_FAST8_TYPE__ signed char
6945 // PPC:#define __INT_LEAST16_FMTd__ "hd"
6946 // PPC:#define __INT_LEAST16_FMTi__ "hi"
6947 // PPC:#define __INT_LEAST16_MAX__ 32767
6948 // PPC:#define __INT_LEAST16_TYPE__ short
6949 // PPC:#define __INT_LEAST32_FMTd__ "d"
6950 // PPC:#define __INT_LEAST32_FMTi__ "i"
6951 // PPC:#define __INT_LEAST32_MAX__ 2147483647
6952 // PPC:#define __INT_LEAST32_TYPE__ int
6953 // PPC:#define __INT_LEAST64_FMTd__ "lld"
6954 // PPC:#define __INT_LEAST64_FMTi__ "lli"
6955 // PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6956 // PPC:#define __INT_LEAST64_TYPE__ long long int
6957 // PPC:#define __INT_LEAST8_FMTd__ "hhd"
6958 // PPC:#define __INT_LEAST8_FMTi__ "hhi"
6959 // PPC:#define __INT_LEAST8_MAX__ 127
6960 // PPC:#define __INT_LEAST8_TYPE__ signed char
6961 // PPC:#define __INT_MAX__ 2147483647
6962 // PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6963 // PPC:#define __LDBL_DIG__ 31
6964 // PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6965 // PPC:#define __LDBL_HAS_DENORM__ 1
6966 // PPC:#define __LDBL_HAS_INFINITY__ 1
6967 // PPC:#define __LDBL_HAS_QUIET_NAN__ 1
6968 // PPC:#define __LDBL_MANT_DIG__ 106
6969 // PPC:#define __LDBL_MAX_10_EXP__ 308
6970 // PPC:#define __LDBL_MAX_EXP__ 1024
6971 // PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6972 // PPC:#define __LDBL_MIN_10_EXP__ (-291)
6973 // PPC:#define __LDBL_MIN_EXP__ (-968)
6974 // PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6975 // PPC:#define __LONGDOUBLE128 1
6976 // PPC:#define __LONG_DOUBLE_128__ 1
6977 // PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6978 // PPC:#define __LONG_MAX__ 2147483647L
6979 // PPC-NOT:#define __LP64__
6980 // PPC:#define __NATURAL_ALIGNMENT__ 1
6981 // PPC:#define __POINTER_WIDTH__ 32
6982 // PPC:#define __POWERPC__ 1
6983 // PPC:#define __PPC__ 1
6984 // PPC:#define __PTRDIFF_TYPE__ long int
6985 // PPC:#define __PTRDIFF_WIDTH__ 32
6986 // PPC:#define __REGISTER_PREFIX__
6987 // PPC:#define __SCHAR_MAX__ 127
6988 // PPC:#define __SHRT_MAX__ 32767
6989 // PPC:#define __SIG_ATOMIC_MAX__ 2147483647
6990 // PPC:#define __SIG_ATOMIC_WIDTH__ 32
6991 // PPC:#define __SIZEOF_DOUBLE__ 8
6992 // PPC:#define __SIZEOF_FLOAT__ 4
6993 // PPC:#define __SIZEOF_INT__ 4
6994 // PPC:#define __SIZEOF_LONG_DOUBLE__ 16
6995 // PPC:#define __SIZEOF_LONG_LONG__ 8
6996 // PPC:#define __SIZEOF_LONG__ 4
6997 // PPC:#define __SIZEOF_POINTER__ 4
6998 // PPC:#define __SIZEOF_PTRDIFF_T__ 4
6999 // PPC:#define __SIZEOF_SHORT__ 2
7000 // PPC:#define __SIZEOF_SIZE_T__ 4
7001 // PPC:#define __SIZEOF_WCHAR_T__ 4
7002 // PPC:#define __SIZEOF_WINT_T__ 4
7003 // PPC:#define __SIZE_MAX__ 4294967295UL
7004 // PPC:#define __SIZE_TYPE__ long unsigned int
7005 // PPC:#define __SIZE_WIDTH__ 32
7006 // PPC:#define __UINT16_C_SUFFIX__
7007 // PPC:#define __UINT16_MAX__ 65535
7008 // PPC:#define __UINT16_TYPE__ unsigned short
7009 // PPC:#define __UINT32_C_SUFFIX__ U
7010 // PPC:#define __UINT32_MAX__ 4294967295U
7011 // PPC:#define __UINT32_TYPE__ unsigned int
7012 // PPC:#define __UINT64_C_SUFFIX__ ULL
7013 // PPC:#define __UINT64_MAX__ 18446744073709551615ULL
7014 // PPC:#define __UINT64_TYPE__ long long unsigned int
7015 // PPC:#define __UINT8_C_SUFFIX__
7016 // PPC:#define __UINT8_MAX__ 255
7017 // PPC:#define __UINT8_TYPE__ unsigned char
7018 // PPC:#define __UINTMAX_C_SUFFIX__ ULL
7019 // PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
7020 // PPC:#define __UINTMAX_TYPE__ long long unsigned int
7021 // PPC:#define __UINTMAX_WIDTH__ 64
7022 // PPC:#define __UINTPTR_MAX__ 4294967295UL
7023 // PPC:#define __UINTPTR_TYPE__ long unsigned int
7024 // PPC:#define __UINTPTR_WIDTH__ 32
7025 // PPC:#define __UINT_FAST16_MAX__ 65535
7026 // PPC:#define __UINT_FAST16_TYPE__ unsigned short
7027 // PPC:#define __UINT_FAST32_MAX__ 4294967295U
7028 // PPC:#define __UINT_FAST32_TYPE__ unsigned int
7029 // PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7030 // PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
7031 // PPC:#define __UINT_FAST8_MAX__ 255
7032 // PPC:#define __UINT_FAST8_TYPE__ unsigned char
7033 // PPC:#define __UINT_LEAST16_MAX__ 65535
7034 // PPC:#define __UINT_LEAST16_TYPE__ unsigned short
7035 // PPC:#define __UINT_LEAST32_MAX__ 4294967295U
7036 // PPC:#define __UINT_LEAST32_TYPE__ unsigned int
7037 // PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7038 // PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
7039 // PPC:#define __UINT_LEAST8_MAX__ 255
7040 // PPC:#define __UINT_LEAST8_TYPE__ unsigned char
7041 // PPC:#define __USER_LABEL_PREFIX__
7042 // PPC:#define __WCHAR_MAX__ 2147483647
7043 // PPC:#define __WCHAR_TYPE__ int
7044 // PPC:#define __WCHAR_WIDTH__ 32
7045 // PPC:#define __WINT_TYPE__ int
7046 // PPC:#define __WINT_WIDTH__ 32
7047 // PPC:#define __ppc__ 1
7048 //
7049 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix7.1.0.0 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX %s
7050 //
7051 // PPC-AIX-NOT:#define __64BIT__ 1
7052 // PPC-AIX:#define _AIX 1
7053 // PPC-AIX:#define _ARCH_PPC 1
7054 // PPC-AIX:#define _BIG_ENDIAN 1
7055 // PPC-AIX:#define _IBMR2 1
7056 // PPC-AIX:#define _LONG_LONG 1
7057 // PPC-AIX-NOT:#define _LP64 1
7058 // PPC-AIX:#define _POWER 1
7059 // PPC-AIX:#define __BIGGEST_ALIGNMENT__ 8
7060 // PPC-AIX:#define __BIG_ENDIAN__ 1
7061 // PPC-AIX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
7062 // PPC-AIX:#define __CHAR16_TYPE__ unsigned short
7063 // PPC-AIX:#define __CHAR32_TYPE__ unsigned int
7064 // PPC-AIX:#define __CHAR_BIT__ 8
7065 // PPC-AIX:#define __CHAR_UNSIGNED__ 1
7066 // PPC-AIX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7067 // PPC-AIX:#define __DBL_DIG__ 15
7068 // PPC-AIX:#define __DBL_EPSILON__ 2.2204460492503131e-16
7069 // PPC-AIX:#define __DBL_HAS_DENORM__ 1
7070 // PPC-AIX:#define __DBL_HAS_INFINITY__ 1
7071 // PPC-AIX:#define __DBL_HAS_QUIET_NAN__ 1
7072 // PPC-AIX:#define __DBL_MANT_DIG__ 53
7073 // PPC-AIX:#define __DBL_MAX_10_EXP__ 308
7074 // PPC-AIX:#define __DBL_MAX_EXP__ 1024
7075 // PPC-AIX:#define __DBL_MAX__ 1.7976931348623157e+308
7076 // PPC-AIX:#define __DBL_MIN_10_EXP__ (-307)
7077 // PPC-AIX:#define __DBL_MIN_EXP__ (-1021)
7078 // PPC-AIX:#define __DBL_MIN__ 2.2250738585072014e-308
7079 // PPC-AIX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7080 // PPC-AIX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7081 // PPC-AIX:#define __FLT_DIG__ 6
7082 // PPC-AIX:#define __FLT_EPSILON__ 1.19209290e-7F
7083 // PPC-AIX:#define __FLT_EVAL_METHOD__ 1
7084 // PPC-AIX:#define __FLT_HAS_DENORM__ 1
7085 // PPC-AIX:#define __FLT_HAS_INFINITY__ 1
7086 // PPC-AIX:#define __FLT_HAS_QUIET_NAN__ 1
7087 // PPC-AIX:#define __FLT_MANT_DIG__ 24
7088 // PPC-AIX:#define __FLT_MAX_10_EXP__ 38
7089 // PPC-AIX:#define __FLT_MAX_EXP__ 128
7090 // PPC-AIX:#define __FLT_MAX__ 3.40282347e+38F
7091 // PPC-AIX:#define __FLT_MIN_10_EXP__ (-37)
7092 // PPC-AIX:#define __FLT_MIN_EXP__ (-125)
7093 // PPC-AIX:#define __FLT_MIN__ 1.17549435e-38F
7094 // PPC-AIX:#define __FLT_RADIX__ 2
7095 // PPC-AIX:#define __INT16_C_SUFFIX__
7096 // PPC-AIX:#define __INT16_FMTd__ "hd"
7097 // PPC-AIX:#define __INT16_FMTi__ "hi"
7098 // PPC-AIX:#define __INT16_MAX__ 32767
7099 // PPC-AIX:#define __INT16_TYPE__ short
7100 // PPC-AIX:#define __INT32_C_SUFFIX__
7101 // PPC-AIX:#define __INT32_FMTd__ "d"
7102 // PPC-AIX:#define __INT32_FMTi__ "i"
7103 // PPC-AIX:#define __INT32_MAX__ 2147483647
7104 // PPC-AIX:#define __INT32_TYPE__ int
7105 // PPC-AIX:#define __INT64_C_SUFFIX__ LL
7106 // PPC-AIX:#define __INT64_FMTd__ "lld"
7107 // PPC-AIX:#define __INT64_FMTi__ "lli"
7108 // PPC-AIX:#define __INT64_MAX__ 9223372036854775807LL
7109 // PPC-AIX:#define __INT64_TYPE__ long long int
7110 // PPC-AIX:#define __INT8_C_SUFFIX__
7111 // PPC-AIX:#define __INT8_FMTd__ "hhd"
7112 // PPC-AIX:#define __INT8_FMTi__ "hhi"
7113 // PPC-AIX:#define __INT8_MAX__ 127
7114 // PPC-AIX:#define __INT8_TYPE__ signed char
7115 // PPC-AIX:#define __INTMAX_C_SUFFIX__ LL
7116 // PPC-AIX:#define __INTMAX_FMTd__ "lld"
7117 // PPC-AIX:#define __INTMAX_FMTi__ "lli"
7118 // PPC-AIX:#define __INTMAX_MAX__ 9223372036854775807LL
7119 // PPC-AIX:#define __INTMAX_TYPE__ long long int
7120 // PPC-AIX:#define __INTMAX_WIDTH__ 64
7121 // PPC-AIX:#define __INTPTR_FMTd__ "ld"
7122 // PPC-AIX:#define __INTPTR_FMTi__ "li"
7123 // PPC-AIX:#define __INTPTR_MAX__ 2147483647L
7124 // PPC-AIX:#define __INTPTR_TYPE__ long int
7125 // PPC-AIX:#define __INTPTR_WIDTH__ 32
7126 // PPC-AIX:#define __INT_FAST16_FMTd__ "hd"
7127 // PPC-AIX:#define __INT_FAST16_FMTi__ "hi"
7128 // PPC-AIX:#define __INT_FAST16_MAX__ 32767
7129 // PPC-AIX:#define __INT_FAST16_TYPE__ short
7130 // PPC-AIX:#define __INT_FAST32_FMTd__ "d"
7131 // PPC-AIX:#define __INT_FAST32_FMTi__ "i"
7132 // PPC-AIX:#define __INT_FAST32_MAX__ 2147483647
7133 // PPC-AIX:#define __INT_FAST32_TYPE__ int
7134 // PPC-AIX:#define __INT_FAST64_FMTd__ "lld"
7135 // PPC-AIX:#define __INT_FAST64_FMTi__ "lli"
7136 // PPC-AIX:#define __INT_FAST64_MAX__ 9223372036854775807LL
7137 // PPC-AIX:#define __INT_FAST64_TYPE__ long long int
7138 // PPC-AIX:#define __INT_FAST8_FMTd__ "hhd"
7139 // PPC-AIX:#define __INT_FAST8_FMTi__ "hhi"
7140 // PPC-AIX:#define __INT_FAST8_MAX__ 127
7141 // PPC-AIX:#define __INT_FAST8_TYPE__ signed char
7142 // PPC-AIX:#define __INT_LEAST16_FMTd__ "hd"
7143 // PPC-AIX:#define __INT_LEAST16_FMTi__ "hi"
7144 // PPC-AIX:#define __INT_LEAST16_MAX__ 32767
7145 // PPC-AIX:#define __INT_LEAST16_TYPE__ short
7146 // PPC-AIX:#define __INT_LEAST32_FMTd__ "d"
7147 // PPC-AIX:#define __INT_LEAST32_FMTi__ "i"
7148 // PPC-AIX:#define __INT_LEAST32_MAX__ 2147483647
7149 // PPC-AIX:#define __INT_LEAST32_TYPE__ int
7150 // PPC-AIX:#define __INT_LEAST64_FMTd__ "lld"
7151 // PPC-AIX:#define __INT_LEAST64_FMTi__ "lli"
7152 // PPC-AIX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7153 // PPC-AIX:#define __INT_LEAST64_TYPE__ long long int
7154 // PPC-AIX:#define __INT_LEAST8_FMTd__ "hhd"
7155 // PPC-AIX:#define __INT_LEAST8_FMTi__ "hhi"
7156 // PPC-AIX:#define __INT_LEAST8_MAX__ 127
7157 // PPC-AIX:#define __INT_LEAST8_TYPE__ signed char
7158 // PPC-AIX:#define __INT_MAX__ 2147483647
7159 // PPC-AIX:#define __LDBL_DECIMAL_DIG__ 17
7160 // PPC-AIX:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
7161 // PPC-AIX:#define __LDBL_DIG__ 15
7162 // PPC-AIX:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
7163 // PPC-AIX:#define __LDBL_HAS_DENORM__ 1
7164 // PPC-AIX:#define __LDBL_HAS_INFINITY__ 1
7165 // PPC-AIX:#define __LDBL_HAS_QUIET_NAN__ 1
7166 // PPC-AIX:#define __LDBL_MANT_DIG__ 53
7167 // PPC-AIX:#define __LDBL_MAX_10_EXP__ 308
7168 // PPC-AIX:#define __LDBL_MAX_EXP__ 1024
7169 // PPC-AIX:#define __LDBL_MAX__ 1.7976931348623157e+308L
7170 // PPC-AIX:#define __LDBL_MIN_10_EXP__ (-307)
7171 // PPC-AIX:#define __LDBL_MIN_EXP__ (-1021)
7172 // PPC-AIX:#define __LDBL_MIN__ 2.2250738585072014e-308L
7173 // PPC-AIX:#define __LONG_LONG_MAX__ 9223372036854775807LL
7174 // PPC-AIX:#define __LONG_MAX__ 2147483647L
7175 // PPC-AIX-NOT:#define __LP64__ 1
7176 // PPC-AIX-NOT:#define __NATURAL_ALIGNMENT__ 1
7177 // PPC-AIX:#define __POINTER_WIDTH__ 32
7178 // PPC-AIX:#define __POWERPC__ 1
7179 // PPC-AIX:#define __PPC__ 1
7180 // PPC-AIX:#define __PTRDIFF_TYPE__ long int
7181 // PPC-AIX:#define __PTRDIFF_WIDTH__ 32
7182 // PPC-AIX:#define __REGISTER_PREFIX__
7183 // PPC-AIX:#define __SCHAR_MAX__ 127
7184 // PPC-AIX:#define __SHRT_MAX__ 32767
7185 // PPC-AIX:#define __SIG_ATOMIC_MAX__ 2147483647
7186 // PPC-AIX:#define __SIG_ATOMIC_WIDTH__ 32
7187 // PPC-AIX:#define __SIZEOF_DOUBLE__ 8
7188 // PPC-AIX:#define __SIZEOF_FLOAT__ 4
7189 // PPC-AIX:#define __SIZEOF_INT__ 4
7190 // PPC-AIX:#define __SIZEOF_LONG_DOUBLE__ 8
7191 // PPC-AIX:#define __SIZEOF_LONG_LONG__ 8
7192 // PPC-AIX:#define __SIZEOF_LONG__ 4
7193 // PPC-AIX:#define __SIZEOF_POINTER__ 4
7194 // PPC-AIX:#define __SIZEOF_PTRDIFF_T__ 4
7195 // PPC-AIX:#define __SIZEOF_SHORT__ 2
7196 // PPC-AIX:#define __SIZEOF_SIZE_T__ 4
7197 // PPC-AIX:#define __SIZEOF_WCHAR_T__ 2
7198 // PPC-AIX:#define __SIZEOF_WINT_T__ 4
7199 // PPC-AIX:#define __SIZE_MAX__ 4294967295UL
7200 // PPC-AIX:#define __SIZE_TYPE__ long unsigned int
7201 // PPC-AIX:#define __SIZE_WIDTH__ 32
7202 // PPC-AIX:#define __UINT16_C_SUFFIX__
7203 // PPC-AIX:#define __UINT16_MAX__ 65535
7204 // PPC-AIX:#define __UINT16_TYPE__ unsigned short
7205 // PPC-AIX:#define __UINT32_C_SUFFIX__ U
7206 // PPC-AIX:#define __UINT32_MAX__ 4294967295U
7207 // PPC-AIX:#define __UINT32_TYPE__ unsigned int
7208 // PPC-AIX:#define __UINT64_C_SUFFIX__ ULL
7209 // PPC-AIX:#define __UINT64_MAX__ 18446744073709551615ULL
7210 // PPC-AIX:#define __UINT64_TYPE__ long long unsigned int
7211 // PPC-AIX:#define __UINT8_C_SUFFIX__
7212 // PPC-AIX:#define __UINT8_MAX__ 255
7213 // PPC-AIX:#define __UINT8_TYPE__ unsigned char
7214 // PPC-AIX:#define __UINTMAX_C_SUFFIX__ ULL
7215 // PPC-AIX:#define __UINTMAX_MAX__ 18446744073709551615ULL
7216 // PPC-AIX:#define __UINTMAX_TYPE__ long long unsigned int
7217 // PPC-AIX:#define __UINTMAX_WIDTH__ 64
7218 // PPC-AIX:#define __UINTPTR_MAX__ 4294967295UL
7219 // PPC-AIX:#define __UINTPTR_TYPE__ long unsigned int
7220 // PPC-AIX:#define __UINTPTR_WIDTH__ 32
7221 // PPC-AIX:#define __UINT_FAST16_MAX__ 65535
7222 // PPC-AIX:#define __UINT_FAST16_TYPE__ unsigned short
7223 // PPC-AIX:#define __UINT_FAST32_MAX__ 4294967295U
7224 // PPC-AIX:#define __UINT_FAST32_TYPE__ unsigned int
7225 // PPC-AIX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7226 // PPC-AIX:#define __UINT_FAST64_TYPE__ long long unsigned int
7227 // PPC-AIX:#define __UINT_FAST8_MAX__ 255
7228 // PPC-AIX:#define __UINT_FAST8_TYPE__ unsigned char
7229 // PPC-AIX:#define __UINT_LEAST16_MAX__ 65535
7230 // PPC-AIX:#define __UINT_LEAST16_TYPE__ unsigned short
7231 // PPC-AIX:#define __UINT_LEAST32_MAX__ 4294967295U
7232 // PPC-AIX:#define __UINT_LEAST32_TYPE__ unsigned int
7233 // PPC-AIX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7234 // PPC-AIX:#define __UINT_LEAST64_TYPE__ long long unsigned int
7235 // PPC-AIX:#define __UINT_LEAST8_MAX__ 255
7236 // PPC-AIX:#define __UINT_LEAST8_TYPE__ unsigned char
7237 // PPC-AIX:#define __USER_LABEL_PREFIX__
7238 // PPC-AIX:#define __WCHAR_MAX__ 65535
7239 // PPC-AIX:#define __WCHAR_TYPE__ unsigned short
7240 // PPC-AIX:#define __WCHAR_WIDTH__ 16
7241 // PPC-AIX:#define __WINT_TYPE__ int
7242 // PPC-AIX:#define __WINT_WIDTH__ 32
7243 // PPC-AIX:#define __powerpc__ 1
7244 // PPC-AIX:#define __ppc__ 1
7245 //
7246 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix7.2.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX72 %s
7247 //
7248 // PPC-AIX72:#define _AIX32 1
7249 // PPC-AIX72:#define _AIX41 1
7250 // PPC-AIX72:#define _AIX43 1
7251 // PPC-AIX72:#define _AIX50 1
7252 // PPC-AIX72:#define _AIX51 1
7253 // PPC-AIX72:#define _AIX52 1
7254 // PPC-AIX72:#define _AIX53 1
7255 // PPC-AIX72:#define _AIX61 1
7256 // PPC-AIX72:#define _AIX71 1
7257 // PPC-AIX72:#define _AIX72 1
7258 //
7259 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix7.1.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX71 %s
7260 //
7261 // PPC-AIX71:#define _AIX32 1
7262 // PPC-AIX71:#define _AIX41 1
7263 // PPC-AIX71:#define _AIX43 1
7264 // PPC-AIX71:#define _AIX50 1
7265 // PPC-AIX71:#define _AIX51 1
7266 // PPC-AIX71:#define _AIX52 1
7267 // PPC-AIX71:#define _AIX53 1
7268 // PPC-AIX71:#define _AIX61 1
7269 // PPC-AIX71:#define _AIX71 1
7270 // PPC-AIX71-NOT:#define _AIX72 1
7271 //
7272 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix6.1.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX61 %s
7273 //
7274 // PPC-AIX61:#define _AIX32 1
7275 // PPC-AIX61:#define _AIX41 1
7276 // PPC-AIX61:#define _AIX43 1
7277 // PPC-AIX61:#define _AIX50 1
7278 // PPC-AIX61:#define _AIX51 1
7279 // PPC-AIX61:#define _AIX52 1
7280 // PPC-AIX61:#define _AIX53 1
7281 // PPC-AIX61:#define _AIX61 1
7282 // PPC-AIX61-NOT:#define _AIX71 1
7283 // PPC-AIX61-NOT:#define _AIX72 1
7284 //
7285 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix5.3.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX53 %s
7286 // PPC-AIX53:#define _AIX32 1
7287 // PPC-AIX53:#define _AIX41 1
7288 // PPC-AIX53:#define _AIX43 1
7289 // PPC-AIX53:#define _AIX50 1
7290 // PPC-AIX53:#define _AIX51 1
7291 // PPC-AIX53:#define _AIX52 1
7292 // PPC-AIX53:#define _AIX53 1
7293 // PPC-AIX53-NOT:#define _AIX61 1
7294 // PPC-AIX53-NOT:#define _AIX71 1
7295 // PPC-AIX53-NOT:#define _AIX72 1
7296 //
7297 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix5.2.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX52 %s
7298 // PPC-AIX52:#define _AIX32 1
7299 // PPC-AIX52:#define _AIX41 1
7300 // PPC-AIX52:#define _AIX43 1
7301 // PPC-AIX52:#define _AIX50 1
7302 // PPC-AIX52:#define _AIX51 1
7303 // PPC-AIX52:#define _AIX52 1
7304 // PPC-AIX52-NOT:#define _AIX53 1
7305 // PPC-AIX52-NOT:#define _AIX61 1
7306 // PPC-AIX52-NOT:#define _AIX71 1
7307 // PPC-AIX52-NOT:#define _AIX72 1
7308 //
7309 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix5.1.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX51 %s
7310 // PPC-AIX51:#define _AIX32 1
7311 // PPC-AIX51:#define _AIX41 1
7312 // PPC-AIX51:#define _AIX43 1
7313 // PPC-AIX51:#define _AIX50 1
7314 // PPC-AIX51:#define _AIX51 1
7315 // PPC-AIX51-NOT:#define _AIX52 1
7316 // PPC-AIX51-NOT:#define _AIX53 1
7317 // PPC-AIX51-NOT:#define _AIX61 1
7318 // PPC-AIX51-NOT:#define _AIX71 1
7319 // PPC-AIX51-NOT:#define _AIX72 1
7320 //
7321 //RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix5.0.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX50 %s
7322 // PPC-AIX50:#define _AIX32 1
7323 // PPC-AIX50:#define _AIX41 1
7324 // PPC-AIX50:#define _AIX43 1
7325 // PPC-AIX50:#define _AIX50 1
7326 // PPC-AIX50-NOT:#define _AIX51 1
7327 // PPC-AIX50-NOT:#define _AIX52 1
7328 // PPC-AIX50-NOT:#define _AIX53 1
7329 // PPC-AIX50-NOT:#define _AIX61 1
7330 // PPC-AIX50-NOT:#define _AIX71 1
7331 // PPC-AIX50-NOT:#define _AIX72 1
7332 //
7333 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix4.3.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX43 %s
7334 // PPC-AIX43:#define _AIX32 1
7335 // PPC-AIX43:#define _AIX41 1
7336 // PPC-AIX43:#define _AIX43 1
7337 // PPC-AIX43-NOT:#define _AIX50 1
7338 // PPC-AIX43-NOT:#define _AIX51 1
7339 // PPC-AIX43-NOT:#define _AIX52 1
7340 // PPC-AIX43-NOT:#define _AIX53 1
7341 // PPC-AIX43-NOT:#define _AIX61 1
7342 // PPC-AIX43-NOT:#define _AIX71 1
7343 // PPC-AIX43-NOT:#define _AIX72 1
7344 //
7345 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix4.1.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX41 %s
7346 // PPC-AIX41:#define _AIX32 1
7347 // PPC-AIX41:#define _AIX41 1
7348 // PPC-AIX41-NOT:#define _AIX43 1
7349 // PPC-AIX41-NOT:#define _AIX50 1
7350 // PPC-AIX41-NOT:#define _AIX51 1
7351 // PPC-AIX41-NOT:#define _AIX52 1
7352 // PPC-AIX41-NOT:#define _AIX53 1
7353 // PPC-AIX41-NOT:#define _AIX61 1
7354 // PPC-AIX41-NOT:#define _AIX71 1
7355 // PPC-AIX41-NOT:#define _AIX72 1
7356 //
7357 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix3.2.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX32 %s
7358 // PPC-AIX32:#define _AIX32 1
7359 // PPC-AIX32-NOT:#define _AIX41 1
7360 // PPC-AIX32-NOT:#define _AIX43 1
7361 // PPC-AIX32-NOT:#define _AIX50 1
7362 // PPC-AIX32-NOT:#define _AIX51 1
7363 // PPC-AIX32-NOT:#define _AIX52 1
7364 // PPC-AIX32-NOT:#define _AIX53 1
7365 // PPC-AIX32-NOT:#define _AIX61 1
7366 // PPC-AIX32-NOT:#define _AIX71 1
7367 // PPC-AIX32-NOT:#define _AIX72 1
7368 //
7369 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=powerpc-ibm-aix7.1.0.0 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX-CXX %s
7370 //
7371 // PPC-AIX-CXX:#define _WCHAR_T 1
7372 //
7373 // RUN: %clang_cc1 -x c++ -fno-wchar -E -dM -ffreestanding -triple=powerpc-ibm-aix7.1.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX-NOWCHAR %s
7374 // RUN: %clang_cc1 -x c -E -dM -ffreestanding -triple=powerpc-ibm-aix7.1.0.0 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX-NOWCHAR %s
7375 //
7376 // PPC-AIX-NOWCHAR-NOT:#define _WCHAR_T 1
7377 //
7378 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix7.1.0.0 -fno-signed-char -pthread < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX-THREADSAFE %s
7379 // PPC-AIX-THREADSAFE:#define _THREAD_SAFE 1
7380 //
7381 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-ibm-aix7.1.0.0 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC-AIX-NOTHREADSAFE %s
7382 // PPC-AIX-NOTHREADSAFE-NOT:#define _THREAD_SAFE 1
7383 //
7384 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC-LINUX %s
7385 //
7386 // PPC-LINUX:#define _ARCH_PPC 1
7387 // PPC-LINUX:#define _BIG_ENDIAN 1
7388 // PPC-LINUX-NOT:#define _LP64
7389 // PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 16
7390 // PPC-LINUX:#define __BIG_ENDIAN__ 1
7391 // PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
7392 // PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
7393 // PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
7394 // PPC-LINUX:#define __CHAR_BIT__ 8
7395 // PPC-LINUX:#define __CHAR_UNSIGNED__ 1
7396 // PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7397 // PPC-LINUX:#define __DBL_DIG__ 15
7398 // PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
7399 // PPC-LINUX:#define __DBL_HAS_DENORM__ 1
7400 // PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
7401 // PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
7402 // PPC-LINUX:#define __DBL_MANT_DIG__ 53
7403 // PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
7404 // PPC-LINUX:#define __DBL_MAX_EXP__ 1024
7405 // PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
7406 // PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
7407 // PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
7408 // PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
7409 // PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7410 // PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7411 // PPC-LINUX:#define __FLT_DIG__ 6
7412 // PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
7413 // PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
7414 // PPC-LINUX:#define __FLT_HAS_DENORM__ 1
7415 // PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
7416 // PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
7417 // PPC-LINUX:#define __FLT_MANT_DIG__ 24
7418 // PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
7419 // PPC-LINUX:#define __FLT_MAX_EXP__ 128
7420 // PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
7421 // PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
7422 // PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
7423 // PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
7424 // PPC-LINUX:#define __FLT_RADIX__ 2
7425 // PPC-LINUX:#define __HAVE_BSWAP__ 1
7426 // PPC-LINUX:#define __INT16_C_SUFFIX__
7427 // PPC-LINUX:#define __INT16_FMTd__ "hd"
7428 // PPC-LINUX:#define __INT16_FMTi__ "hi"
7429 // PPC-LINUX:#define __INT16_MAX__ 32767
7430 // PPC-LINUX:#define __INT16_TYPE__ short
7431 // PPC-LINUX:#define __INT32_C_SUFFIX__
7432 // PPC-LINUX:#define __INT32_FMTd__ "d"
7433 // PPC-LINUX:#define __INT32_FMTi__ "i"
7434 // PPC-LINUX:#define __INT32_MAX__ 2147483647
7435 // PPC-LINUX:#define __INT32_TYPE__ int
7436 // PPC-LINUX:#define __INT64_C_SUFFIX__ LL
7437 // PPC-LINUX:#define __INT64_FMTd__ "lld"
7438 // PPC-LINUX:#define __INT64_FMTi__ "lli"
7439 // PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
7440 // PPC-LINUX:#define __INT64_TYPE__ long long int
7441 // PPC-LINUX:#define __INT8_C_SUFFIX__
7442 // PPC-LINUX:#define __INT8_FMTd__ "hhd"
7443 // PPC-LINUX:#define __INT8_FMTi__ "hhi"
7444 // PPC-LINUX:#define __INT8_MAX__ 127
7445 // PPC-LINUX:#define __INT8_TYPE__ signed char
7446 // PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
7447 // PPC-LINUX:#define __INTMAX_FMTd__ "lld"
7448 // PPC-LINUX:#define __INTMAX_FMTi__ "lli"
7449 // PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
7450 // PPC-LINUX:#define __INTMAX_TYPE__ long long int
7451 // PPC-LINUX:#define __INTMAX_WIDTH__ 64
7452 // PPC-LINUX:#define __INTPTR_FMTd__ "d"
7453 // PPC-LINUX:#define __INTPTR_FMTi__ "i"
7454 // PPC-LINUX:#define __INTPTR_MAX__ 2147483647
7455 // PPC-LINUX:#define __INTPTR_TYPE__ int
7456 // PPC-LINUX:#define __INTPTR_WIDTH__ 32
7457 // PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
7458 // PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
7459 // PPC-LINUX:#define __INT_FAST16_MAX__ 32767
7460 // PPC-LINUX:#define __INT_FAST16_TYPE__ short
7461 // PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
7462 // PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
7463 // PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
7464 // PPC-LINUX:#define __INT_FAST32_TYPE__ int
7465 // PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
7466 // PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
7467 // PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
7468 // PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
7469 // PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
7470 // PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
7471 // PPC-LINUX:#define __INT_FAST8_MAX__ 127
7472 // PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
7473 // PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
7474 // PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
7475 // PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
7476 // PPC-LINUX:#define __INT_LEAST16_TYPE__ short
7477 // PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
7478 // PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
7479 // PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
7480 // PPC-LINUX:#define __INT_LEAST32_TYPE__ int
7481 // PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
7482 // PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
7483 // PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7484 // PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
7485 // PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
7486 // PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
7487 // PPC-LINUX:#define __INT_LEAST8_MAX__ 127
7488 // PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
7489 // PPC-LINUX:#define __INT_MAX__ 2147483647
7490 // PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
7491 // PPC-LINUX:#define __LDBL_DIG__ 31
7492 // PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
7493 // PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
7494 // PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
7495 // PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
7496 // PPC-LINUX:#define __LDBL_MANT_DIG__ 106
7497 // PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
7498 // PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
7499 // PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
7500 // PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
7501 // PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
7502 // PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
7503 // PPC-LINUX:#define __LONGDOUBLE128 1
7504 // PPC-LINUX:#define __LONG_DOUBLE_128__ 1
7505 // PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
7506 // PPC-LINUX:#define __LONG_MAX__ 2147483647L
7507 // PPC-LINUX-NOT:#define __LP64__
7508 // PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
7509 // PPC-LINUX:#define __POINTER_WIDTH__ 32
7510 // PPC-LINUX:#define __POWERPC__ 1
7511 // PPC-LINUX:#define __PPC__ 1
7512 // PPC-LINUX:#define __PTRDIFF_TYPE__ int
7513 // PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
7514 // PPC-LINUX:#define __REGISTER_PREFIX__
7515 // PPC-LINUX:#define __SCHAR_MAX__ 127
7516 // PPC-LINUX:#define __SHRT_MAX__ 32767
7517 // PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
7518 // PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
7519 // PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
7520 // PPC-LINUX:#define __SIZEOF_FLOAT__ 4
7521 // PPC-LINUX:#define __SIZEOF_INT__ 4
7522 // PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
7523 // PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
7524 // PPC-LINUX:#define __SIZEOF_LONG__ 4
7525 // PPC-LINUX:#define __SIZEOF_POINTER__ 4
7526 // PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
7527 // PPC-LINUX:#define __SIZEOF_SHORT__ 2
7528 // PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
7529 // PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
7530 // PPC-LINUX:#define __SIZEOF_WINT_T__ 4
7531 // PPC-LINUX:#define __SIZE_MAX__ 4294967295U
7532 // PPC-LINUX:#define __SIZE_TYPE__ unsigned int
7533 // PPC-LINUX:#define __SIZE_WIDTH__ 32
7534 // PPC-LINUX:#define __UINT16_C_SUFFIX__
7535 // PPC-LINUX:#define __UINT16_MAX__ 65535
7536 // PPC-LINUX:#define __UINT16_TYPE__ unsigned short
7537 // PPC-LINUX:#define __UINT32_C_SUFFIX__ U
7538 // PPC-LINUX:#define __UINT32_MAX__ 4294967295U
7539 // PPC-LINUX:#define __UINT32_TYPE__ unsigned int
7540 // PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
7541 // PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
7542 // PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
7543 // PPC-LINUX:#define __UINT8_C_SUFFIX__
7544 // PPC-LINUX:#define __UINT8_MAX__ 255
7545 // PPC-LINUX:#define __UINT8_TYPE__ unsigned char
7546 // PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
7547 // PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
7548 // PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
7549 // PPC-LINUX:#define __UINTMAX_WIDTH__ 64
7550 // PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
7551 // PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
7552 // PPC-LINUX:#define __UINTPTR_WIDTH__ 32
7553 // PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
7554 // PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
7555 // PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
7556 // PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
7557 // PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7558 // PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
7559 // PPC-LINUX:#define __UINT_FAST8_MAX__ 255
7560 // PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
7561 // PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
7562 // PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
7563 // PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
7564 // PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
7565 // PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7566 // PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
7567 // PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
7568 // PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
7569 // PPC-LINUX:#define __USER_LABEL_PREFIX__
7570 // PPC-LINUX:#define __WCHAR_MAX__ 2147483647
7571 // PPC-LINUX:#define __WCHAR_TYPE__ int
7572 // PPC-LINUX:#define __WCHAR_WIDTH__ 32
7573 // PPC-LINUX:#define __WINT_TYPE__ unsigned int
7574 // PPC-LINUX:#define __WINT_UNSIGNED__ 1
7575 // PPC-LINUX:#define __WINT_WIDTH__ 32
7576 // PPC-LINUX:#define __powerpc__ 1
7577 // PPC-LINUX:#define __ppc__ 1
7578 //
7579 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC32-LINUX %s
7580 //
7581 // PPC32-LINUX-NOT: _CALL_LINUX
7582 //
7583 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-DARWIN %s
7584 //
7585 // PPC-DARWIN:#define _ARCH_PPC 1
7586 // PPC-DARWIN:#define _BIG_ENDIAN 1
7587 // PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
7588 // PPC-DARWIN:#define __BIG_ENDIAN__ 1
7589 // PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
7590 // PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
7591 // PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
7592 // PPC-DARWIN:#define __CHAR_BIT__ 8
7593 // PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7594 // PPC-DARWIN:#define __DBL_DIG__ 15
7595 // PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
7596 // PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
7597 // PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
7598 // PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
7599 // PPC-DARWIN:#define __DBL_MANT_DIG__ 53
7600 // PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
7601 // PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
7602 // PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
7603 // PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
7604 // PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
7605 // PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
7606 // PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7607 // PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7608 // PPC-DARWIN:#define __FLT_DIG__ 6
7609 // PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
7610 // PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
7611 // PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
7612 // PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
7613 // PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
7614 // PPC-DARWIN:#define __FLT_MANT_DIG__ 24
7615 // PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
7616 // PPC-DARWIN:#define __FLT_MAX_EXP__ 128
7617 // PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
7618 // PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
7619 // PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
7620 // PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
7621 // PPC-DARWIN:#define __FLT_RADIX__ 2
7622 // PPC-DARWIN:#define __HAVE_BSWAP__ 1
7623 // PPC-DARWIN:#define __INT16_C_SUFFIX__
7624 // PPC-DARWIN:#define __INT16_FMTd__ "hd"
7625 // PPC-DARWIN:#define __INT16_FMTi__ "hi"
7626 // PPC-DARWIN:#define __INT16_MAX__ 32767
7627 // PPC-DARWIN:#define __INT16_TYPE__ short
7628 // PPC-DARWIN:#define __INT32_C_SUFFIX__
7629 // PPC-DARWIN:#define __INT32_FMTd__ "d"
7630 // PPC-DARWIN:#define __INT32_FMTi__ "i"
7631 // PPC-DARWIN:#define __INT32_MAX__ 2147483647
7632 // PPC-DARWIN:#define __INT32_TYPE__ int
7633 // PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
7634 // PPC-DARWIN:#define __INT64_FMTd__ "lld"
7635 // PPC-DARWIN:#define __INT64_FMTi__ "lli"
7636 // PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
7637 // PPC-DARWIN:#define __INT64_TYPE__ long long int
7638 // PPC-DARWIN:#define __INT8_C_SUFFIX__
7639 // PPC-DARWIN:#define __INT8_FMTd__ "hhd"
7640 // PPC-DARWIN:#define __INT8_FMTi__ "hhi"
7641 // PPC-DARWIN:#define __INT8_MAX__ 127
7642 // PPC-DARWIN:#define __INT8_TYPE__ signed char
7643 // PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
7644 // PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
7645 // PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
7646 // PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
7647 // PPC-DARWIN:#define __INTMAX_TYPE__ long long int
7648 // PPC-DARWIN:#define __INTMAX_WIDTH__ 64
7649 // PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
7650 // PPC-DARWIN:#define __INTPTR_FMTi__ "li"
7651 // PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
7652 // PPC-DARWIN:#define __INTPTR_TYPE__ long int
7653 // PPC-DARWIN:#define __INTPTR_WIDTH__ 32
7654 // PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
7655 // PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
7656 // PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
7657 // PPC-DARWIN:#define __INT_FAST16_TYPE__ short
7658 // PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
7659 // PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
7660 // PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
7661 // PPC-DARWIN:#define __INT_FAST32_TYPE__ int
7662 // PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
7663 // PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
7664 // PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
7665 // PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
7666 // PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
7667 // PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
7668 // PPC-DARWIN:#define __INT_FAST8_MAX__ 127
7669 // PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
7670 // PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
7671 // PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
7672 // PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
7673 // PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
7674 // PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
7675 // PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
7676 // PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
7677 // PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
7678 // PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
7679 // PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
7680 // PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7681 // PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
7682 // PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
7683 // PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
7684 // PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
7685 // PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
7686 // PPC-DARWIN:#define __INT_MAX__ 2147483647
7687 // PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
7688 // PPC-DARWIN:#define __LDBL_DIG__ 31
7689 // PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
7690 // PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
7691 // PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
7692 // PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
7693 // PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
7694 // PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
7695 // PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
7696 // PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
7697 // PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
7698 // PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
7699 // PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
7700 // PPC-DARWIN:#define __LONGDOUBLE128 1
7701 // PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
7702 // PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
7703 // PPC-DARWIN:#define __LONG_MAX__ 2147483647L
7704 // PPC-DARWIN:#define __MACH__ 1
7705 // PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
7706 // PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
7707 // PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
7708 // PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
7709 // PPC-DARWIN:#define __POINTER_WIDTH__ 32
7710 // PPC-DARWIN:#define __POWERPC__ 1
7711 // PPC-DARWIN:#define __PPC__ 1
7712 // PPC-DARWIN:#define __PTRDIFF_TYPE__ int
7713 // PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
7714 // PPC-DARWIN:#define __REGISTER_PREFIX__
7715 // PPC-DARWIN:#define __SCHAR_MAX__ 127
7716 // PPC-DARWIN:#define __SHRT_MAX__ 32767
7717 // PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
7718 // PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
7719 // PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
7720 // PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
7721 // PPC-DARWIN:#define __SIZEOF_INT__ 4
7722 // PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
7723 // PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
7724 // PPC-DARWIN:#define __SIZEOF_LONG__ 4
7725 // PPC-DARWIN:#define __SIZEOF_POINTER__ 4
7726 // PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
7727 // PPC-DARWIN:#define __SIZEOF_SHORT__ 2
7728 // PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
7729 // PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
7730 // PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
7731 // PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
7732 // PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
7733 // PPC-DARWIN:#define __SIZE_WIDTH__ 32
7734 // PPC-DARWIN:#define __STDC_HOSTED__ 0
7735 // PPC-DARWIN:#define __STDC_VERSION__ 201112L
7736 // PPC-DARWIN:#define __STDC__ 1
7737 // PPC-DARWIN:#define __UINT16_C_SUFFIX__
7738 // PPC-DARWIN:#define __UINT16_MAX__ 65535
7739 // PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
7740 // PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
7741 // PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
7742 // PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
7743 // PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
7744 // PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
7745 // PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
7746 // PPC-DARWIN:#define __UINT8_C_SUFFIX__
7747 // PPC-DARWIN:#define __UINT8_MAX__ 255
7748 // PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
7749 // PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
7750 // PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
7751 // PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
7752 // PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
7753 // PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
7754 // PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
7755 // PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
7756 // PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
7757 // PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
7758 // PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
7759 // PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
7760 // PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7761 // PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
7762 // PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
7763 // PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
7764 // PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
7765 // PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
7766 // PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
7767 // PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
7768 // PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7769 // PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
7770 // PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
7771 // PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
7772 // PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
7773 // PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
7774 // PPC-DARWIN:#define __WCHAR_TYPE__ int
7775 // PPC-DARWIN:#define __WCHAR_WIDTH__ 32
7776 // PPC-DARWIN:#define __WINT_TYPE__ int
7777 // PPC-DARWIN:#define __WINT_WIDTH__ 32
7778 // PPC-DARWIN:#define __powerpc__ 1
7779 // PPC-DARWIN:#define __ppc__ 1
7780 
7781 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-DARWIN %s
7782 // PPC64-DARWIN:#define __STRUCT_PARM_ALIGN__ 16
7783 
7784 // RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
7785 // RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=r600 -target-cpu caicos < /dev/null | FileCheck -match-full-lines --check-prefix AMDGPU %s
7786 //
7787 // AMDGPU:#define __ENDIAN_LITTLE__ 1
7788 // AMDGPU:#define cl_khr_byte_addressable_store 1
7789 // AMDGCN:#define cl_khr_fp64 1
7790 // AMDGPU:#define cl_khr_global_int32_base_atomics 1
7791 // AMDGPU:#define cl_khr_global_int32_extended_atomics 1
7792 // AMDGPU:#define cl_khr_local_int32_base_atomics 1
7793 // AMDGPU:#define cl_khr_local_int32_extended_atomics 1
7794 
7795 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix S390X %s
7796 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix S390X -check-prefix S390X-CXX %s
7797 //
7798 // S390X:#define __BIGGEST_ALIGNMENT__ 8
7799 // S390X:#define __CHAR16_TYPE__ unsigned short
7800 // S390X:#define __CHAR32_TYPE__ unsigned int
7801 // S390X:#define __CHAR_BIT__ 8
7802 // S390X:#define __CHAR_UNSIGNED__ 1
7803 // S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7804 // S390X:#define __DBL_DIG__ 15
7805 // S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
7806 // S390X:#define __DBL_HAS_DENORM__ 1
7807 // S390X:#define __DBL_HAS_INFINITY__ 1
7808 // S390X:#define __DBL_HAS_QUIET_NAN__ 1
7809 // S390X:#define __DBL_MANT_DIG__ 53
7810 // S390X:#define __DBL_MAX_10_EXP__ 308
7811 // S390X:#define __DBL_MAX_EXP__ 1024
7812 // S390X:#define __DBL_MAX__ 1.7976931348623157e+308
7813 // S390X:#define __DBL_MIN_10_EXP__ (-307)
7814 // S390X:#define __DBL_MIN_EXP__ (-1021)
7815 // S390X:#define __DBL_MIN__ 2.2250738585072014e-308
7816 // S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7817 // S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7818 // S390X:#define __FLT_DIG__ 6
7819 // S390X:#define __FLT_EPSILON__ 1.19209290e-7F
7820 // S390X:#define __FLT_EVAL_METHOD__ 0
7821 // S390X:#define __FLT_HAS_DENORM__ 1
7822 // S390X:#define __FLT_HAS_INFINITY__ 1
7823 // S390X:#define __FLT_HAS_QUIET_NAN__ 1
7824 // S390X:#define __FLT_MANT_DIG__ 24
7825 // S390X:#define __FLT_MAX_10_EXP__ 38
7826 // S390X:#define __FLT_MAX_EXP__ 128
7827 // S390X:#define __FLT_MAX__ 3.40282347e+38F
7828 // S390X:#define __FLT_MIN_10_EXP__ (-37)
7829 // S390X:#define __FLT_MIN_EXP__ (-125)
7830 // S390X:#define __FLT_MIN__ 1.17549435e-38F
7831 // S390X:#define __FLT_RADIX__ 2
7832 // S390X:#define __INT16_C_SUFFIX__
7833 // S390X:#define __INT16_FMTd__ "hd"
7834 // S390X:#define __INT16_FMTi__ "hi"
7835 // S390X:#define __INT16_MAX__ 32767
7836 // S390X:#define __INT16_TYPE__ short
7837 // S390X:#define __INT32_C_SUFFIX__
7838 // S390X:#define __INT32_FMTd__ "d"
7839 // S390X:#define __INT32_FMTi__ "i"
7840 // S390X:#define __INT32_MAX__ 2147483647
7841 // S390X:#define __INT32_TYPE__ int
7842 // S390X:#define __INT64_C_SUFFIX__ L
7843 // S390X:#define __INT64_FMTd__ "ld"
7844 // S390X:#define __INT64_FMTi__ "li"
7845 // S390X:#define __INT64_MAX__ 9223372036854775807L
7846 // S390X:#define __INT64_TYPE__ long int
7847 // S390X:#define __INT8_C_SUFFIX__
7848 // S390X:#define __INT8_FMTd__ "hhd"
7849 // S390X:#define __INT8_FMTi__ "hhi"
7850 // S390X:#define __INT8_MAX__ 127
7851 // S390X:#define __INT8_TYPE__ signed char
7852 // S390X:#define __INTMAX_C_SUFFIX__ L
7853 // S390X:#define __INTMAX_FMTd__ "ld"
7854 // S390X:#define __INTMAX_FMTi__ "li"
7855 // S390X:#define __INTMAX_MAX__ 9223372036854775807L
7856 // S390X:#define __INTMAX_TYPE__ long int
7857 // S390X:#define __INTMAX_WIDTH__ 64
7858 // S390X:#define __INTPTR_FMTd__ "ld"
7859 // S390X:#define __INTPTR_FMTi__ "li"
7860 // S390X:#define __INTPTR_MAX__ 9223372036854775807L
7861 // S390X:#define __INTPTR_TYPE__ long int
7862 // S390X:#define __INTPTR_WIDTH__ 64
7863 // S390X:#define __INT_FAST16_FMTd__ "hd"
7864 // S390X:#define __INT_FAST16_FMTi__ "hi"
7865 // S390X:#define __INT_FAST16_MAX__ 32767
7866 // S390X:#define __INT_FAST16_TYPE__ short
7867 // S390X:#define __INT_FAST32_FMTd__ "d"
7868 // S390X:#define __INT_FAST32_FMTi__ "i"
7869 // S390X:#define __INT_FAST32_MAX__ 2147483647
7870 // S390X:#define __INT_FAST32_TYPE__ int
7871 // S390X:#define __INT_FAST64_FMTd__ "ld"
7872 // S390X:#define __INT_FAST64_FMTi__ "li"
7873 // S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
7874 // S390X:#define __INT_FAST64_TYPE__ long int
7875 // S390X:#define __INT_FAST8_FMTd__ "hhd"
7876 // S390X:#define __INT_FAST8_FMTi__ "hhi"
7877 // S390X:#define __INT_FAST8_MAX__ 127
7878 // S390X:#define __INT_FAST8_TYPE__ signed char
7879 // S390X:#define __INT_LEAST16_FMTd__ "hd"
7880 // S390X:#define __INT_LEAST16_FMTi__ "hi"
7881 // S390X:#define __INT_LEAST16_MAX__ 32767
7882 // S390X:#define __INT_LEAST16_TYPE__ short
7883 // S390X:#define __INT_LEAST32_FMTd__ "d"
7884 // S390X:#define __INT_LEAST32_FMTi__ "i"
7885 // S390X:#define __INT_LEAST32_MAX__ 2147483647
7886 // S390X:#define __INT_LEAST32_TYPE__ int
7887 // S390X:#define __INT_LEAST64_FMTd__ "ld"
7888 // S390X:#define __INT_LEAST64_FMTi__ "li"
7889 // S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
7890 // S390X:#define __INT_LEAST64_TYPE__ long int
7891 // S390X:#define __INT_LEAST8_FMTd__ "hhd"
7892 // S390X:#define __INT_LEAST8_FMTi__ "hhi"
7893 // S390X:#define __INT_LEAST8_MAX__ 127
7894 // S390X:#define __INT_LEAST8_TYPE__ signed char
7895 // S390X:#define __INT_MAX__ 2147483647
7896 // S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
7897 // S390X:#define __LDBL_DIG__ 33
7898 // S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
7899 // S390X:#define __LDBL_HAS_DENORM__ 1
7900 // S390X:#define __LDBL_HAS_INFINITY__ 1
7901 // S390X:#define __LDBL_HAS_QUIET_NAN__ 1
7902 // S390X:#define __LDBL_MANT_DIG__ 113
7903 // S390X:#define __LDBL_MAX_10_EXP__ 4932
7904 // S390X:#define __LDBL_MAX_EXP__ 16384
7905 // S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
7906 // S390X:#define __LDBL_MIN_10_EXP__ (-4931)
7907 // S390X:#define __LDBL_MIN_EXP__ (-16381)
7908 // S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
7909 // S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
7910 // S390X:#define __LONG_MAX__ 9223372036854775807L
7911 // S390X:#define __NO_INLINE__ 1
7912 // S390X:#define __POINTER_WIDTH__ 64
7913 // S390X:#define __PTRDIFF_TYPE__ long int
7914 // S390X:#define __PTRDIFF_WIDTH__ 64
7915 // S390X:#define __SCHAR_MAX__ 127
7916 // S390X:#define __SHRT_MAX__ 32767
7917 // S390X:#define __SIG_ATOMIC_MAX__ 2147483647
7918 // S390X:#define __SIG_ATOMIC_WIDTH__ 32
7919 // S390X:#define __SIZEOF_DOUBLE__ 8
7920 // S390X:#define __SIZEOF_FLOAT__ 4
7921 // S390X:#define __SIZEOF_INT__ 4
7922 // S390X:#define __SIZEOF_LONG_DOUBLE__ 16
7923 // S390X:#define __SIZEOF_LONG_LONG__ 8
7924 // S390X:#define __SIZEOF_LONG__ 8
7925 // S390X:#define __SIZEOF_POINTER__ 8
7926 // S390X:#define __SIZEOF_PTRDIFF_T__ 8
7927 // S390X:#define __SIZEOF_SHORT__ 2
7928 // S390X:#define __SIZEOF_SIZE_T__ 8
7929 // S390X:#define __SIZEOF_WCHAR_T__ 4
7930 // S390X:#define __SIZEOF_WINT_T__ 4
7931 // S390X:#define __SIZE_TYPE__ long unsigned int
7932 // S390X:#define __SIZE_WIDTH__ 64
7933 // S390X-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
7934 // S390X:#define __UINT16_C_SUFFIX__
7935 // S390X:#define __UINT16_MAX__ 65535
7936 // S390X:#define __UINT16_TYPE__ unsigned short
7937 // S390X:#define __UINT32_C_SUFFIX__ U
7938 // S390X:#define __UINT32_MAX__ 4294967295U
7939 // S390X:#define __UINT32_TYPE__ unsigned int
7940 // S390X:#define __UINT64_C_SUFFIX__ UL
7941 // S390X:#define __UINT64_MAX__ 18446744073709551615UL
7942 // S390X:#define __UINT64_TYPE__ long unsigned int
7943 // S390X:#define __UINT8_C_SUFFIX__
7944 // S390X:#define __UINT8_MAX__ 255
7945 // S390X:#define __UINT8_TYPE__ unsigned char
7946 // S390X:#define __UINTMAX_C_SUFFIX__ UL
7947 // S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
7948 // S390X:#define __UINTMAX_TYPE__ long unsigned int
7949 // S390X:#define __UINTMAX_WIDTH__ 64
7950 // S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
7951 // S390X:#define __UINTPTR_TYPE__ long unsigned int
7952 // S390X:#define __UINTPTR_WIDTH__ 64
7953 // S390X:#define __UINT_FAST16_MAX__ 65535
7954 // S390X:#define __UINT_FAST16_TYPE__ unsigned short
7955 // S390X:#define __UINT_FAST32_MAX__ 4294967295U
7956 // S390X:#define __UINT_FAST32_TYPE__ unsigned int
7957 // S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7958 // S390X:#define __UINT_FAST64_TYPE__ long unsigned int
7959 // S390X:#define __UINT_FAST8_MAX__ 255
7960 // S390X:#define __UINT_FAST8_TYPE__ unsigned char
7961 // S390X:#define __UINT_LEAST16_MAX__ 65535
7962 // S390X:#define __UINT_LEAST16_TYPE__ unsigned short
7963 // S390X:#define __UINT_LEAST32_MAX__ 4294967295U
7964 // S390X:#define __UINT_LEAST32_TYPE__ unsigned int
7965 // S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7966 // S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
7967 // S390X:#define __UINT_LEAST8_MAX__ 255
7968 // S390X:#define __UINT_LEAST8_TYPE__ unsigned char
7969 // S390X:#define __USER_LABEL_PREFIX__
7970 // S390X:#define __WCHAR_MAX__ 2147483647
7971 // S390X:#define __WCHAR_TYPE__ int
7972 // S390X:#define __WCHAR_WIDTH__ 32
7973 // S390X:#define __WINT_TYPE__ int
7974 // S390X:#define __WINT_WIDTH__ 32
7975 // S390X:#define __s390__ 1
7976 // S390X:#define __s390x__ 1
7977 //
7978 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7979 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7980 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
7981 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
7982 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT -check-prefix SPARC-DEFAULT-CXX %s
7983 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD -check-prefix SPARC-NETOPENBSD-CXX %s
7984 //
7985 // SPARC-NOT:#define _LP64
7986 // SPARC:#define __BIGGEST_ALIGNMENT__ 8
7987 // SPARC:#define __BIG_ENDIAN__ 1
7988 // SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
7989 // SPARC:#define __CHAR16_TYPE__ unsigned short
7990 // SPARC:#define __CHAR32_TYPE__ unsigned int
7991 // SPARC:#define __CHAR_BIT__ 8
7992 // SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7993 // SPARC:#define __DBL_DIG__ 15
7994 // SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
7995 // SPARC:#define __DBL_HAS_DENORM__ 1
7996 // SPARC:#define __DBL_HAS_INFINITY__ 1
7997 // SPARC:#define __DBL_HAS_QUIET_NAN__ 1
7998 // SPARC:#define __DBL_MANT_DIG__ 53
7999 // SPARC:#define __DBL_MAX_10_EXP__ 308
8000 // SPARC:#define __DBL_MAX_EXP__ 1024
8001 // SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
8002 // SPARC:#define __DBL_MIN_10_EXP__ (-307)
8003 // SPARC:#define __DBL_MIN_EXP__ (-1021)
8004 // SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
8005 // SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8006 // SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8007 // SPARC:#define __FLT_DIG__ 6
8008 // SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
8009 // SPARC:#define __FLT_EVAL_METHOD__ 0
8010 // SPARC:#define __FLT_HAS_DENORM__ 1
8011 // SPARC:#define __FLT_HAS_INFINITY__ 1
8012 // SPARC:#define __FLT_HAS_QUIET_NAN__ 1
8013 // SPARC:#define __FLT_MANT_DIG__ 24
8014 // SPARC:#define __FLT_MAX_10_EXP__ 38
8015 // SPARC:#define __FLT_MAX_EXP__ 128
8016 // SPARC:#define __FLT_MAX__ 3.40282347e+38F
8017 // SPARC:#define __FLT_MIN_10_EXP__ (-37)
8018 // SPARC:#define __FLT_MIN_EXP__ (-125)
8019 // SPARC:#define __FLT_MIN__ 1.17549435e-38F
8020 // SPARC:#define __FLT_RADIX__ 2
8021 // SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
8022 // SPARC:#define __INT16_C_SUFFIX__
8023 // SPARC:#define __INT16_FMTd__ "hd"
8024 // SPARC:#define __INT16_FMTi__ "hi"
8025 // SPARC:#define __INT16_MAX__ 32767
8026 // SPARC:#define __INT16_TYPE__ short
8027 // SPARC:#define __INT32_C_SUFFIX__
8028 // SPARC:#define __INT32_FMTd__ "d"
8029 // SPARC:#define __INT32_FMTi__ "i"
8030 // SPARC:#define __INT32_MAX__ 2147483647
8031 // SPARC:#define __INT32_TYPE__ int
8032 // SPARC:#define __INT64_C_SUFFIX__ LL
8033 // SPARC:#define __INT64_FMTd__ "lld"
8034 // SPARC:#define __INT64_FMTi__ "lli"
8035 // SPARC:#define __INT64_MAX__ 9223372036854775807LL
8036 // SPARC:#define __INT64_TYPE__ long long int
8037 // SPARC:#define __INT8_C_SUFFIX__
8038 // SPARC:#define __INT8_FMTd__ "hhd"
8039 // SPARC:#define __INT8_FMTi__ "hhi"
8040 // SPARC:#define __INT8_MAX__ 127
8041 // SPARC:#define __INT8_TYPE__ signed char
8042 // SPARC:#define __INTMAX_C_SUFFIX__ LL
8043 // SPARC:#define __INTMAX_FMTd__ "lld"
8044 // SPARC:#define __INTMAX_FMTi__ "lli"
8045 // SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
8046 // SPARC:#define __INTMAX_TYPE__ long long int
8047 // SPARC:#define __INTMAX_WIDTH__ 64
8048 // SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
8049 // SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
8050 // SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
8051 // SPARC-DEFAULT:#define __INTPTR_TYPE__ int
8052 // SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
8053 // SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
8054 // SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
8055 // SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
8056 // SPARC:#define __INTPTR_WIDTH__ 32
8057 // SPARC:#define __INT_FAST16_FMTd__ "hd"
8058 // SPARC:#define __INT_FAST16_FMTi__ "hi"
8059 // SPARC:#define __INT_FAST16_MAX__ 32767
8060 // SPARC:#define __INT_FAST16_TYPE__ short
8061 // SPARC:#define __INT_FAST32_FMTd__ "d"
8062 // SPARC:#define __INT_FAST32_FMTi__ "i"
8063 // SPARC:#define __INT_FAST32_MAX__ 2147483647
8064 // SPARC:#define __INT_FAST32_TYPE__ int
8065 // SPARC:#define __INT_FAST64_FMTd__ "lld"
8066 // SPARC:#define __INT_FAST64_FMTi__ "lli"
8067 // SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
8068 // SPARC:#define __INT_FAST64_TYPE__ long long int
8069 // SPARC:#define __INT_FAST8_FMTd__ "hhd"
8070 // SPARC:#define __INT_FAST8_FMTi__ "hhi"
8071 // SPARC:#define __INT_FAST8_MAX__ 127
8072 // SPARC:#define __INT_FAST8_TYPE__ signed char
8073 // SPARC:#define __INT_LEAST16_FMTd__ "hd"
8074 // SPARC:#define __INT_LEAST16_FMTi__ "hi"
8075 // SPARC:#define __INT_LEAST16_MAX__ 32767
8076 // SPARC:#define __INT_LEAST16_TYPE__ short
8077 // SPARC:#define __INT_LEAST32_FMTd__ "d"
8078 // SPARC:#define __INT_LEAST32_FMTi__ "i"
8079 // SPARC:#define __INT_LEAST32_MAX__ 2147483647
8080 // SPARC:#define __INT_LEAST32_TYPE__ int
8081 // SPARC:#define __INT_LEAST64_FMTd__ "lld"
8082 // SPARC:#define __INT_LEAST64_FMTi__ "lli"
8083 // SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8084 // SPARC:#define __INT_LEAST64_TYPE__ long long int
8085 // SPARC:#define __INT_LEAST8_FMTd__ "hhd"
8086 // SPARC:#define __INT_LEAST8_FMTi__ "hhi"
8087 // SPARC:#define __INT_LEAST8_MAX__ 127
8088 // SPARC:#define __INT_LEAST8_TYPE__ signed char
8089 // SPARC:#define __INT_MAX__ 2147483647
8090 // SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
8091 // SPARC:#define __LDBL_DIG__ 15
8092 // SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
8093 // SPARC:#define __LDBL_HAS_DENORM__ 1
8094 // SPARC:#define __LDBL_HAS_INFINITY__ 1
8095 // SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
8096 // SPARC:#define __LDBL_MANT_DIG__ 53
8097 // SPARC:#define __LDBL_MAX_10_EXP__ 308
8098 // SPARC:#define __LDBL_MAX_EXP__ 1024
8099 // SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
8100 // SPARC:#define __LDBL_MIN_10_EXP__ (-307)
8101 // SPARC:#define __LDBL_MIN_EXP__ (-1021)
8102 // SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
8103 // SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
8104 // SPARC:#define __LONG_MAX__ 2147483647L
8105 // SPARC-NOT:#define __LP64__
8106 // SPARC:#define __POINTER_WIDTH__ 32
8107 // SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
8108 // SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
8109 // SPARC:#define __PTRDIFF_WIDTH__ 32
8110 // SPARC:#define __REGISTER_PREFIX__
8111 // SPARC:#define __SCHAR_MAX__ 127
8112 // SPARC:#define __SHRT_MAX__ 32767
8113 // SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
8114 // SPARC:#define __SIG_ATOMIC_WIDTH__ 32
8115 // SPARC:#define __SIZEOF_DOUBLE__ 8
8116 // SPARC:#define __SIZEOF_FLOAT__ 4
8117 // SPARC:#define __SIZEOF_INT__ 4
8118 // SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
8119 // SPARC:#define __SIZEOF_LONG_LONG__ 8
8120 // SPARC:#define __SIZEOF_LONG__ 4
8121 // SPARC:#define __SIZEOF_POINTER__ 4
8122 // SPARC:#define __SIZEOF_PTRDIFF_T__ 4
8123 // SPARC:#define __SIZEOF_SHORT__ 2
8124 // SPARC:#define __SIZEOF_SIZE_T__ 4
8125 // SPARC:#define __SIZEOF_WCHAR_T__ 4
8126 // SPARC:#define __SIZEOF_WINT_T__ 4
8127 // SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
8128 // SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
8129 // SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
8130 // SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
8131 // SPARC:#define __SIZE_WIDTH__ 32
8132 // SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
8133 // SPARC-NETOPENBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
8134 // SPARC:#define __UINT16_C_SUFFIX__
8135 // SPARC:#define __UINT16_MAX__ 65535
8136 // SPARC:#define __UINT16_TYPE__ unsigned short
8137 // SPARC:#define __UINT32_C_SUFFIX__ U
8138 // SPARC:#define __UINT32_MAX__ 4294967295U
8139 // SPARC:#define __UINT32_TYPE__ unsigned int
8140 // SPARC:#define __UINT64_C_SUFFIX__ ULL
8141 // SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
8142 // SPARC:#define __UINT64_TYPE__ long long unsigned int
8143 // SPARC:#define __UINT8_C_SUFFIX__
8144 // SPARC:#define __UINT8_MAX__ 255
8145 // SPARC:#define __UINT8_TYPE__ unsigned char
8146 // SPARC:#define __UINTMAX_C_SUFFIX__ ULL
8147 // SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
8148 // SPARC:#define __UINTMAX_TYPE__ long long unsigned int
8149 // SPARC:#define __UINTMAX_WIDTH__ 64
8150 // SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
8151 // SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
8152 // SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
8153 // SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
8154 // SPARC:#define __UINTPTR_WIDTH__ 32
8155 // SPARC:#define __UINT_FAST16_MAX__ 65535
8156 // SPARC:#define __UINT_FAST16_TYPE__ unsigned short
8157 // SPARC:#define __UINT_FAST32_MAX__ 4294967295U
8158 // SPARC:#define __UINT_FAST32_TYPE__ unsigned int
8159 // SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8160 // SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
8161 // SPARC:#define __UINT_FAST8_MAX__ 255
8162 // SPARC:#define __UINT_FAST8_TYPE__ unsigned char
8163 // SPARC:#define __UINT_LEAST16_MAX__ 65535
8164 // SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
8165 // SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
8166 // SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
8167 // SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8168 // SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
8169 // SPARC:#define __UINT_LEAST8_MAX__ 255
8170 // SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
8171 // SPARC:#define __USER_LABEL_PREFIX__
8172 // SPARC:#define __VERSION__ "{{.*}}Clang{{.*}}
8173 // SPARC:#define __WCHAR_MAX__ 2147483647
8174 // SPARC:#define __WCHAR_TYPE__ int
8175 // SPARC:#define __WCHAR_WIDTH__ 32
8176 // SPARC:#define __WINT_TYPE__ int
8177 // SPARC:#define __WINT_WIDTH__ 32
8178 // SPARC:#define __sparc 1
8179 // SPARC:#define __sparc__ 1
8180 // SPARC:#define __sparcv8 1
8181 // SPARC:#define sparc 1
8182 
8183 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE %s
8184 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE -check-prefix TCE-CXX %s
8185 //
8186 // TCE-NOT:#define _LP64
8187 // TCE:#define __BIGGEST_ALIGNMENT__ 4
8188 // TCE:#define __BIG_ENDIAN__ 1
8189 // TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
8190 // TCE:#define __CHAR16_TYPE__ unsigned short
8191 // TCE:#define __CHAR32_TYPE__ unsigned int
8192 // TCE:#define __CHAR_BIT__ 8
8193 // TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
8194 // TCE:#define __DBL_DIG__ 6
8195 // TCE:#define __DBL_EPSILON__ 1.19209290e-7
8196 // TCE:#define __DBL_HAS_DENORM__ 1
8197 // TCE:#define __DBL_HAS_INFINITY__ 1
8198 // TCE:#define __DBL_HAS_QUIET_NAN__ 1
8199 // TCE:#define __DBL_MANT_DIG__ 24
8200 // TCE:#define __DBL_MAX_10_EXP__ 38
8201 // TCE:#define __DBL_MAX_EXP__ 128
8202 // TCE:#define __DBL_MAX__ 3.40282347e+38
8203 // TCE:#define __DBL_MIN_10_EXP__ (-37)
8204 // TCE:#define __DBL_MIN_EXP__ (-125)
8205 // TCE:#define __DBL_MIN__ 1.17549435e-38
8206 // TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8207 // TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8208 // TCE:#define __FLT_DIG__ 6
8209 // TCE:#define __FLT_EPSILON__ 1.19209290e-7F
8210 // TCE:#define __FLT_EVAL_METHOD__ 0
8211 // TCE:#define __FLT_HAS_DENORM__ 1
8212 // TCE:#define __FLT_HAS_INFINITY__ 1
8213 // TCE:#define __FLT_HAS_QUIET_NAN__ 1
8214 // TCE:#define __FLT_MANT_DIG__ 24
8215 // TCE:#define __FLT_MAX_10_EXP__ 38
8216 // TCE:#define __FLT_MAX_EXP__ 128
8217 // TCE:#define __FLT_MAX__ 3.40282347e+38F
8218 // TCE:#define __FLT_MIN_10_EXP__ (-37)
8219 // TCE:#define __FLT_MIN_EXP__ (-125)
8220 // TCE:#define __FLT_MIN__ 1.17549435e-38F
8221 // TCE:#define __FLT_RADIX__ 2
8222 // TCE:#define __INT16_C_SUFFIX__
8223 // TCE:#define __INT16_FMTd__ "hd"
8224 // TCE:#define __INT16_FMTi__ "hi"
8225 // TCE:#define __INT16_MAX__ 32767
8226 // TCE:#define __INT16_TYPE__ short
8227 // TCE:#define __INT32_C_SUFFIX__
8228 // TCE:#define __INT32_FMTd__ "d"
8229 // TCE:#define __INT32_FMTi__ "i"
8230 // TCE:#define __INT32_MAX__ 2147483647
8231 // TCE:#define __INT32_TYPE__ int
8232 // TCE:#define __INT8_C_SUFFIX__
8233 // TCE:#define __INT8_FMTd__ "hhd"
8234 // TCE:#define __INT8_FMTi__ "hhi"
8235 // TCE:#define __INT8_MAX__ 127
8236 // TCE:#define __INT8_TYPE__ signed char
8237 // TCE:#define __INTMAX_C_SUFFIX__ L
8238 // TCE:#define __INTMAX_FMTd__ "ld"
8239 // TCE:#define __INTMAX_FMTi__ "li"
8240 // TCE:#define __INTMAX_MAX__ 2147483647L
8241 // TCE:#define __INTMAX_TYPE__ long int
8242 // TCE:#define __INTMAX_WIDTH__ 32
8243 // TCE:#define __INTPTR_FMTd__ "d"
8244 // TCE:#define __INTPTR_FMTi__ "i"
8245 // TCE:#define __INTPTR_MAX__ 2147483647
8246 // TCE:#define __INTPTR_TYPE__ int
8247 // TCE:#define __INTPTR_WIDTH__ 32
8248 // TCE:#define __INT_FAST16_FMTd__ "hd"
8249 // TCE:#define __INT_FAST16_FMTi__ "hi"
8250 // TCE:#define __INT_FAST16_MAX__ 32767
8251 // TCE:#define __INT_FAST16_TYPE__ short
8252 // TCE:#define __INT_FAST32_FMTd__ "d"
8253 // TCE:#define __INT_FAST32_FMTi__ "i"
8254 // TCE:#define __INT_FAST32_MAX__ 2147483647
8255 // TCE:#define __INT_FAST32_TYPE__ int
8256 // TCE:#define __INT_FAST8_FMTd__ "hhd"
8257 // TCE:#define __INT_FAST8_FMTi__ "hhi"
8258 // TCE:#define __INT_FAST8_MAX__ 127
8259 // TCE:#define __INT_FAST8_TYPE__ signed char
8260 // TCE:#define __INT_LEAST16_FMTd__ "hd"
8261 // TCE:#define __INT_LEAST16_FMTi__ "hi"
8262 // TCE:#define __INT_LEAST16_MAX__ 32767
8263 // TCE:#define __INT_LEAST16_TYPE__ short
8264 // TCE:#define __INT_LEAST32_FMTd__ "d"
8265 // TCE:#define __INT_LEAST32_FMTi__ "i"
8266 // TCE:#define __INT_LEAST32_MAX__ 2147483647
8267 // TCE:#define __INT_LEAST32_TYPE__ int
8268 // TCE:#define __INT_LEAST8_FMTd__ "hhd"
8269 // TCE:#define __INT_LEAST8_FMTi__ "hhi"
8270 // TCE:#define __INT_LEAST8_MAX__ 127
8271 // TCE:#define __INT_LEAST8_TYPE__ signed char
8272 // TCE:#define __INT_MAX__ 2147483647
8273 // TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
8274 // TCE:#define __LDBL_DIG__ 6
8275 // TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
8276 // TCE:#define __LDBL_HAS_DENORM__ 1
8277 // TCE:#define __LDBL_HAS_INFINITY__ 1
8278 // TCE:#define __LDBL_HAS_QUIET_NAN__ 1
8279 // TCE:#define __LDBL_MANT_DIG__ 24
8280 // TCE:#define __LDBL_MAX_10_EXP__ 38
8281 // TCE:#define __LDBL_MAX_EXP__ 128
8282 // TCE:#define __LDBL_MAX__ 3.40282347e+38L
8283 // TCE:#define __LDBL_MIN_10_EXP__ (-37)
8284 // TCE:#define __LDBL_MIN_EXP__ (-125)
8285 // TCE:#define __LDBL_MIN__ 1.17549435e-38L
8286 // TCE:#define __LONG_LONG_MAX__ 2147483647LL
8287 // TCE:#define __LONG_MAX__ 2147483647L
8288 // TCE-NOT:#define __LP64__
8289 // TCE:#define __POINTER_WIDTH__ 32
8290 // TCE:#define __PTRDIFF_TYPE__ int
8291 // TCE:#define __PTRDIFF_WIDTH__ 32
8292 // TCE:#define __SCHAR_MAX__ 127
8293 // TCE:#define __SHRT_MAX__ 32767
8294 // TCE:#define __SIG_ATOMIC_MAX__ 2147483647
8295 // TCE:#define __SIG_ATOMIC_WIDTH__ 32
8296 // TCE:#define __SIZEOF_DOUBLE__ 4
8297 // TCE:#define __SIZEOF_FLOAT__ 4
8298 // TCE:#define __SIZEOF_INT__ 4
8299 // TCE:#define __SIZEOF_LONG_DOUBLE__ 4
8300 // TCE:#define __SIZEOF_LONG_LONG__ 4
8301 // TCE:#define __SIZEOF_LONG__ 4
8302 // TCE:#define __SIZEOF_POINTER__ 4
8303 // TCE:#define __SIZEOF_PTRDIFF_T__ 4
8304 // TCE:#define __SIZEOF_SHORT__ 2
8305 // TCE:#define __SIZEOF_SIZE_T__ 4
8306 // TCE:#define __SIZEOF_WCHAR_T__ 4
8307 // TCE:#define __SIZEOF_WINT_T__ 4
8308 // TCE:#define __SIZE_MAX__ 4294967295U
8309 // TCE:#define __SIZE_TYPE__ unsigned int
8310 // TCE:#define __SIZE_WIDTH__ 32
8311 // TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
8312 // TCE:#define __TCE_V1__ 1
8313 // TCE:#define __TCE__ 1
8314 // TCE:#define __UINT16_C_SUFFIX__
8315 // TCE:#define __UINT16_MAX__ 65535
8316 // TCE:#define __UINT16_TYPE__ unsigned short
8317 // TCE:#define __UINT32_C_SUFFIX__ U
8318 // TCE:#define __UINT32_MAX__ 4294967295U
8319 // TCE:#define __UINT32_TYPE__ unsigned int
8320 // TCE:#define __UINT8_C_SUFFIX__
8321 // TCE:#define __UINT8_MAX__ 255
8322 // TCE:#define __UINT8_TYPE__ unsigned char
8323 // TCE:#define __UINTMAX_C_SUFFIX__ UL
8324 // TCE:#define __UINTMAX_MAX__ 4294967295UL
8325 // TCE:#define __UINTMAX_TYPE__ long unsigned int
8326 // TCE:#define __UINTMAX_WIDTH__ 32
8327 // TCE:#define __UINTPTR_MAX__ 4294967295U
8328 // TCE:#define __UINTPTR_TYPE__ unsigned int
8329 // TCE:#define __UINTPTR_WIDTH__ 32
8330 // TCE:#define __UINT_FAST16_MAX__ 65535
8331 // TCE:#define __UINT_FAST16_TYPE__ unsigned short
8332 // TCE:#define __UINT_FAST32_MAX__ 4294967295U
8333 // TCE:#define __UINT_FAST32_TYPE__ unsigned int
8334 // TCE:#define __UINT_FAST8_MAX__ 255
8335 // TCE:#define __UINT_FAST8_TYPE__ unsigned char
8336 // TCE:#define __UINT_LEAST16_MAX__ 65535
8337 // TCE:#define __UINT_LEAST16_TYPE__ unsigned short
8338 // TCE:#define __UINT_LEAST32_MAX__ 4294967295U
8339 // TCE:#define __UINT_LEAST32_TYPE__ unsigned int
8340 // TCE:#define __UINT_LEAST8_MAX__ 255
8341 // TCE:#define __UINT_LEAST8_TYPE__ unsigned char
8342 // TCE:#define __USER_LABEL_PREFIX__
8343 // TCE:#define __WCHAR_MAX__ 2147483647
8344 // TCE:#define __WCHAR_TYPE__ int
8345 // TCE:#define __WCHAR_WIDTH__ 32
8346 // TCE:#define __WINT_TYPE__ int
8347 // TCE:#define __WINT_WIDTH__ 32
8348 // TCE:#define __tce 1
8349 // TCE:#define __tce__ 1
8350 // TCE:#define tce 1
8351 //
8352 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64 %s
8353 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64 -check-prefix X86_64-CXX %s
8354 //
8355 // X86_64:#define _LP64 1
8356 // X86_64-NOT:#define _LP32 1
8357 // X86_64:#define __BIGGEST_ALIGNMENT__ 16
8358 // X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8359 // X86_64:#define __CHAR16_TYPE__ unsigned short
8360 // X86_64:#define __CHAR32_TYPE__ unsigned int
8361 // X86_64:#define __CHAR_BIT__ 8
8362 // X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8363 // X86_64:#define __DBL_DIG__ 15
8364 // X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
8365 // X86_64:#define __DBL_HAS_DENORM__ 1
8366 // X86_64:#define __DBL_HAS_INFINITY__ 1
8367 // X86_64:#define __DBL_HAS_QUIET_NAN__ 1
8368 // X86_64:#define __DBL_MANT_DIG__ 53
8369 // X86_64:#define __DBL_MAX_10_EXP__ 308
8370 // X86_64:#define __DBL_MAX_EXP__ 1024
8371 // X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
8372 // X86_64:#define __DBL_MIN_10_EXP__ (-307)
8373 // X86_64:#define __DBL_MIN_EXP__ (-1021)
8374 // X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
8375 // X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8376 // X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8377 // X86_64:#define __FLT_DIG__ 6
8378 // X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
8379 // X86_64:#define __FLT_EVAL_METHOD__ 0
8380 // X86_64:#define __FLT_HAS_DENORM__ 1
8381 // X86_64:#define __FLT_HAS_INFINITY__ 1
8382 // X86_64:#define __FLT_HAS_QUIET_NAN__ 1
8383 // X86_64:#define __FLT_MANT_DIG__ 24
8384 // X86_64:#define __FLT_MAX_10_EXP__ 38
8385 // X86_64:#define __FLT_MAX_EXP__ 128
8386 // X86_64:#define __FLT_MAX__ 3.40282347e+38F
8387 // X86_64:#define __FLT_MIN_10_EXP__ (-37)
8388 // X86_64:#define __FLT_MIN_EXP__ (-125)
8389 // X86_64:#define __FLT_MIN__ 1.17549435e-38F
8390 // X86_64:#define __FLT_RADIX__ 2
8391 // X86_64:#define __INT16_C_SUFFIX__
8392 // X86_64:#define __INT16_FMTd__ "hd"
8393 // X86_64:#define __INT16_FMTi__ "hi"
8394 // X86_64:#define __INT16_MAX__ 32767
8395 // X86_64:#define __INT16_TYPE__ short
8396 // X86_64:#define __INT32_C_SUFFIX__
8397 // X86_64:#define __INT32_FMTd__ "d"
8398 // X86_64:#define __INT32_FMTi__ "i"
8399 // X86_64:#define __INT32_MAX__ 2147483647
8400 // X86_64:#define __INT32_TYPE__ int
8401 // X86_64:#define __INT64_C_SUFFIX__ L
8402 // X86_64:#define __INT64_FMTd__ "ld"
8403 // X86_64:#define __INT64_FMTi__ "li"
8404 // X86_64:#define __INT64_MAX__ 9223372036854775807L
8405 // X86_64:#define __INT64_TYPE__ long int
8406 // X86_64:#define __INT8_C_SUFFIX__
8407 // X86_64:#define __INT8_FMTd__ "hhd"
8408 // X86_64:#define __INT8_FMTi__ "hhi"
8409 // X86_64:#define __INT8_MAX__ 127
8410 // X86_64:#define __INT8_TYPE__ signed char
8411 // X86_64:#define __INTMAX_C_SUFFIX__ L
8412 // X86_64:#define __INTMAX_FMTd__ "ld"
8413 // X86_64:#define __INTMAX_FMTi__ "li"
8414 // X86_64:#define __INTMAX_MAX__ 9223372036854775807L
8415 // X86_64:#define __INTMAX_TYPE__ long int
8416 // X86_64:#define __INTMAX_WIDTH__ 64
8417 // X86_64:#define __INTPTR_FMTd__ "ld"
8418 // X86_64:#define __INTPTR_FMTi__ "li"
8419 // X86_64:#define __INTPTR_MAX__ 9223372036854775807L
8420 // X86_64:#define __INTPTR_TYPE__ long int
8421 // X86_64:#define __INTPTR_WIDTH__ 64
8422 // X86_64:#define __INT_FAST16_FMTd__ "hd"
8423 // X86_64:#define __INT_FAST16_FMTi__ "hi"
8424 // X86_64:#define __INT_FAST16_MAX__ 32767
8425 // X86_64:#define __INT_FAST16_TYPE__ short
8426 // X86_64:#define __INT_FAST32_FMTd__ "d"
8427 // X86_64:#define __INT_FAST32_FMTi__ "i"
8428 // X86_64:#define __INT_FAST32_MAX__ 2147483647
8429 // X86_64:#define __INT_FAST32_TYPE__ int
8430 // X86_64:#define __INT_FAST64_FMTd__ "ld"
8431 // X86_64:#define __INT_FAST64_FMTi__ "li"
8432 // X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
8433 // X86_64:#define __INT_FAST64_TYPE__ long int
8434 // X86_64:#define __INT_FAST8_FMTd__ "hhd"
8435 // X86_64:#define __INT_FAST8_FMTi__ "hhi"
8436 // X86_64:#define __INT_FAST8_MAX__ 127
8437 // X86_64:#define __INT_FAST8_TYPE__ signed char
8438 // X86_64:#define __INT_LEAST16_FMTd__ "hd"
8439 // X86_64:#define __INT_LEAST16_FMTi__ "hi"
8440 // X86_64:#define __INT_LEAST16_MAX__ 32767
8441 // X86_64:#define __INT_LEAST16_TYPE__ short
8442 // X86_64:#define __INT_LEAST32_FMTd__ "d"
8443 // X86_64:#define __INT_LEAST32_FMTi__ "i"
8444 // X86_64:#define __INT_LEAST32_MAX__ 2147483647
8445 // X86_64:#define __INT_LEAST32_TYPE__ int
8446 // X86_64:#define __INT_LEAST64_FMTd__ "ld"
8447 // X86_64:#define __INT_LEAST64_FMTi__ "li"
8448 // X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
8449 // X86_64:#define __INT_LEAST64_TYPE__ long int
8450 // X86_64:#define __INT_LEAST8_FMTd__ "hhd"
8451 // X86_64:#define __INT_LEAST8_FMTi__ "hhi"
8452 // X86_64:#define __INT_LEAST8_MAX__ 127
8453 // X86_64:#define __INT_LEAST8_TYPE__ signed char
8454 // X86_64:#define __INT_MAX__ 2147483647
8455 // X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8456 // X86_64:#define __LDBL_DIG__ 18
8457 // X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8458 // X86_64:#define __LDBL_HAS_DENORM__ 1
8459 // X86_64:#define __LDBL_HAS_INFINITY__ 1
8460 // X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
8461 // X86_64:#define __LDBL_MANT_DIG__ 64
8462 // X86_64:#define __LDBL_MAX_10_EXP__ 4932
8463 // X86_64:#define __LDBL_MAX_EXP__ 16384
8464 // X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8465 // X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
8466 // X86_64:#define __LDBL_MIN_EXP__ (-16381)
8467 // X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8468 // X86_64:#define __LITTLE_ENDIAN__ 1
8469 // X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
8470 // X86_64:#define __LONG_MAX__ 9223372036854775807L
8471 // X86_64:#define __LP64__ 1
8472 // X86_64-NOT:#define __ILP32__ 1
8473 // X86_64:#define __MMX__ 1
8474 // X86_64:#define __NO_MATH_INLINES 1
8475 // X86_64:#define __POINTER_WIDTH__ 64
8476 // X86_64:#define __PTRDIFF_TYPE__ long int
8477 // X86_64:#define __PTRDIFF_WIDTH__ 64
8478 // X86_64:#define __REGISTER_PREFIX__
8479 // X86_64:#define __SCHAR_MAX__ 127
8480 // X86_64:#define __SHRT_MAX__ 32767
8481 // X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
8482 // X86_64:#define __SIG_ATOMIC_WIDTH__ 32
8483 // X86_64:#define __SIZEOF_DOUBLE__ 8
8484 // X86_64:#define __SIZEOF_FLOAT__ 4
8485 // X86_64:#define __SIZEOF_INT__ 4
8486 // X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
8487 // X86_64:#define __SIZEOF_LONG_LONG__ 8
8488 // X86_64:#define __SIZEOF_LONG__ 8
8489 // X86_64:#define __SIZEOF_POINTER__ 8
8490 // X86_64:#define __SIZEOF_PTRDIFF_T__ 8
8491 // X86_64:#define __SIZEOF_SHORT__ 2
8492 // X86_64:#define __SIZEOF_SIZE_T__ 8
8493 // X86_64:#define __SIZEOF_WCHAR_T__ 4
8494 // X86_64:#define __SIZEOF_WINT_T__ 4
8495 // X86_64:#define __SIZE_MAX__ 18446744073709551615UL
8496 // X86_64:#define __SIZE_TYPE__ long unsigned int
8497 // X86_64:#define __SIZE_WIDTH__ 64
8498 // X86_64:#define __SSE2_MATH__ 1
8499 // X86_64:#define __SSE2__ 1
8500 // X86_64:#define __SSE_MATH__ 1
8501 // X86_64:#define __SSE__ 1
8502 // X86_64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
8503 // X86_64:#define __UINT16_C_SUFFIX__
8504 // X86_64:#define __UINT16_MAX__ 65535
8505 // X86_64:#define __UINT16_TYPE__ unsigned short
8506 // X86_64:#define __UINT32_C_SUFFIX__ U
8507 // X86_64:#define __UINT32_MAX__ 4294967295U
8508 // X86_64:#define __UINT32_TYPE__ unsigned int
8509 // X86_64:#define __UINT64_C_SUFFIX__ UL
8510 // X86_64:#define __UINT64_MAX__ 18446744073709551615UL
8511 // X86_64:#define __UINT64_TYPE__ long unsigned int
8512 // X86_64:#define __UINT8_C_SUFFIX__
8513 // X86_64:#define __UINT8_MAX__ 255
8514 // X86_64:#define __UINT8_TYPE__ unsigned char
8515 // X86_64:#define __UINTMAX_C_SUFFIX__ UL
8516 // X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
8517 // X86_64:#define __UINTMAX_TYPE__ long unsigned int
8518 // X86_64:#define __UINTMAX_WIDTH__ 64
8519 // X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
8520 // X86_64:#define __UINTPTR_TYPE__ long unsigned int
8521 // X86_64:#define __UINTPTR_WIDTH__ 64
8522 // X86_64:#define __UINT_FAST16_MAX__ 65535
8523 // X86_64:#define __UINT_FAST16_TYPE__ unsigned short
8524 // X86_64:#define __UINT_FAST32_MAX__ 4294967295U
8525 // X86_64:#define __UINT_FAST32_TYPE__ unsigned int
8526 // X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8527 // X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
8528 // X86_64:#define __UINT_FAST8_MAX__ 255
8529 // X86_64:#define __UINT_FAST8_TYPE__ unsigned char
8530 // X86_64:#define __UINT_LEAST16_MAX__ 65535
8531 // X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
8532 // X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
8533 // X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
8534 // X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8535 // X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
8536 // X86_64:#define __UINT_LEAST8_MAX__ 255
8537 // X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
8538 // X86_64:#define __USER_LABEL_PREFIX__
8539 // X86_64:#define __WCHAR_MAX__ 2147483647
8540 // X86_64:#define __WCHAR_TYPE__ int
8541 // X86_64:#define __WCHAR_WIDTH__ 32
8542 // X86_64:#define __WINT_TYPE__ int
8543 // X86_64:#define __WINT_WIDTH__ 32
8544 // X86_64:#define __amd64 1
8545 // X86_64:#define __amd64__ 1
8546 // X86_64:#define __code_model_small_ 1
8547 // X86_64:#define __x86_64 1
8548 // X86_64:#define __x86_64__ 1
8549 //
8550 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64h-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64H %s
8551 //
8552 // X86_64H:#define __x86_64 1
8553 // X86_64H:#define __x86_64__ 1
8554 // X86_64H:#define __x86_64h 1
8555 // X86_64H:#define __x86_64h__ 1
8556 //
8557 // RUN: %clang -xc - -E -dM -mcmodel=medium --target=i386-unknown-linux < /dev/null | FileCheck -match-full-lines -check-prefix X86_MEDIUM %s
8558 // X86_MEDIUM:#define __code_model_medium_ 1
8559 //
8560 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none-gnux32 < /dev/null | FileCheck -match-full-lines -check-prefix X32 %s
8561 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-none-none-gnux32 < /dev/null | FileCheck -match-full-lines -check-prefix X32 -check-prefix X32-CXX %s
8562 //
8563 // X32:#define _ILP32 1
8564 // X32-NOT:#define _LP64 1
8565 // X32:#define __BIGGEST_ALIGNMENT__ 16
8566 // X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8567 // X32:#define __CHAR16_TYPE__ unsigned short
8568 // X32:#define __CHAR32_TYPE__ unsigned int
8569 // X32:#define __CHAR_BIT__ 8
8570 // X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8571 // X32:#define __DBL_DIG__ 15
8572 // X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
8573 // X32:#define __DBL_HAS_DENORM__ 1
8574 // X32:#define __DBL_HAS_INFINITY__ 1
8575 // X32:#define __DBL_HAS_QUIET_NAN__ 1
8576 // X32:#define __DBL_MANT_DIG__ 53
8577 // X32:#define __DBL_MAX_10_EXP__ 308
8578 // X32:#define __DBL_MAX_EXP__ 1024
8579 // X32:#define __DBL_MAX__ 1.7976931348623157e+308
8580 // X32:#define __DBL_MIN_10_EXP__ (-307)
8581 // X32:#define __DBL_MIN_EXP__ (-1021)
8582 // X32:#define __DBL_MIN__ 2.2250738585072014e-308
8583 // X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8584 // X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8585 // X32:#define __FLT_DIG__ 6
8586 // X32:#define __FLT_EPSILON__ 1.19209290e-7F
8587 // X32:#define __FLT_EVAL_METHOD__ 0
8588 // X32:#define __FLT_HAS_DENORM__ 1
8589 // X32:#define __FLT_HAS_INFINITY__ 1
8590 // X32:#define __FLT_HAS_QUIET_NAN__ 1
8591 // X32:#define __FLT_MANT_DIG__ 24
8592 // X32:#define __FLT_MAX_10_EXP__ 38
8593 // X32:#define __FLT_MAX_EXP__ 128
8594 // X32:#define __FLT_MAX__ 3.40282347e+38F
8595 // X32:#define __FLT_MIN_10_EXP__ (-37)
8596 // X32:#define __FLT_MIN_EXP__ (-125)
8597 // X32:#define __FLT_MIN__ 1.17549435e-38F
8598 // X32:#define __FLT_RADIX__ 2
8599 // X32:#define __ILP32__ 1
8600 // X32-NOT:#define __LP64__ 1
8601 // X32:#define __INT16_C_SUFFIX__
8602 // X32:#define __INT16_FMTd__ "hd"
8603 // X32:#define __INT16_FMTi__ "hi"
8604 // X32:#define __INT16_MAX__ 32767
8605 // X32:#define __INT16_TYPE__ short
8606 // X32:#define __INT32_C_SUFFIX__
8607 // X32:#define __INT32_FMTd__ "d"
8608 // X32:#define __INT32_FMTi__ "i"
8609 // X32:#define __INT32_MAX__ 2147483647
8610 // X32:#define __INT32_TYPE__ int
8611 // X32:#define __INT64_C_SUFFIX__ LL
8612 // X32:#define __INT64_FMTd__ "lld"
8613 // X32:#define __INT64_FMTi__ "lli"
8614 // X32:#define __INT64_MAX__ 9223372036854775807LL
8615 // X32:#define __INT64_TYPE__ long long int
8616 // X32:#define __INT8_C_SUFFIX__
8617 // X32:#define __INT8_FMTd__ "hhd"
8618 // X32:#define __INT8_FMTi__ "hhi"
8619 // X32:#define __INT8_MAX__ 127
8620 // X32:#define __INT8_TYPE__ signed char
8621 // X32:#define __INTMAX_C_SUFFIX__ LL
8622 // X32:#define __INTMAX_FMTd__ "lld"
8623 // X32:#define __INTMAX_FMTi__ "lli"
8624 // X32:#define __INTMAX_MAX__ 9223372036854775807LL
8625 // X32:#define __INTMAX_TYPE__ long long int
8626 // X32:#define __INTMAX_WIDTH__ 64
8627 // X32:#define __INTPTR_FMTd__ "d"
8628 // X32:#define __INTPTR_FMTi__ "i"
8629 // X32:#define __INTPTR_MAX__ 2147483647
8630 // X32:#define __INTPTR_TYPE__ int
8631 // X32:#define __INTPTR_WIDTH__ 32
8632 // X32:#define __INT_FAST16_FMTd__ "hd"
8633 // X32:#define __INT_FAST16_FMTi__ "hi"
8634 // X32:#define __INT_FAST16_MAX__ 32767
8635 // X32:#define __INT_FAST16_TYPE__ short
8636 // X32:#define __INT_FAST32_FMTd__ "d"
8637 // X32:#define __INT_FAST32_FMTi__ "i"
8638 // X32:#define __INT_FAST32_MAX__ 2147483647
8639 // X32:#define __INT_FAST32_TYPE__ int
8640 // X32:#define __INT_FAST64_FMTd__ "lld"
8641 // X32:#define __INT_FAST64_FMTi__ "lli"
8642 // X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
8643 // X32:#define __INT_FAST64_TYPE__ long long int
8644 // X32:#define __INT_FAST8_FMTd__ "hhd"
8645 // X32:#define __INT_FAST8_FMTi__ "hhi"
8646 // X32:#define __INT_FAST8_MAX__ 127
8647 // X32:#define __INT_FAST8_TYPE__ signed char
8648 // X32:#define __INT_LEAST16_FMTd__ "hd"
8649 // X32:#define __INT_LEAST16_FMTi__ "hi"
8650 // X32:#define __INT_LEAST16_MAX__ 32767
8651 // X32:#define __INT_LEAST16_TYPE__ short
8652 // X32:#define __INT_LEAST32_FMTd__ "d"
8653 // X32:#define __INT_LEAST32_FMTi__ "i"
8654 // X32:#define __INT_LEAST32_MAX__ 2147483647
8655 // X32:#define __INT_LEAST32_TYPE__ int
8656 // X32:#define __INT_LEAST64_FMTd__ "lld"
8657 // X32:#define __INT_LEAST64_FMTi__ "lli"
8658 // X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8659 // X32:#define __INT_LEAST64_TYPE__ long long int
8660 // X32:#define __INT_LEAST8_FMTd__ "hhd"
8661 // X32:#define __INT_LEAST8_FMTi__ "hhi"
8662 // X32:#define __INT_LEAST8_MAX__ 127
8663 // X32:#define __INT_LEAST8_TYPE__ signed char
8664 // X32:#define __INT_MAX__ 2147483647
8665 // X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8666 // X32:#define __LDBL_DIG__ 18
8667 // X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8668 // X32:#define __LDBL_HAS_DENORM__ 1
8669 // X32:#define __LDBL_HAS_INFINITY__ 1
8670 // X32:#define __LDBL_HAS_QUIET_NAN__ 1
8671 // X32:#define __LDBL_MANT_DIG__ 64
8672 // X32:#define __LDBL_MAX_10_EXP__ 4932
8673 // X32:#define __LDBL_MAX_EXP__ 16384
8674 // X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8675 // X32:#define __LDBL_MIN_10_EXP__ (-4931)
8676 // X32:#define __LDBL_MIN_EXP__ (-16381)
8677 // X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8678 // X32:#define __LITTLE_ENDIAN__ 1
8679 // X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
8680 // X32:#define __LONG_MAX__ 2147483647L
8681 // X32:#define __MMX__ 1
8682 // X32:#define __NO_MATH_INLINES 1
8683 // X32:#define __POINTER_WIDTH__ 32
8684 // X32:#define __PTRDIFF_TYPE__ int
8685 // X32:#define __PTRDIFF_WIDTH__ 32
8686 // X32:#define __REGISTER_PREFIX__
8687 // X32:#define __SCHAR_MAX__ 127
8688 // X32:#define __SHRT_MAX__ 32767
8689 // X32:#define __SIG_ATOMIC_MAX__ 2147483647
8690 // X32:#define __SIG_ATOMIC_WIDTH__ 32
8691 // X32:#define __SIZEOF_DOUBLE__ 8
8692 // X32:#define __SIZEOF_FLOAT__ 4
8693 // X32:#define __SIZEOF_INT__ 4
8694 // X32:#define __SIZEOF_LONG_DOUBLE__ 16
8695 // X32:#define __SIZEOF_LONG_LONG__ 8
8696 // X32:#define __SIZEOF_LONG__ 4
8697 // X32:#define __SIZEOF_POINTER__ 4
8698 // X32:#define __SIZEOF_PTRDIFF_T__ 4
8699 // X32:#define __SIZEOF_SHORT__ 2
8700 // X32:#define __SIZEOF_SIZE_T__ 4
8701 // X32:#define __SIZEOF_WCHAR_T__ 4
8702 // X32:#define __SIZEOF_WINT_T__ 4
8703 // X32:#define __SIZE_MAX__ 4294967295U
8704 // X32:#define __SIZE_TYPE__ unsigned int
8705 // X32:#define __SIZE_WIDTH__ 32
8706 // X32:#define __SSE2_MATH__ 1
8707 // X32:#define __SSE2__ 1
8708 // X32:#define __SSE_MATH__ 1
8709 // X32:#define __SSE__ 1
8710 // X32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
8711 // X32:#define __UINT16_C_SUFFIX__
8712 // X32:#define __UINT16_MAX__ 65535
8713 // X32:#define __UINT16_TYPE__ unsigned short
8714 // X32:#define __UINT32_C_SUFFIX__ U
8715 // X32:#define __UINT32_MAX__ 4294967295U
8716 // X32:#define __UINT32_TYPE__ unsigned int
8717 // X32:#define __UINT64_C_SUFFIX__ ULL
8718 // X32:#define __UINT64_MAX__ 18446744073709551615ULL
8719 // X32:#define __UINT64_TYPE__ long long unsigned int
8720 // X32:#define __UINT8_C_SUFFIX__
8721 // X32:#define __UINT8_MAX__ 255
8722 // X32:#define __UINT8_TYPE__ unsigned char
8723 // X32:#define __UINTMAX_C_SUFFIX__ ULL
8724 // X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
8725 // X32:#define __UINTMAX_TYPE__ long long unsigned int
8726 // X32:#define __UINTMAX_WIDTH__ 64
8727 // X32:#define __UINTPTR_MAX__ 4294967295U
8728 // X32:#define __UINTPTR_TYPE__ unsigned int
8729 // X32:#define __UINTPTR_WIDTH__ 32
8730 // X32:#define __UINT_FAST16_MAX__ 65535
8731 // X32:#define __UINT_FAST16_TYPE__ unsigned short
8732 // X32:#define __UINT_FAST32_MAX__ 4294967295U
8733 // X32:#define __UINT_FAST32_TYPE__ unsigned int
8734 // X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8735 // X32:#define __UINT_FAST64_TYPE__ long long unsigned int
8736 // X32:#define __UINT_FAST8_MAX__ 255
8737 // X32:#define __UINT_FAST8_TYPE__ unsigned char
8738 // X32:#define __UINT_LEAST16_MAX__ 65535
8739 // X32:#define __UINT_LEAST16_TYPE__ unsigned short
8740 // X32:#define __UINT_LEAST32_MAX__ 4294967295U
8741 // X32:#define __UINT_LEAST32_TYPE__ unsigned int
8742 // X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8743 // X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
8744 // X32:#define __UINT_LEAST8_MAX__ 255
8745 // X32:#define __UINT_LEAST8_TYPE__ unsigned char
8746 // X32:#define __USER_LABEL_PREFIX__
8747 // X32:#define __WCHAR_MAX__ 2147483647
8748 // X32:#define __WCHAR_TYPE__ int
8749 // X32:#define __WCHAR_WIDTH__ 32
8750 // X32:#define __WINT_TYPE__ int
8751 // X32:#define __WINT_WIDTH__ 32
8752 // X32:#define __amd64 1
8753 // X32:#define __amd64__ 1
8754 // X32:#define __x86_64 1
8755 // X32:#define __x86_64__ 1
8756 //
8757 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-unknown-cloudabi < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-CLOUDABI %s
8758 //
8759 // X86_64-CLOUDABI:#define _LP64 1
8760 // X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
8761 // X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
8762 // X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
8763 // X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
8764 // X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
8765 // X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
8766 // X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
8767 // X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8768 // X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
8769 // X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
8770 // X86_64-CLOUDABI:#define __CHAR_BIT__ 8
8771 // X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
8772 // X86_64-CLOUDABI:#define __CloudABI__ 1
8773 // X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
8774 // X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8775 // X86_64-CLOUDABI:#define __DBL_DIG__ 15
8776 // X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
8777 // X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
8778 // X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
8779 // X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
8780 // X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
8781 // X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
8782 // X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
8783 // X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
8784 // X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
8785 // X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
8786 // X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
8787 // X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8788 // X86_64-CLOUDABI:#define __ELF__ 1
8789 // X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
8790 // X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
8791 // X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8792 // X86_64-CLOUDABI:#define __FLT_DIG__ 6
8793 // X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
8794 // X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
8795 // X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
8796 // X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
8797 // X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
8798 // X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
8799 // X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
8800 // X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
8801 // X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
8802 // X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
8803 // X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
8804 // X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
8805 // X86_64-CLOUDABI:#define __FLT_RADIX__ 2
8806 // X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8807 // X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8808 // X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8809 // X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8810 // X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8811 // X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
8812 // X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8813 // X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8814 // X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8815 // X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8816 // X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
8817 // X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
8818 // X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
8819 // X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
8820 // X86_64-CLOUDABI:#define __GNUC__ 4
8821 // X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
8822 // X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
8823 // X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
8824 // X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
8825 // X86_64-CLOUDABI:#define __INT16_MAX__ 32767
8826 // X86_64-CLOUDABI:#define __INT16_TYPE__ short
8827 // X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
8828 // X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
8829 // X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
8830 // X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
8831 // X86_64-CLOUDABI:#define __INT32_TYPE__ int
8832 // X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
8833 // X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
8834 // X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
8835 // X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
8836 // X86_64-CLOUDABI:#define __INT64_TYPE__ long int
8837 // X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
8838 // X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
8839 // X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
8840 // X86_64-CLOUDABI:#define __INT8_MAX__ 127
8841 // X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
8842 // X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
8843 // X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
8844 // X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
8845 // X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
8846 // X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
8847 // X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
8848 // X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
8849 // X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
8850 // X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
8851 // X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
8852 // X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
8853 // X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
8854 // X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
8855 // X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
8856 // X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
8857 // X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
8858 // X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
8859 // X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
8860 // X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
8861 // X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
8862 // X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
8863 // X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
8864 // X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
8865 // X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
8866 // X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
8867 // X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
8868 // X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
8869 // X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
8870 // X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
8871 // X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
8872 // X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
8873 // X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
8874 // X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
8875 // X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
8876 // X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
8877 // X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
8878 // X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
8879 // X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
8880 // X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
8881 // X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
8882 // X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
8883 // X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
8884 // X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
8885 // X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
8886 // X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
8887 // X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8888 // X86_64-CLOUDABI:#define __LDBL_DIG__ 18
8889 // X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8890 // X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
8891 // X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
8892 // X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
8893 // X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
8894 // X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
8895 // X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
8896 // X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8897 // X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
8898 // X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
8899 // X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8900 // X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
8901 // X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
8902 // X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
8903 // X86_64-CLOUDABI:#define __LP64__ 1
8904 // X86_64-CLOUDABI:#define __MMX__ 1
8905 // X86_64-CLOUDABI:#define __NO_INLINE__ 1
8906 // X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
8907 // X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
8908 // X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
8909 // X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
8910 // X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
8911 // X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
8912 // X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
8913 // X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
8914 // X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
8915 // X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
8916 // X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
8917 // X86_64-CLOUDABI:#define __REGISTER_PREFIX__
8918 // X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
8919 // X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
8920 // X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
8921 // X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
8922 // X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
8923 // X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
8924 // X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
8925 // X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
8926 // X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
8927 // X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
8928 // X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
8929 // X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
8930 // X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
8931 // X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
8932 // X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
8933 // X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
8934 // X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
8935 // X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
8936 // X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
8937 // X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
8938 // X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
8939 // X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
8940 // X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
8941 // X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
8942 // X86_64-CLOUDABI:#define __SSE2_MATH__ 1
8943 // X86_64-CLOUDABI:#define __SSE2__ 1
8944 // X86_64-CLOUDABI:#define __SSE_MATH__ 1
8945 // X86_64-CLOUDABI:#define __SSE__ 1
8946 // X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
8947 // X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
8948 // X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
8949 // X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
8950 // X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
8951 // X86_64-CLOUDABI:#define __STDC__ 1
8952 // X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
8953 // X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
8954 // X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
8955 // X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
8956 // X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
8957 // X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
8958 // X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
8959 // X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
8960 // X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
8961 // X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
8962 // X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
8963 // X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
8964 // X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
8965 // X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
8966 // X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
8967 // X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
8968 // X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
8969 // X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
8970 // X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
8971 // X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
8972 // X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
8973 // X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
8974 // X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
8975 // X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
8976 // X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
8977 // X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
8978 // X86_64-CLOUDABI:#define __UINT8_MAX__ 255
8979 // X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
8980 // X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
8981 // X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
8982 // X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
8983 // X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
8984 // X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
8985 // X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
8986 // X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
8987 // X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
8988 // X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
8989 // X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
8990 // X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
8991 // X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
8992 // X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
8993 // X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
8994 // X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
8995 // X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
8996 // X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
8997 // X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
8998 // X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
8999 // X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
9000 // X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
9001 // X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
9002 // X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
9003 // X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
9004 // X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
9005 // X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
9006 // X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
9007 // X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
9008 // X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
9009 // X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
9010 // X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
9011 // X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
9012 // X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
9013 // X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
9014 // X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
9015 // X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
9016 // X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
9017 // X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
9018 // X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
9019 // X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
9020 // X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
9021 // X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
9022 // X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
9023 // X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
9024 // X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
9025 // X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
9026 // X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
9027 // X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
9028 // X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
9029 // X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
9030 // X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
9031 // X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
9032 // X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
9033 // X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
9034 // X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
9035 // X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
9036 // X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
9037 // X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
9038 // X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
9039 // X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
9040 // X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
9041 // X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
9042 // X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
9043 // X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
9044 // X86_64-CLOUDABI:#define __VERSION__ "{{.*}}Clang{{.*}}
9045 // X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
9046 // X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
9047 // X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
9048 // X86_64-CLOUDABI:#define __WINT_MAX__ 2147483647
9049 // X86_64-CLOUDABI:#define __WINT_TYPE__ int
9050 // X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
9051 // X86_64-CLOUDABI:#define __amd64 1
9052 // X86_64-CLOUDABI:#define __amd64__ 1
9053 // X86_64-CLOUDABI:#define __clang__ 1
9054 // X86_64-CLOUDABI:#define __clang_major__ {{.*}}
9055 // X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
9056 // X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
9057 // X86_64-CLOUDABI:#define __clang_version__ {{.*}}
9058 // X86_64-CLOUDABI:#define __llvm__ 1
9059 // X86_64-CLOUDABI:#define __x86_64 1
9060 // X86_64-CLOUDABI:#define __x86_64__ 1
9061 //
9062 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-LINUX %s
9063 //
9064 // X86_64-LINUX:#define _LP64 1
9065 // X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
9066 // X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9067 // X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
9068 // X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
9069 // X86_64-LINUX:#define __CHAR_BIT__ 8
9070 // X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9071 // X86_64-LINUX:#define __DBL_DIG__ 15
9072 // X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
9073 // X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
9074 // X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
9075 // X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
9076 // X86_64-LINUX:#define __DBL_MANT_DIG__ 53
9077 // X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
9078 // X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
9079 // X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
9080 // X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
9081 // X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
9082 // X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
9083 // X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
9084 // X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9085 // X86_64-LINUX:#define __FLT_DIG__ 6
9086 // X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
9087 // X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
9088 // X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
9089 // X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
9090 // X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
9091 // X86_64-LINUX:#define __FLT_MANT_DIG__ 24
9092 // X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
9093 // X86_64-LINUX:#define __FLT_MAX_EXP__ 128
9094 // X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
9095 // X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
9096 // X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
9097 // X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
9098 // X86_64-LINUX:#define __FLT_RADIX__ 2
9099 // X86_64-LINUX:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9100 // X86_64-LINUX:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9101 // X86_64-LINUX:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9102 // X86_64-LINUX:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9103 // X86_64-LINUX:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9104 // X86_64-LINUX:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9105 // X86_64-LINUX:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9106 // X86_64-LINUX:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9107 // X86_64-LINUX:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9108 // X86_64-LINUX:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9109 // X86_64-LINUX:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
9110 // X86_64-LINUX:#define __INT16_C_SUFFIX__
9111 // X86_64-LINUX:#define __INT16_FMTd__ "hd"
9112 // X86_64-LINUX:#define __INT16_FMTi__ "hi"
9113 // X86_64-LINUX:#define __INT16_MAX__ 32767
9114 // X86_64-LINUX:#define __INT16_TYPE__ short
9115 // X86_64-LINUX:#define __INT32_C_SUFFIX__
9116 // X86_64-LINUX:#define __INT32_FMTd__ "d"
9117 // X86_64-LINUX:#define __INT32_FMTi__ "i"
9118 // X86_64-LINUX:#define __INT32_MAX__ 2147483647
9119 // X86_64-LINUX:#define __INT32_TYPE__ int
9120 // X86_64-LINUX:#define __INT64_C_SUFFIX__ L
9121 // X86_64-LINUX:#define __INT64_FMTd__ "ld"
9122 // X86_64-LINUX:#define __INT64_FMTi__ "li"
9123 // X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
9124 // X86_64-LINUX:#define __INT64_TYPE__ long int
9125 // X86_64-LINUX:#define __INT8_C_SUFFIX__
9126 // X86_64-LINUX:#define __INT8_FMTd__ "hhd"
9127 // X86_64-LINUX:#define __INT8_FMTi__ "hhi"
9128 // X86_64-LINUX:#define __INT8_MAX__ 127
9129 // X86_64-LINUX:#define __INT8_TYPE__ signed char
9130 // X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
9131 // X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
9132 // X86_64-LINUX:#define __INTMAX_FMTi__ "li"
9133 // X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
9134 // X86_64-LINUX:#define __INTMAX_TYPE__ long int
9135 // X86_64-LINUX:#define __INTMAX_WIDTH__ 64
9136 // X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
9137 // X86_64-LINUX:#define __INTPTR_FMTi__ "li"
9138 // X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
9139 // X86_64-LINUX:#define __INTPTR_TYPE__ long int
9140 // X86_64-LINUX:#define __INTPTR_WIDTH__ 64
9141 // X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
9142 // X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
9143 // X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
9144 // X86_64-LINUX:#define __INT_FAST16_TYPE__ short
9145 // X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
9146 // X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
9147 // X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
9148 // X86_64-LINUX:#define __INT_FAST32_TYPE__ int
9149 // X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
9150 // X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
9151 // X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
9152 // X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
9153 // X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
9154 // X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
9155 // X86_64-LINUX:#define __INT_FAST8_MAX__ 127
9156 // X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
9157 // X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
9158 // X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
9159 // X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
9160 // X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
9161 // X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
9162 // X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
9163 // X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
9164 // X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
9165 // X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
9166 // X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
9167 // X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
9168 // X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
9169 // X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
9170 // X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
9171 // X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
9172 // X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
9173 // X86_64-LINUX:#define __INT_MAX__ 2147483647
9174 // X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
9175 // X86_64-LINUX:#define __LDBL_DIG__ 18
9176 // X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
9177 // X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
9178 // X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
9179 // X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
9180 // X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
9181 // X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
9182 // X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
9183 // X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
9184 // X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
9185 // X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
9186 // X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
9187 // X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
9188 // X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
9189 // X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
9190 // X86_64-LINUX:#define __LP64__ 1
9191 // X86_64-LINUX:#define __MMX__ 1
9192 // X86_64-LINUX:#define __NO_MATH_INLINES 1
9193 // X86_64-LINUX:#define __POINTER_WIDTH__ 64
9194 // X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
9195 // X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
9196 // X86_64-LINUX:#define __REGISTER_PREFIX__
9197 // X86_64-LINUX:#define __SCHAR_MAX__ 127
9198 // X86_64-LINUX:#define __SHRT_MAX__ 32767
9199 // X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
9200 // X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
9201 // X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
9202 // X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
9203 // X86_64-LINUX:#define __SIZEOF_INT__ 4
9204 // X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
9205 // X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
9206 // X86_64-LINUX:#define __SIZEOF_LONG__ 8
9207 // X86_64-LINUX:#define __SIZEOF_POINTER__ 8
9208 // X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
9209 // X86_64-LINUX:#define __SIZEOF_SHORT__ 2
9210 // X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
9211 // X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
9212 // X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
9213 // X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
9214 // X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
9215 // X86_64-LINUX:#define __SIZE_WIDTH__ 64
9216 // X86_64-LINUX:#define __SSE2_MATH__ 1
9217 // X86_64-LINUX:#define __SSE2__ 1
9218 // X86_64-LINUX:#define __SSE_MATH__ 1
9219 // X86_64-LINUX:#define __SSE__ 1
9220 // X86_64-LINUX:#define __UINT16_C_SUFFIX__
9221 // X86_64-LINUX:#define __UINT16_MAX__ 65535
9222 // X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
9223 // X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
9224 // X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
9225 // X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
9226 // X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
9227 // X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
9228 // X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
9229 // X86_64-LINUX:#define __UINT8_C_SUFFIX__
9230 // X86_64-LINUX:#define __UINT8_MAX__ 255
9231 // X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
9232 // X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
9233 // X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
9234 // X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
9235 // X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
9236 // X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
9237 // X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
9238 // X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
9239 // X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
9240 // X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
9241 // X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
9242 // X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
9243 // X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
9244 // X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
9245 // X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
9246 // X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
9247 // X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
9248 // X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
9249 // X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
9250 // X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
9251 // X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
9252 // X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
9253 // X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
9254 // X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
9255 // X86_64-LINUX:#define __USER_LABEL_PREFIX__
9256 // X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
9257 // X86_64-LINUX:#define __WCHAR_TYPE__ int
9258 // X86_64-LINUX:#define __WCHAR_WIDTH__ 32
9259 // X86_64-LINUX:#define __WINT_TYPE__ unsigned int
9260 // X86_64-LINUX:#define __WINT_WIDTH__ 32
9261 // X86_64-LINUX:#define __amd64 1
9262 // X86_64-LINUX:#define __amd64__ 1
9263 // X86_64-LINUX:#define __x86_64 1
9264 // X86_64-LINUX:#define __x86_64__ 1
9265 //
9266 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-unknown-freebsd9.1 < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-FREEBSD %s
9267 //
9268 // X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
9269 // X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
9270 // X86_64-FREEBSD:#define __FreeBSD__ 9
9271 // X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
9272 // X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
9273 // X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
9274 //
9275 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-NETBSD %s
9276 //
9277 // X86_64-NETBSD:#define _LP64 1
9278 // X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
9279 // X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9280 // X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
9281 // X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
9282 // X86_64-NETBSD:#define __CHAR_BIT__ 8
9283 // X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9284 // X86_64-NETBSD:#define __DBL_DIG__ 15
9285 // X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
9286 // X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
9287 // X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
9288 // X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
9289 // X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
9290 // X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
9291 // X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
9292 // X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
9293 // X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
9294 // X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
9295 // X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
9296 // X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
9297 // X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9298 // X86_64-NETBSD:#define __FLT_DIG__ 6
9299 // X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
9300 // X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
9301 // X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
9302 // X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
9303 // X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
9304 // X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
9305 // X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
9306 // X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
9307 // X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
9308 // X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
9309 // X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
9310 // X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
9311 // X86_64-NETBSD:#define __FLT_RADIX__ 2
9312 // X86_64-NETBSD:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9313 // X86_64-NETBSD:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9314 // X86_64-NETBSD:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9315 // X86_64-NETBSD:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9316 // X86_64-NETBSD:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9317 // X86_64-NETBSD:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9318 // X86_64-NETBSD:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9319 // X86_64-NETBSD:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9320 // X86_64-NETBSD:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9321 // X86_64-NETBSD:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9322 // X86_64-NETBSD:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
9323 // X86_64-NETBSD:#define __INT16_C_SUFFIX__
9324 // X86_64-NETBSD:#define __INT16_FMTd__ "hd"
9325 // X86_64-NETBSD:#define __INT16_FMTi__ "hi"
9326 // X86_64-NETBSD:#define __INT16_MAX__ 32767
9327 // X86_64-NETBSD:#define __INT16_TYPE__ short
9328 // X86_64-NETBSD:#define __INT32_C_SUFFIX__
9329 // X86_64-NETBSD:#define __INT32_FMTd__ "d"
9330 // X86_64-NETBSD:#define __INT32_FMTi__ "i"
9331 // X86_64-NETBSD:#define __INT32_MAX__ 2147483647
9332 // X86_64-NETBSD:#define __INT32_TYPE__ int
9333 // X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
9334 // X86_64-NETBSD:#define __INT64_FMTd__ "ld"
9335 // X86_64-NETBSD:#define __INT64_FMTi__ "li"
9336 // X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
9337 // X86_64-NETBSD:#define __INT64_TYPE__ long int
9338 // X86_64-NETBSD:#define __INT8_C_SUFFIX__
9339 // X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
9340 // X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
9341 // X86_64-NETBSD:#define __INT8_MAX__ 127
9342 // X86_64-NETBSD:#define __INT8_TYPE__ signed char
9343 // X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
9344 // X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
9345 // X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
9346 // X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
9347 // X86_64-NETBSD:#define __INTMAX_TYPE__ long int
9348 // X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
9349 // X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
9350 // X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
9351 // X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
9352 // X86_64-NETBSD:#define __INTPTR_TYPE__ long int
9353 // X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
9354 // X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
9355 // X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
9356 // X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
9357 // X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
9358 // X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
9359 // X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
9360 // X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
9361 // X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
9362 // X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
9363 // X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
9364 // X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
9365 // X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
9366 // X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
9367 // X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
9368 // X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
9369 // X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
9370 // X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
9371 // X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
9372 // X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
9373 // X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
9374 // X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
9375 // X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
9376 // X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
9377 // X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
9378 // X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
9379 // X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
9380 // X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
9381 // X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
9382 // X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
9383 // X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
9384 // X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
9385 // X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
9386 // X86_64-NETBSD:#define __INT_MAX__ 2147483647
9387 // X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
9388 // X86_64-NETBSD:#define __LDBL_DIG__ 18
9389 // X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
9390 // X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
9391 // X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
9392 // X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
9393 // X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
9394 // X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
9395 // X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
9396 // X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
9397 // X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
9398 // X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
9399 // X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
9400 // X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
9401 // X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
9402 // X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
9403 // X86_64-NETBSD:#define __LP64__ 1
9404 // X86_64-NETBSD:#define __MMX__ 1
9405 // X86_64-NETBSD:#define __NO_MATH_INLINES 1
9406 // X86_64-NETBSD:#define __POINTER_WIDTH__ 64
9407 // X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
9408 // X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
9409 // X86_64-NETBSD:#define __REGISTER_PREFIX__
9410 // X86_64-NETBSD:#define __SCHAR_MAX__ 127
9411 // X86_64-NETBSD:#define __SHRT_MAX__ 32767
9412 // X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
9413 // X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
9414 // X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
9415 // X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
9416 // X86_64-NETBSD:#define __SIZEOF_INT__ 4
9417 // X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
9418 // X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
9419 // X86_64-NETBSD:#define __SIZEOF_LONG__ 8
9420 // X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
9421 // X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
9422 // X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
9423 // X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
9424 // X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
9425 // X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
9426 // X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
9427 // X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
9428 // X86_64-NETBSD:#define __SIZE_WIDTH__ 64
9429 // X86_64-NETBSD:#define __SSE2_MATH__ 1
9430 // X86_64-NETBSD:#define __SSE2__ 1
9431 // X86_64-NETBSD:#define __SSE_MATH__ 1
9432 // X86_64-NETBSD:#define __SSE__ 1
9433 // X86_64-NETBSD:#define __UINT16_C_SUFFIX__
9434 // X86_64-NETBSD:#define __UINT16_MAX__ 65535
9435 // X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
9436 // X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
9437 // X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
9438 // X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
9439 // X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
9440 // X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
9441 // X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
9442 // X86_64-NETBSD:#define __UINT8_C_SUFFIX__
9443 // X86_64-NETBSD:#define __UINT8_MAX__ 255
9444 // X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
9445 // X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
9446 // X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
9447 // X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
9448 // X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
9449 // X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
9450 // X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
9451 // X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
9452 // X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
9453 // X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
9454 // X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
9455 // X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
9456 // X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
9457 // X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
9458 // X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
9459 // X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
9460 // X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
9461 // X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
9462 // X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
9463 // X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
9464 // X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
9465 // X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
9466 // X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
9467 // X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
9468 // X86_64-NETBSD:#define __USER_LABEL_PREFIX__
9469 // X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
9470 // X86_64-NETBSD:#define __WCHAR_TYPE__ int
9471 // X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
9472 // X86_64-NETBSD:#define __WINT_TYPE__ int
9473 // X86_64-NETBSD:#define __WINT_WIDTH__ 32
9474 // X86_64-NETBSD:#define __amd64 1
9475 // X86_64-NETBSD:#define __amd64__ 1
9476 // X86_64-NETBSD:#define __x86_64 1
9477 // X86_64-NETBSD:#define __x86_64__ 1
9478 //
9479 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-scei-ps4 < /dev/null | FileCheck -match-full-lines -check-prefix PS4 %s
9480 //
9481 // PS4:#define _LP64 1
9482 // PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9483 // PS4:#define __CHAR16_TYPE__ unsigned short
9484 // PS4:#define __CHAR32_TYPE__ unsigned int
9485 // PS4:#define __CHAR_BIT__ 8
9486 // PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9487 // PS4:#define __DBL_DIG__ 15
9488 // PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
9489 // PS4:#define __DBL_HAS_DENORM__ 1
9490 // PS4:#define __DBL_HAS_INFINITY__ 1
9491 // PS4:#define __DBL_HAS_QUIET_NAN__ 1
9492 // PS4:#define __DBL_MANT_DIG__ 53
9493 // PS4:#define __DBL_MAX_10_EXP__ 308
9494 // PS4:#define __DBL_MAX_EXP__ 1024
9495 // PS4:#define __DBL_MAX__ 1.7976931348623157e+308
9496 // PS4:#define __DBL_MIN_10_EXP__ (-307)
9497 // PS4:#define __DBL_MIN_EXP__ (-1021)
9498 // PS4:#define __DBL_MIN__ 2.2250738585072014e-308
9499 // PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
9500 // PS4:#define __ELF__ 1
9501 // PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9502 // PS4:#define __FLT_DIG__ 6
9503 // PS4:#define __FLT_EPSILON__ 1.19209290e-7F
9504 // PS4:#define __FLT_EVAL_METHOD__ 0
9505 // PS4:#define __FLT_HAS_DENORM__ 1
9506 // PS4:#define __FLT_HAS_INFINITY__ 1
9507 // PS4:#define __FLT_HAS_QUIET_NAN__ 1
9508 // PS4:#define __FLT_MANT_DIG__ 24
9509 // PS4:#define __FLT_MAX_10_EXP__ 38
9510 // PS4:#define __FLT_MAX_EXP__ 128
9511 // PS4:#define __FLT_MAX__ 3.40282347e+38F
9512 // PS4:#define __FLT_MIN_10_EXP__ (-37)
9513 // PS4:#define __FLT_MIN_EXP__ (-125)
9514 // PS4:#define __FLT_MIN__ 1.17549435e-38F
9515 // PS4:#define __FLT_RADIX__ 2
9516 // PS4:#define __FreeBSD__ 9
9517 // PS4:#define __FreeBSD_cc_version 900001
9518 // PS4:#define __INT16_TYPE__ short
9519 // PS4:#define __INT32_TYPE__ int
9520 // PS4:#define __INT64_C_SUFFIX__ L
9521 // PS4:#define __INT64_TYPE__ long int
9522 // PS4:#define __INT8_TYPE__ signed char
9523 // PS4:#define __INTMAX_MAX__ 9223372036854775807L
9524 // PS4:#define __INTMAX_TYPE__ long int
9525 // PS4:#define __INTMAX_WIDTH__ 64
9526 // PS4:#define __INTPTR_TYPE__ long int
9527 // PS4:#define __INTPTR_WIDTH__ 64
9528 // PS4:#define __INT_MAX__ 2147483647
9529 // PS4:#define __KPRINTF_ATTRIBUTE__ 1
9530 // PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
9531 // PS4:#define __LDBL_DIG__ 18
9532 // PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
9533 // PS4:#define __LDBL_HAS_DENORM__ 1
9534 // PS4:#define __LDBL_HAS_INFINITY__ 1
9535 // PS4:#define __LDBL_HAS_QUIET_NAN__ 1
9536 // PS4:#define __LDBL_MANT_DIG__ 64
9537 // PS4:#define __LDBL_MAX_10_EXP__ 4932
9538 // PS4:#define __LDBL_MAX_EXP__ 16384
9539 // PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
9540 // PS4:#define __LDBL_MIN_10_EXP__ (-4931)
9541 // PS4:#define __LDBL_MIN_EXP__ (-16381)
9542 // PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
9543 // PS4:#define __LITTLE_ENDIAN__ 1
9544 // PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
9545 // PS4:#define __LONG_MAX__ 9223372036854775807L
9546 // PS4:#define __LP64__ 1
9547 // PS4:#define __MMX__ 1
9548 // PS4:#define __NO_MATH_INLINES 1
9549 // PS4:#define __ORBIS__ 1
9550 // PS4:#define __POINTER_WIDTH__ 64
9551 // PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
9552 // PS4:#define __PTRDIFF_TYPE__ long int
9553 // PS4:#define __PTRDIFF_WIDTH__ 64
9554 // PS4:#define __REGISTER_PREFIX__
9555 // PS4:#define __SCHAR_MAX__ 127
9556 // PS4:#define __SHRT_MAX__ 32767
9557 // PS4:#define __SIG_ATOMIC_MAX__ 2147483647
9558 // PS4:#define __SIG_ATOMIC_WIDTH__ 32
9559 // PS4:#define __SIZEOF_DOUBLE__ 8
9560 // PS4:#define __SIZEOF_FLOAT__ 4
9561 // PS4:#define __SIZEOF_INT__ 4
9562 // PS4:#define __SIZEOF_LONG_DOUBLE__ 16
9563 // PS4:#define __SIZEOF_LONG_LONG__ 8
9564 // PS4:#define __SIZEOF_LONG__ 8
9565 // PS4:#define __SIZEOF_POINTER__ 8
9566 // PS4:#define __SIZEOF_PTRDIFF_T__ 8
9567 // PS4:#define __SIZEOF_SHORT__ 2
9568 // PS4:#define __SIZEOF_SIZE_T__ 8
9569 // PS4:#define __SIZEOF_WCHAR_T__ 2
9570 // PS4:#define __SIZEOF_WINT_T__ 4
9571 // PS4:#define __SIZE_TYPE__ long unsigned int
9572 // PS4:#define __SIZE_WIDTH__ 64
9573 // PS4:#define __SSE2_MATH__ 1
9574 // PS4:#define __SSE2__ 1
9575 // PS4:#define __SSE_MATH__ 1
9576 // PS4:#define __SSE__ 1
9577 // PS4:#define __STDC_VERSION__ 199901L
9578 // PS4:#define __UINTMAX_TYPE__ long unsigned int
9579 // PS4:#define __USER_LABEL_PREFIX__
9580 // PS4:#define __WCHAR_MAX__ 65535
9581 // PS4:#define __WCHAR_TYPE__ unsigned short
9582 // PS4:#define __WCHAR_UNSIGNED__ 1
9583 // PS4:#define __WCHAR_WIDTH__ 16
9584 // PS4:#define __WINT_TYPE__ int
9585 // PS4:#define __WINT_WIDTH__ 32
9586 // PS4:#define __amd64 1
9587 // PS4:#define __amd64__ 1
9588 // PS4:#define __unix 1
9589 // PS4:#define __unix__ 1
9590 // PS4:#define __x86_64 1
9591 // PS4:#define __x86_64__ 1
9592 // PS4:#define unix 1
9593 //
9594 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-scei-ps4 < /dev/null | FileCheck -match-full-lines -check-prefix PS4-CXX %s
9595 // PS4-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 32UL
9596 //
9597 // RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
9598 // RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
9599 // X86-64-DECLSPEC: #define __declspec{{.*}}
9600 //
9601 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARCV9 %s
9602 // SPARCV9:#define __BIGGEST_ALIGNMENT__ 16
9603 // SPARCV9:#define __INT64_TYPE__ long int
9604 // SPARCV9:#define __INTMAX_C_SUFFIX__ L
9605 // SPARCV9:#define __INTMAX_TYPE__ long int
9606 // SPARCV9:#define __INTPTR_TYPE__ long int
9607 // SPARCV9:#define __LONG_MAX__ 9223372036854775807L
9608 // SPARCV9:#define __LP64__ 1
9609 // SPARCV9:#define __SIZEOF_LONG__ 8
9610 // SPARCV9:#define __SIZEOF_POINTER__ 8
9611 // SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
9612 //
9613 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC64-OBSD %s
9614 // SPARC64-OBSD:#define __INT64_TYPE__ long long int
9615 // SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
9616 // SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
9617 // SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
9618 // SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
9619 //
9620 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-kfreebsd-gnu < /dev/null | FileCheck -match-full-lines -check-prefix KFREEBSD-DEFINE %s
9621 // KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
9622 // KFREEBSD-DEFINE:#define __GLIBC__ 1
9623 //
9624 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i686-pc-kfreebsd-gnu < /dev/null | FileCheck -match-full-lines -check-prefix KFREEBSDI686-DEFINE %s
9625 // KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
9626 // KFREEBSDI686-DEFINE:#define __GLIBC__ 1
9627 //
9628 // 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
9629 // RUN: %clang_cc1 -x c++ -triple sparc-rtems-elf -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSOURCE %s
9630 // GNUSOURCE:#define _GNU_SOURCE 1
9631 //
9632 // Check that the GNUstep Objective-C ABI defines exist and are clamped at the
9633 // highest supported version.
9634 // 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
9635 // GNUSTEP1:#define __OBJC_GNUSTEP_RUNTIME_ABI__ 18
9636 // 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
9637 // GNUSTEP2:#define __OBJC_GNUSTEP_RUNTIME_ABI__ 20
9638 //
9639 // RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
9640 // NORTTI: #define __GXX_ABI_VERSION {{.*}}
9641 // NORTTI-NOT:#define __GXX_RTTI
9642 // NORTTI:#define __STDC__ 1
9643 //
9644 // RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID %s
9645 // ANDROID-NOT:#define __ANDROID_API__
9646 // ANDROID:#define __ANDROID__ 1
9647 // ANDROID-NOT:#define __gnu_linux__
9648 //
9649 // RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
9650 // I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
9651 //
9652 // 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
9653 // X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
9654 //
9655 // RUN: %clang_cc1 -triple arm-linux-androideabi20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID20 %s
9656 // ANDROID20:#define __ANDROID_API__ 20
9657 // ANDROID20:#define __ANDROID__ 1
9658 // ANDROID-NOT:#define __gnu_linux__
9659 //
9660 // RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
9661 // LANAI: #define __lanai__ 1
9662 //
9663 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=amd64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9664 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9665 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9666 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9667 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9668 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9669 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9670 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9671 // OPENBSD:#define __ELF__ 1
9672 // OPENBSD:#define __INT16_TYPE__ short
9673 // OPENBSD:#define __INT32_TYPE__ int
9674 // OPENBSD:#define __INT64_TYPE__ long long int
9675 // OPENBSD:#define __INT8_TYPE__ signed char
9676 // OPENBSD:#define __INTMAX_TYPE__ long long int
9677 // OPENBSD:#define __INTPTR_TYPE__ long int
9678 // OPENBSD:#define __OpenBSD__ 1
9679 // OPENBSD:#define __PTRDIFF_TYPE__ long int
9680 // OPENBSD:#define __SIZE_TYPE__ long unsigned int
9681 // OPENBSD:#define __UINT16_TYPE__ unsigned short
9682 // OPENBSD:#define __UINT32_TYPE__ unsigned int
9683 // OPENBSD:#define __UINT64_TYPE__ long long unsigned int
9684 // OPENBSD:#define __UINT8_TYPE__ unsigned char
9685 // OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
9686 // OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
9687 // OPENBSD:#define __WCHAR_TYPE__ int
9688 // OPENBSD:#define __WINT_TYPE__ int
9689 //
9690 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-freebsd < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-FREEBSD %s
9691 // PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
9692 //
9693 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=xcore-none-none < /dev/null | FileCheck -match-full-lines -check-prefix XCORE %s
9694 // XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9695 // XCORE:#define __LITTLE_ENDIAN__ 1
9696 // XCORE:#define __XS1B__ 1
9697 //
9698 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
9699 // RUN:   < /dev/null \
9700 // RUN:   | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY32 %s
9701 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
9702 // RUN:   < /dev/null \
9703 // RUN:   | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY64 %s
9704 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-wasi \
9705 // RUN:   < /dev/null \
9706 // RUN:   | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY32,WEBASSEMBLY-WASI %s
9707 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-wasi \
9708 // RUN:   < /dev/null \
9709 // RUN:   | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY64,WEBASSEMBLY-WASI %s
9710 //
9711 // WEBASSEMBLY32:#define _ILP32 1
9712 // WEBASSEMBLY32-NOT:#define _LP64
9713 // WEBASSEMBLY64-NOT:#define _ILP32
9714 // WEBASSEMBLY64:#define _LP64 1
9715 // WEBASSEMBLY-NEXT:#define __ATOMIC_ACQUIRE 2
9716 // WEBASSEMBLY-NEXT:#define __ATOMIC_ACQ_REL 4
9717 // WEBASSEMBLY-NEXT:#define __ATOMIC_CONSUME 1
9718 // WEBASSEMBLY-NEXT:#define __ATOMIC_RELAXED 0
9719 // WEBASSEMBLY-NEXT:#define __ATOMIC_RELEASE 3
9720 // WEBASSEMBLY-NEXT:#define __ATOMIC_SEQ_CST 5
9721 // WEBASSEMBLY-NEXT:#define __BIGGEST_ALIGNMENT__ 16
9722 // WEBASSEMBLY-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9723 // WEBASSEMBLY-NEXT:#define __CHAR16_TYPE__ unsigned short
9724 // WEBASSEMBLY-NEXT:#define __CHAR32_TYPE__ unsigned int
9725 // WEBASSEMBLY-NEXT:#define __CHAR_BIT__ 8
9726 // WEBASSEMBLY-NOT:#define __CHAR_UNSIGNED__
9727 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9728 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9729 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9730 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9731 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9732 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9733 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9734 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9735 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9736 // WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
9737 // WEBASSEMBLY-NEXT:#define __CONSTANT_CFSTRINGS__ 1
9738 // WEBASSEMBLY-NEXT:#define __DBL_DECIMAL_DIG__ 17
9739 // WEBASSEMBLY-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9740 // WEBASSEMBLY-NEXT:#define __DBL_DIG__ 15
9741 // WEBASSEMBLY-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
9742 // WEBASSEMBLY-NEXT:#define __DBL_HAS_DENORM__ 1
9743 // WEBASSEMBLY-NEXT:#define __DBL_HAS_INFINITY__ 1
9744 // WEBASSEMBLY-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
9745 // WEBASSEMBLY-NEXT:#define __DBL_MANT_DIG__ 53
9746 // WEBASSEMBLY-NEXT:#define __DBL_MAX_10_EXP__ 308
9747 // WEBASSEMBLY-NEXT:#define __DBL_MAX_EXP__ 1024
9748 // WEBASSEMBLY-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
9749 // WEBASSEMBLY-NEXT:#define __DBL_MIN_10_EXP__ (-307)
9750 // WEBASSEMBLY-NEXT:#define __DBL_MIN_EXP__ (-1021)
9751 // WEBASSEMBLY-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
9752 // WEBASSEMBLY-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
9753 // WEBASSEMBLY-NOT:#define __ELF__
9754 // WEBASSEMBLY-NEXT:#define __FINITE_MATH_ONLY__ 0
9755 // WEBASSEMBLY-NEXT:#define __FLOAT128__ 1
9756 // WEBASSEMBLY-NOT:#define __FLT16_DECIMAL_DIG__
9757 // WEBASSEMBLY-NOT:#define __FLT16_DENORM_MIN__
9758 // WEBASSEMBLY-NOT:#define __FLT16_DIG__
9759 // WEBASSEMBLY-NOT:#define __FLT16_EPSILON__
9760 // WEBASSEMBLY-NOT:#define __FLT16_HAS_DENORM__
9761 // WEBASSEMBLY-NOT:#define __FLT16_HAS_INFINITY__
9762 // WEBASSEMBLY-NOT:#define __FLT16_HAS_QUIET_NAN__
9763 // WEBASSEMBLY-NOT:#define __FLT16_MANT_DIG__
9764 // WEBASSEMBLY-NOT:#define __FLT16_MAX_10_EXP__
9765 // WEBASSEMBLY-NOT:#define __FLT16_MAX_EXP__
9766 // WEBASSEMBLY-NOT:#define __FLT16_MAX__
9767 // WEBASSEMBLY-NOT:#define __FLT16_MIN_10_EXP__
9768 // WEBASSEMBLY-NOT:#define __FLT16_MIN_EXP__
9769 // WEBASSEMBLY-NOT:#define __FLT16_MIN__
9770 // WEBASSEMBLY-NEXT:#define __FLT_DECIMAL_DIG__ 9
9771 // WEBASSEMBLY-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9772 // WEBASSEMBLY-NEXT:#define __FLT_DIG__ 6
9773 // WEBASSEMBLY-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
9774 // WEBASSEMBLY-NEXT:#define __FLT_EVAL_METHOD__ 0
9775 // WEBASSEMBLY-NEXT:#define __FLT_HAS_DENORM__ 1
9776 // WEBASSEMBLY-NEXT:#define __FLT_HAS_INFINITY__ 1
9777 // WEBASSEMBLY-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
9778 // WEBASSEMBLY-NEXT:#define __FLT_MANT_DIG__ 24
9779 // WEBASSEMBLY-NEXT:#define __FLT_MAX_10_EXP__ 38
9780 // WEBASSEMBLY-NEXT:#define __FLT_MAX_EXP__ 128
9781 // WEBASSEMBLY-NEXT:#define __FLT_MAX__ 3.40282347e+38F
9782 // WEBASSEMBLY-NEXT:#define __FLT_MIN_10_EXP__ (-37)
9783 // WEBASSEMBLY-NEXT:#define __FLT_MIN_EXP__ (-125)
9784 // WEBASSEMBLY-NEXT:#define __FLT_MIN__ 1.17549435e-38F
9785 // WEBASSEMBLY-NEXT:#define __FLT_RADIX__ 2
9786 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9787 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9788 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9789 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9790 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9791 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9792 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9793 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9794 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9795 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9796 // WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
9797 // WEBASSEMBLY-NEXT:#define __GNUC_MINOR__ {{.*}}
9798 // WEBASSEMBLY-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
9799 // WEBASSEMBLY-NEXT:#define __GNUC_STDC_INLINE__ 1
9800 // WEBASSEMBLY-NEXT:#define __GNUC__ {{.*}}
9801 // WEBASSEMBLY-NEXT:#define __GXX_ABI_VERSION 1002
9802 // WEBASSEMBLY32-NEXT:#define __ILP32__ 1
9803 // WEBASSEMBLY64-NOT:#define __ILP32__
9804 // WEBASSEMBLY-NEXT:#define __INT16_C_SUFFIX__
9805 // WEBASSEMBLY-NEXT:#define __INT16_FMTd__ "hd"
9806 // WEBASSEMBLY-NEXT:#define __INT16_FMTi__ "hi"
9807 // WEBASSEMBLY-NEXT:#define __INT16_MAX__ 32767
9808 // WEBASSEMBLY-NEXT:#define __INT16_TYPE__ short
9809 // WEBASSEMBLY-NEXT:#define __INT32_C_SUFFIX__
9810 // WEBASSEMBLY-NEXT:#define __INT32_FMTd__ "d"
9811 // WEBASSEMBLY-NEXT:#define __INT32_FMTi__ "i"
9812 // WEBASSEMBLY-NEXT:#define __INT32_MAX__ 2147483647
9813 // WEBASSEMBLY-NEXT:#define __INT32_TYPE__ int
9814 // WEBASSEMBLY-NEXT:#define __INT64_C_SUFFIX__ LL
9815 // WEBASSEMBLY-NEXT:#define __INT64_FMTd__ "lld"
9816 // WEBASSEMBLY-NEXT:#define __INT64_FMTi__ "lli"
9817 // WEBASSEMBLY-NEXT:#define __INT64_MAX__ 9223372036854775807LL
9818 // WEBASSEMBLY-NEXT:#define __INT64_TYPE__ long long int
9819 // WEBASSEMBLY-NEXT:#define __INT8_C_SUFFIX__
9820 // WEBASSEMBLY-NEXT:#define __INT8_FMTd__ "hhd"
9821 // WEBASSEMBLY-NEXT:#define __INT8_FMTi__ "hhi"
9822 // WEBASSEMBLY-NEXT:#define __INT8_MAX__ 127
9823 // WEBASSEMBLY-NEXT:#define __INT8_TYPE__ signed char
9824 // WEBASSEMBLY-NEXT:#define __INTMAX_C_SUFFIX__ LL
9825 // WEBASSEMBLY-NEXT:#define __INTMAX_FMTd__ "lld"
9826 // WEBASSEMBLY-NEXT:#define __INTMAX_FMTi__ "lli"
9827 // WEBASSEMBLY-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
9828 // WEBASSEMBLY-NEXT:#define __INTMAX_TYPE__ long long int
9829 // WEBASSEMBLY-NEXT:#define __INTMAX_WIDTH__ 64
9830 // WEBASSEMBLY-NEXT:#define __INTPTR_FMTd__ "ld"
9831 // WEBASSEMBLY-NEXT:#define __INTPTR_FMTi__ "li"
9832 // WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647L
9833 // WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
9834 // WEBASSEMBLY-NEXT:#define __INTPTR_TYPE__ long int
9835 // WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
9836 // WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
9837 // WEBASSEMBLY-NEXT:#define __INT_FAST16_FMTd__ "hd"
9838 // WEBASSEMBLY-NEXT:#define __INT_FAST16_FMTi__ "hi"
9839 // WEBASSEMBLY-NEXT:#define __INT_FAST16_MAX__ 32767
9840 // WEBASSEMBLY-NEXT:#define __INT_FAST16_TYPE__ short
9841 // WEBASSEMBLY-NEXT:#define __INT_FAST32_FMTd__ "d"
9842 // WEBASSEMBLY-NEXT:#define __INT_FAST32_FMTi__ "i"
9843 // WEBASSEMBLY-NEXT:#define __INT_FAST32_MAX__ 2147483647
9844 // WEBASSEMBLY-NEXT:#define __INT_FAST32_TYPE__ int
9845 // WEBASSEMBLY-NEXT:#define __INT_FAST64_FMTd__ "lld"
9846 // WEBASSEMBLY-NEXT:#define __INT_FAST64_FMTi__ "lli"
9847 // WEBASSEMBLY-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
9848 // WEBASSEMBLY-NEXT:#define __INT_FAST64_TYPE__ long long int
9849 // WEBASSEMBLY-NEXT:#define __INT_FAST8_FMTd__ "hhd"
9850 // WEBASSEMBLY-NEXT:#define __INT_FAST8_FMTi__ "hhi"
9851 // WEBASSEMBLY-NEXT:#define __INT_FAST8_MAX__ 127
9852 // WEBASSEMBLY-NEXT:#define __INT_FAST8_TYPE__ signed char
9853 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_FMTd__ "hd"
9854 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_FMTi__ "hi"
9855 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_MAX__ 32767
9856 // WEBASSEMBLY-NEXT:#define __INT_LEAST16_TYPE__ short
9857 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_FMTd__ "d"
9858 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_FMTi__ "i"
9859 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_MAX__ 2147483647
9860 // WEBASSEMBLY-NEXT:#define __INT_LEAST32_TYPE__ int
9861 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_FMTd__ "lld"
9862 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_FMTi__ "lli"
9863 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9864 // WEBASSEMBLY-NEXT:#define __INT_LEAST64_TYPE__ long long int
9865 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9866 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9867 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_MAX__ 127
9868 // WEBASSEMBLY-NEXT:#define __INT_LEAST8_TYPE__ signed char
9869 // WEBASSEMBLY-NEXT:#define __INT_MAX__ 2147483647
9870 // WEBASSEMBLY-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9871 // WEBASSEMBLY-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9872 // WEBASSEMBLY-NEXT:#define __LDBL_DIG__ 33
9873 // WEBASSEMBLY-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9874 // WEBASSEMBLY-NEXT:#define __LDBL_HAS_DENORM__ 1
9875 // WEBASSEMBLY-NEXT:#define __LDBL_HAS_INFINITY__ 1
9876 // WEBASSEMBLY-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9877 // WEBASSEMBLY-NEXT:#define __LDBL_MANT_DIG__ 113
9878 // WEBASSEMBLY-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9879 // WEBASSEMBLY-NEXT:#define __LDBL_MAX_EXP__ 16384
9880 // WEBASSEMBLY-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9881 // WEBASSEMBLY-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9882 // WEBASSEMBLY-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9883 // WEBASSEMBLY-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9884 // WEBASSEMBLY-NEXT:#define __LITTLE_ENDIAN__ 1
9885 // WEBASSEMBLY-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9886 // WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
9887 // WEBASSEMBLY32-NOT:#define __LP64__
9888 // WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
9889 // WEBASSEMBLY64-NEXT:#define __LP64__ 1
9890 // WEBASSEMBLY-NEXT:#define __NO_INLINE__ 1
9891 // WEBASSEMBLY-NEXT:#define __OBJC_BOOL_IS_BOOL 0
9892 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES 3
9893 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_DEVICE 2
9894 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_SUB_GROUP 4
9895 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_GROUP 1
9896 // WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_ITEM 0
9897 // WEBASSEMBLY-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9898 // WEBASSEMBLY-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9899 // WEBASSEMBLY-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9900 // WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
9901 // WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
9902 // WEBASSEMBLY-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
9903 // WEBASSEMBLY-NEXT:#define __PTRDIFF_FMTd__ "ld"
9904 // WEBASSEMBLY-NEXT:#define __PTRDIFF_FMTi__ "li"
9905 // WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647L
9906 // WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
9907 // WEBASSEMBLY-NEXT:#define __PTRDIFF_TYPE__ long int
9908 // WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
9909 // WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
9910 // WEBASSEMBLY-NOT:#define __REGISTER_PREFIX__
9911 // WEBASSEMBLY-NEXT:#define __SCHAR_MAX__ 127
9912 // WEBASSEMBLY-NEXT:#define __SHRT_MAX__ 32767
9913 // WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
9914 // WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
9915 // WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
9916 // WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
9917 // WEBASSEMBLY-NEXT:#define __SIZEOF_DOUBLE__ 8
9918 // WEBASSEMBLY-NEXT:#define __SIZEOF_FLOAT__ 4
9919 // WEBASSEMBLY-NEXT:#define __SIZEOF_INT128__ 16
9920 // WEBASSEMBLY-NEXT:#define __SIZEOF_INT__ 4
9921 // WEBASSEMBLY-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9922 // WEBASSEMBLY-NEXT:#define __SIZEOF_LONG_LONG__ 8
9923 // WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
9924 // WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
9925 // WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
9926 // WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
9927 // WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
9928 // WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
9929 // WEBASSEMBLY-NEXT:#define __SIZEOF_SHORT__ 2
9930 // WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
9931 // WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
9932 // WEBASSEMBLY-NEXT:#define __SIZEOF_WCHAR_T__ 4
9933 // WEBASSEMBLY-NEXT:#define __SIZEOF_WINT_T__ 4
9934 // WEBASSEMBLY-NEXT:#define __SIZE_FMTX__ "lX"
9935 // WEBASSEMBLY-NEXT:#define __SIZE_FMTo__ "lo"
9936 // WEBASSEMBLY-NEXT:#define __SIZE_FMTu__ "lu"
9937 // WEBASSEMBLY-NEXT:#define __SIZE_FMTx__ "lx"
9938 // WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295UL
9939 // WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
9940 // WEBASSEMBLY-NEXT:#define __SIZE_TYPE__ long unsigned int
9941 // WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
9942 // WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
9943 // WEBASSEMBLY-NEXT:#define __STDC_HOSTED__ 0
9944 // WEBASSEMBLY-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9945 // WEBASSEMBLY-NOT:#define __STDC_NO_ATOMICS__
9946 // WEBASSEMBLY-NOT:#define __STDC_NO_COMPLEX__
9947 // WEBASSEMBLY-NOT:#define __STDC_NO_VLA__
9948 // WEBASSEMBLY-NOT:#define __STDC_NO_THREADS__
9949 // WEBASSEMBLY-NEXT:#define __STDC_UTF_16__ 1
9950 // WEBASSEMBLY-NEXT:#define __STDC_UTF_32__ 1
9951 // WEBASSEMBLY-NEXT:#define __STDC_VERSION__ 201112L
9952 // WEBASSEMBLY-NEXT:#define __STDC__ 1
9953 // WEBASSEMBLY-NEXT:#define __UINT16_C_SUFFIX__
9954 // WEBASSEMBLY-NEXT:#define __UINT16_FMTX__ "hX"
9955 // WEBASSEMBLY-NEXT:#define __UINT16_FMTo__ "ho"
9956 // WEBASSEMBLY-NEXT:#define __UINT16_FMTu__ "hu"
9957 // WEBASSEMBLY-NEXT:#define __UINT16_FMTx__ "hx"
9958 // WEBASSEMBLY-NEXT:#define __UINT16_MAX__ 65535
9959 // WEBASSEMBLY-NEXT:#define __UINT16_TYPE__ unsigned short
9960 // WEBASSEMBLY-NEXT:#define __UINT32_C_SUFFIX__ U
9961 // WEBASSEMBLY-NEXT:#define __UINT32_FMTX__ "X"
9962 // WEBASSEMBLY-NEXT:#define __UINT32_FMTo__ "o"
9963 // WEBASSEMBLY-NEXT:#define __UINT32_FMTu__ "u"
9964 // WEBASSEMBLY-NEXT:#define __UINT32_FMTx__ "x"
9965 // WEBASSEMBLY-NEXT:#define __UINT32_MAX__ 4294967295U
9966 // WEBASSEMBLY-NEXT:#define __UINT32_TYPE__ unsigned int
9967 // WEBASSEMBLY-NEXT:#define __UINT64_C_SUFFIX__ ULL
9968 // WEBASSEMBLY-NEXT:#define __UINT64_FMTX__ "llX"
9969 // WEBASSEMBLY-NEXT:#define __UINT64_FMTo__ "llo"
9970 // WEBASSEMBLY-NEXT:#define __UINT64_FMTu__ "llu"
9971 // WEBASSEMBLY-NEXT:#define __UINT64_FMTx__ "llx"
9972 // WEBASSEMBLY-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9973 // WEBASSEMBLY-NEXT:#define __UINT64_TYPE__ long long unsigned int
9974 // WEBASSEMBLY-NEXT:#define __UINT8_C_SUFFIX__
9975 // WEBASSEMBLY-NEXT:#define __UINT8_FMTX__ "hhX"
9976 // WEBASSEMBLY-NEXT:#define __UINT8_FMTo__ "hho"
9977 // WEBASSEMBLY-NEXT:#define __UINT8_FMTu__ "hhu"
9978 // WEBASSEMBLY-NEXT:#define __UINT8_FMTx__ "hhx"
9979 // WEBASSEMBLY-NEXT:#define __UINT8_MAX__ 255
9980 // WEBASSEMBLY-NEXT:#define __UINT8_TYPE__ unsigned char
9981 // WEBASSEMBLY-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9982 // WEBASSEMBLY-NEXT:#define __UINTMAX_FMTX__ "llX"
9983 // WEBASSEMBLY-NEXT:#define __UINTMAX_FMTo__ "llo"
9984 // WEBASSEMBLY-NEXT:#define __UINTMAX_FMTu__ "llu"
9985 // WEBASSEMBLY-NEXT:#define __UINTMAX_FMTx__ "llx"
9986 // WEBASSEMBLY-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9987 // WEBASSEMBLY-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9988 // WEBASSEMBLY-NEXT:#define __UINTMAX_WIDTH__ 64
9989 // WEBASSEMBLY-NEXT:#define __UINTPTR_FMTX__ "lX"
9990 // WEBASSEMBLY-NEXT:#define __UINTPTR_FMTo__ "lo"
9991 // WEBASSEMBLY-NEXT:#define __UINTPTR_FMTu__ "lu"
9992 // WEBASSEMBLY-NEXT:#define __UINTPTR_FMTx__ "lx"
9993 // WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295UL
9994 // WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
9995 // WEBASSEMBLY-NEXT:#define __UINTPTR_TYPE__ long unsigned int
9996 // WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
9997 // WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
9998 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9999 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTo__ "ho"
10000 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTu__ "hu"
10001 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTx__ "hx"
10002 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_MAX__ 65535
10003 // WEBASSEMBLY-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
10004 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTX__ "X"
10005 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTo__ "o"
10006 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTu__ "u"
10007 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTx__ "x"
10008 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
10009 // WEBASSEMBLY-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
10010 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTX__ "llX"
10011 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTo__ "llo"
10012 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTu__ "llu"
10013 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTx__ "llx"
10014 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
10015 // WEBASSEMBLY-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
10016 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
10017 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTo__ "hho"
10018 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
10019 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
10020 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_MAX__ 255
10021 // WEBASSEMBLY-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
10022 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
10023 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
10024 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
10025 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
10026 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_MAX__ 65535
10027 // WEBASSEMBLY-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
10028 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTX__ "X"
10029 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTo__ "o"
10030 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTu__ "u"
10031 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTx__ "x"
10032 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
10033 // WEBASSEMBLY-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
10034 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
10035 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
10036 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
10037 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
10038 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
10039 // WEBASSEMBLY-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
10040 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
10041 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
10042 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
10043 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
10044 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_MAX__ 255
10045 // WEBASSEMBLY-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
10046 // WEBASSEMBLY-NEXT:#define __USER_LABEL_PREFIX__
10047 // WEBASSEMBLY-NEXT:#define __VERSION__ "{{.*}}"
10048 // WEBASSEMBLY-NEXT:#define __WCHAR_MAX__ 2147483647
10049 // WEBASSEMBLY-NEXT:#define __WCHAR_TYPE__ int
10050 // WEBASSEMBLY-NOT:#define __WCHAR_UNSIGNED__
10051 // WEBASSEMBLY-NEXT:#define __WCHAR_WIDTH__ 32
10052 // WEBASSEMBLY-NEXT:#define __WINT_MAX__ 2147483647
10053 // WEBASSEMBLY-NEXT:#define __WINT_TYPE__ int
10054 // WEBASSEMBLY-NOT:#define __WINT_UNSIGNED__
10055 // WEBASSEMBLY-NEXT:#define __WINT_WIDTH__ 32
10056 // WEBASSEMBLY-NEXT:#define __clang__ 1
10057 // WEBASSEMBLY-NEXT:#define __clang_major__ {{.*}}
10058 // WEBASSEMBLY-NEXT:#define __clang_minor__ {{.*}}
10059 // WEBASSEMBLY-NEXT:#define __clang_patchlevel__ {{.*}}
10060 // WEBASSEMBLY-NEXT:#define __clang_version__ "{{.*}}"
10061 // WEBASSEMBLY-NEXT:#define __llvm__ 1
10062 // WEBASSEMBLY-NOT:#define __unix
10063 // WEBASSEMBLY-NOT:#define __unix__
10064 // WEBASSEMBLY-WASI-NEXT:#define __wasi__ 1
10065 // WEBASSEMBLY-NOT:#define __wasm_simd128__
10066 // WEBASSEMBLY-NOT:#define __wasm_simd256__
10067 // WEBASSEMBLY-NOT:#define __wasm_simd512__
10068 // WEBASSEMBLY-NEXT:#define __wasm 1
10069 // WEBASSEMBLY32-NEXT:#define __wasm32 1
10070 // WEBASSEMBLY64-NOT:#define __wasm32
10071 // WEBASSEMBLY32-NEXT:#define __wasm32__ 1
10072 // WEBASSEMBLY64-NOT:#define __wasm32__
10073 // WEBASSEMBLY32-NOT:#define __wasm64__
10074 // WEBASSEMBLY32-NOT:#define __wasm64
10075 // WEBASSEMBLY64-NEXT:#define __wasm64 1
10076 // WEBASSEMBLY64-NEXT:#define __wasm64__ 1
10077 // WEBASSEMBLY-NEXT:#define __wasm__ 1
10078 
10079 // RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
10080 // CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
10081 
10082 // RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
10083 // CYGWIN-X64: #define __USER_LABEL_PREFIX__
10084 
10085 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=avr \
10086 // RUN:   < /dev/null \
10087 // RUN:   | FileCheck -match-full-lines -check-prefix=AVR %s
10088 //
10089 // AVR:#define __ATOMIC_ACQUIRE 2
10090 // AVR:#define __ATOMIC_ACQ_REL 4
10091 // AVR:#define __ATOMIC_CONSUME 1
10092 // AVR:#define __ATOMIC_RELAXED 0
10093 // AVR:#define __ATOMIC_RELEASE 3
10094 // AVR:#define __ATOMIC_SEQ_CST 5
10095 // AVR:#define __AVR__ 1
10096 // AVR:#define __BIGGEST_ALIGNMENT__ 1
10097 // AVR:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
10098 // AVR:#define __CHAR16_TYPE__ unsigned int
10099 // AVR:#define __CHAR32_TYPE__ long unsigned int
10100 // AVR:#define __CHAR_BIT__ 8
10101 // AVR:#define __DBL_DECIMAL_DIG__ 9
10102 // AVR:#define __DBL_DENORM_MIN__ 1.40129846e-45
10103 // AVR:#define __DBL_DIG__ 6
10104 // AVR:#define __DBL_EPSILON__ 1.19209290e-7
10105 // AVR:#define __DBL_HAS_DENORM__ 1
10106 // AVR:#define __DBL_HAS_INFINITY__ 1
10107 // AVR:#define __DBL_HAS_QUIET_NAN__ 1
10108 // AVR:#define __DBL_MANT_DIG__ 24
10109 // AVR:#define __DBL_MAX_10_EXP__ 38
10110 // AVR:#define __DBL_MAX_EXP__ 128
10111 // AVR:#define __DBL_MAX__ 3.40282347e+38
10112 // AVR:#define __DBL_MIN_10_EXP__ (-37)
10113 // AVR:#define __DBL_MIN_EXP__ (-125)
10114 // AVR:#define __DBL_MIN__ 1.17549435e-38
10115 // AVR:#define __FINITE_MATH_ONLY__ 0
10116 // AVR:#define __FLT_DECIMAL_DIG__ 9
10117 // AVR:#define __FLT_DENORM_MIN__ 1.40129846e-45F
10118 // AVR:#define __FLT_DIG__ 6
10119 // AVR:#define __FLT_EPSILON__ 1.19209290e-7F
10120 // AVR:#define __FLT_EVAL_METHOD__ 0
10121 // AVR:#define __FLT_HAS_DENORM__ 1
10122 // AVR:#define __FLT_HAS_INFINITY__ 1
10123 // AVR:#define __FLT_HAS_QUIET_NAN__ 1
10124 // AVR:#define __FLT_MANT_DIG__ 24
10125 // AVR:#define __FLT_MAX_10_EXP__ 38
10126 // AVR:#define __FLT_MAX_EXP__ 128
10127 // AVR:#define __FLT_MAX__ 3.40282347e+38F
10128 // AVR:#define __FLT_MIN_10_EXP__ (-37)
10129 // AVR:#define __FLT_MIN_EXP__ (-125)
10130 // AVR:#define __FLT_MIN__ 1.17549435e-38F
10131 // AVR:#define __FLT_RADIX__ 2
10132 // AVR:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1
10133 // AVR:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
10134 // AVR:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
10135 // AVR:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1
10136 // AVR:#define __GCC_ATOMIC_INT_LOCK_FREE 1
10137 // AVR:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
10138 // AVR:#define __GCC_ATOMIC_LONG_LOCK_FREE 1
10139 // AVR:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1
10140 // AVR:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1
10141 // AVR:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
10142 // AVR:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
10143 // AVR:#define __GXX_ABI_VERSION 1002
10144 // AVR:#define __INT16_C_SUFFIX__
10145 // AVR:#define __INT16_MAX__ 32767
10146 // AVR:#define __INT16_TYPE__ short
10147 // AVR:#define __INT32_C_SUFFIX__ L
10148 // AVR:#define __INT32_MAX__ 2147483647L
10149 // AVR:#define __INT32_TYPE__ long int
10150 // AVR:#define __INT64_C_SUFFIX__ LL
10151 // AVR:#define __INT64_MAX__ 9223372036854775807LL
10152 // AVR:#define __INT64_TYPE__ long long int
10153 // AVR:#define __INT8_C_SUFFIX__
10154 // AVR:#define __INT8_MAX__ 127
10155 // AVR:#define __INT8_TYPE__ signed char
10156 // AVR:#define __INTMAX_C_SUFFIX__ LL
10157 // AVR:#define __INTMAX_MAX__ 9223372036854775807LL
10158 // AVR:#define __INTMAX_TYPE__ long long int
10159 // AVR:#define __INTPTR_MAX__ 32767
10160 // AVR:#define __INTPTR_TYPE__ int
10161 // AVR:#define __INT_FAST16_MAX__ 32767
10162 // AVR:#define __INT_FAST16_TYPE__ int
10163 // AVR:#define __INT_FAST32_MAX__ 2147483647L
10164 // AVR:#define __INT_FAST32_TYPE__ long int
10165 // AVR:#define __INT_FAST64_MAX__ 9223372036854775807LL
10166 // AVR:#define __INT_FAST64_TYPE__ long long int
10167 // AVR:#define __INT_FAST8_MAX__ 127
10168 // AVR:#define __INT_FAST8_TYPE__ signed char
10169 // AVR:#define __INT_LEAST16_MAX__ 32767
10170 // AVR:#define __INT_LEAST16_TYPE__ int
10171 // AVR:#define __INT_LEAST32_MAX__ 2147483647L
10172 // AVR:#define __INT_LEAST32_TYPE__ long int
10173 // AVR:#define __INT_LEAST64_MAX__ 9223372036854775807LL
10174 // AVR:#define __INT_LEAST64_TYPE__ long long int
10175 // AVR:#define __INT_LEAST8_MAX__ 127
10176 // AVR:#define __INT_LEAST8_TYPE__ signed char
10177 // AVR:#define __INT_MAX__ 32767
10178 // AVR:#define __LDBL_DECIMAL_DIG__ 9
10179 // AVR:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
10180 // AVR:#define __LDBL_DIG__ 6
10181 // AVR:#define __LDBL_EPSILON__ 1.19209290e-7L
10182 // AVR:#define __LDBL_HAS_DENORM__ 1
10183 // AVR:#define __LDBL_HAS_INFINITY__ 1
10184 // AVR:#define __LDBL_HAS_QUIET_NAN__ 1
10185 // AVR:#define __LDBL_MANT_DIG__ 24
10186 // AVR:#define __LDBL_MAX_10_EXP__ 38
10187 // AVR:#define __LDBL_MAX_EXP__ 128
10188 // AVR:#define __LDBL_MAX__ 3.40282347e+38L
10189 // AVR:#define __LDBL_MIN_10_EXP__ (-37)
10190 // AVR:#define __LDBL_MIN_EXP__ (-125)
10191 // AVR:#define __LDBL_MIN__ 1.17549435e-38L
10192 // AVR:#define __LONG_LONG_MAX__ 9223372036854775807LL
10193 // AVR:#define __LONG_MAX__ 2147483647L
10194 // AVR:#define __NO_INLINE__ 1
10195 // AVR:#define __ORDER_BIG_ENDIAN__ 4321
10196 // AVR:#define __ORDER_LITTLE_ENDIAN__ 1234
10197 // AVR:#define __ORDER_PDP_ENDIAN__ 3412
10198 // AVR:#define __PRAGMA_REDEFINE_EXTNAME 1
10199 // AVR:#define __PTRDIFF_MAX__ 32767
10200 // AVR:#define __PTRDIFF_TYPE__ int
10201 // AVR:#define __SCHAR_MAX__ 127
10202 // AVR:#define __SHRT_MAX__ 32767
10203 // AVR:#define __SIG_ATOMIC_MAX__ 127
10204 // AVR:#define __SIG_ATOMIC_WIDTH__ 8
10205 // AVR:#define __SIZEOF_DOUBLE__ 4
10206 // AVR:#define __SIZEOF_FLOAT__ 4
10207 // AVR:#define __SIZEOF_INT__ 2
10208 // AVR:#define __SIZEOF_LONG_DOUBLE__ 4
10209 // AVR:#define __SIZEOF_LONG_LONG__ 8
10210 // AVR:#define __SIZEOF_LONG__ 4
10211 // AVR:#define __SIZEOF_POINTER__ 2
10212 // AVR:#define __SIZEOF_PTRDIFF_T__ 2
10213 // AVR:#define __SIZEOF_SHORT__ 2
10214 // AVR:#define __SIZEOF_SIZE_T__ 2
10215 // AVR:#define __SIZEOF_WCHAR_T__ 2
10216 // AVR:#define __SIZEOF_WINT_T__ 2
10217 // AVR:#define __SIZE_MAX__ 65535U
10218 // AVR:#define __SIZE_TYPE__ unsigned int
10219 // AVR:#define __STDC__ 1
10220 // AVR:#define __UINT16_MAX__ 65535U
10221 // AVR:#define __UINT16_TYPE__ unsigned short
10222 // AVR:#define __UINT32_C_SUFFIX__ UL
10223 // AVR:#define __UINT32_MAX__ 4294967295UL
10224 // AVR:#define __UINT32_TYPE__ long unsigned int
10225 // AVR:#define __UINT64_C_SUFFIX__ ULL
10226 // AVR:#define __UINT64_MAX__ 18446744073709551615ULL
10227 // AVR:#define __UINT64_TYPE__ long long unsigned int
10228 // AVR:#define __UINT8_C_SUFFIX__
10229 // AVR:#define __UINT8_MAX__ 255
10230 // AVR:#define __UINT8_TYPE__ unsigned char
10231 // AVR:#define __UINTMAX_C_SUFFIX__ ULL
10232 // AVR:#define __UINTMAX_MAX__ 18446744073709551615ULL
10233 // AVR:#define __UINTMAX_TYPE__ long long unsigned int
10234 // AVR:#define __UINTPTR_MAX__ 65535U
10235 // AVR:#define __UINTPTR_TYPE__ unsigned int
10236 // AVR:#define __UINT_FAST16_MAX__ 65535U
10237 // AVR:#define __UINT_FAST16_TYPE__ unsigned int
10238 // AVR:#define __UINT_FAST32_MAX__ 4294967295UL
10239 // AVR:#define __UINT_FAST32_TYPE__ long unsigned int
10240 // AVR:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
10241 // AVR:#define __UINT_FAST64_TYPE__ long long unsigned int
10242 // AVR:#define __UINT_FAST8_MAX__ 255
10243 // AVR:#define __UINT_FAST8_TYPE__ unsigned char
10244 // AVR:#define __UINT_LEAST16_MAX__ 65535U
10245 // AVR:#define __UINT_LEAST16_TYPE__ unsigned int
10246 // AVR:#define __UINT_LEAST32_MAX__ 4294967295UL
10247 // AVR:#define __UINT_LEAST32_TYPE__ long unsigned int
10248 // AVR:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
10249 // AVR:#define __UINT_LEAST64_TYPE__ long long unsigned int
10250 // AVR:#define __UINT_LEAST8_MAX__ 255
10251 // AVR:#define __UINT_LEAST8_TYPE__ unsigned char
10252 // AVR:#define __USER_LABEL_PREFIX__
10253 // AVR:#define __WCHAR_MAX__ 32767
10254 // AVR:#define __WCHAR_TYPE__ int
10255 // AVR:#define __WINT_TYPE__ int
10256 
10257 
10258 // RUN: %clang_cc1 -E -dM -ffreestanding \
10259 // RUN:    -triple i686-windows-msvc -fms-compatibility -x c++ < /dev/null \
10260 // RUN:  | FileCheck -match-full-lines -check-prefix MSVC-X32 %s
10261 
10262 // RUN: %clang_cc1 -E -dM -ffreestanding \
10263 // RUN:    -triple x86_64-windows-msvc -fms-compatibility -x c++ < /dev/null \
10264 // RUN:  | FileCheck -match-full-lines -check-prefix MSVC-X64 %s
10265 
10266 // MSVC-X32:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
10267 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
10268 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
10269 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
10270 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
10271 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
10272 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
10273 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
10274 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
10275 // MSVC-X32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
10276 // MSVC-X32-NOT:#define __GCC_ATOMIC{{.*}}
10277 // MSVC-X32:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
10278 
10279 // MSVC-X64:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
10280 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
10281 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
10282 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
10283 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
10284 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
10285 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
10286 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
10287 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
10288 // MSVC-X64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
10289 // MSVC-X64-NOT:#define __GCC_ATOMIC{{.*}}
10290 // MSVC-X64:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16ULL
10291 
10292 // RUN: %clang_cc1 -E -dM -ffreestanding                \
10293 // RUN:   -triple=aarch64-apple-ios9 < /dev/null        \
10294 // RUN: | FileCheck -check-prefix=DARWIN %s
10295 // RUN: %clang_cc1 -E -dM -ffreestanding                \
10296 // RUN:   -triple=aarch64-apple-macosx10.12 < /dev/null \
10297 // RUN: | FileCheck -check-prefix=DARWIN %s
10298 
10299 // DARWIN:#define __STDC_NO_THREADS__ 1
10300 
10301 // RUN: %clang_cc1 -triple i386-apple-macosx -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix MACOS-32 %s
10302 // RUN: %clang_cc1 -triple x86_64-apple-macosx -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix MACOS-64 %s
10303 
10304 // MACOS-32: #define __INTPTR_TYPE__ long int
10305 // MACOS-32: #define __PTRDIFF_TYPE__ int
10306 // MACOS-32: #define __SIZE_TYPE__ long unsigned int
10307 
10308 // MACOS-64: #define __INTPTR_TYPE__ long int
10309 // MACOS-64: #define __PTRDIFF_TYPE__ long int
10310 // MACOS-64: #define __SIZE_TYPE__ long unsigned int
10311 
10312 // RUN: %clang_cc1 -triple i386-apple-ios-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-32 %s
10313 // RUN: %clang_cc1 -triple armv7-apple-ios -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-32 %s
10314 // RUN: %clang_cc1 -triple x86_64-apple-ios-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-64 %s
10315 // RUN: %clang_cc1 -triple arm64-apple-ios -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-64 %s
10316 
10317 // IOS-32: #define __INTPTR_TYPE__ long int
10318 // IOS-32: #define __PTRDIFF_TYPE__ int
10319 // IOS-32: #define __SIZE_TYPE__ long unsigned int
10320 
10321 // IOS-64: #define __INTPTR_TYPE__ long int
10322 // IOS-64: #define __PTRDIFF_TYPE__ long int
10323 // IOS-64: #define __SIZE_TYPE__ long unsigned int
10324 
10325 // RUN: %clang_cc1 -triple i386-apple-tvos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-32 %s
10326 // RUN: %clang_cc1 -triple armv7-apple-tvos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-32 %s
10327 // RUN: %clang_cc1 -triple x86_64-apple-tvos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-64 %s
10328 // RUN: %clang_cc1 -triple arm64-apple-tvos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-64 %s
10329 
10330 // TVOS-32: #define __INTPTR_TYPE__ long int
10331 // TVOS-32: #define __PTRDIFF_TYPE__ int
10332 // TVOS-32: #define __SIZE_TYPE__ long unsigned int
10333 
10334 // TVOS-64: #define __INTPTR_TYPE__ long int
10335 // TVOS-64: #define __PTRDIFF_TYPE__ long int
10336 // TVOS-64: #define __SIZE_TYPE__ long unsigned int
10337 
10338 // RUN: %clang_cc1 -triple i386-apple-watchos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-32 %s
10339 // RUN: %clang_cc1 -triple armv7k-apple-watchos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10340 // RUN: %clang_cc1 -triple x86_64-apple-watchos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10341 // RUN: %clang_cc1 -triple arm64-apple-watchos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10342 
10343 // WATCHOS-32: #define __INTPTR_TYPE__ long int
10344 // WATCHOS-32: #define __PTRDIFF_TYPE__ int
10345 // WATCHOS-32: #define __SIZE_TYPE__ long unsigned int
10346 
10347 // WATCHOS-64: #define __INTPTR_TYPE__ long int
10348 // WATCHOS-64: #define __PTRDIFF_TYPE__ long int
10349 // WATCHOS-64: #define __SIZE_TYPE__ long unsigned int
10350 
10351 // 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
10352 // 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
10353 
10354 // ARM-DARWIN-BAREMETAL-32: #define __INTPTR_TYPE__ long int
10355 // ARM-DARWIN-BAREMETAL-32: #define __PTRDIFF_TYPE__ int
10356 // ARM-DARWIN-BAREMETAL-32: #define __SIZE_TYPE__ long unsigned int
10357 
10358 // ARM-DARWIN-BAREMETAL-64: #define __INTPTR_TYPE__ long int
10359 // ARM-DARWIN-BAREMETAL-64: #define __PTRDIFF_TYPE__ long int
10360 // ARM-DARWIN-BAREMETAL-64: #define __SIZE_TYPE__ long unsigned int
10361 
10362 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32 < /dev/null \
10363 // RUN:   | FileCheck -match-full-lines -check-prefix=RISCV32 %s
10364 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32-unknown-linux < /dev/null \
10365 // RUN:   | FileCheck -match-full-lines -check-prefixes=RISCV32,RISCV32-LINUX %s
10366 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32 \
10367 // RUN: -fforce-enable-int128 < /dev/null | FileCheck -match-full-lines \
10368 // RUN: -check-prefixes=RISCV32,RISCV32-INT128 %s
10369 // RISCV32: #define _ILP32 1
10370 // RISCV32: #define __ATOMIC_ACQUIRE 2
10371 // RISCV32: #define __ATOMIC_ACQ_REL 4
10372 // RISCV32: #define __ATOMIC_CONSUME 1
10373 // RISCV32: #define __ATOMIC_RELAXED 0
10374 // RISCV32: #define __ATOMIC_RELEASE 3
10375 // RISCV32: #define __ATOMIC_SEQ_CST 5
10376 // RISCV32: #define __BIGGEST_ALIGNMENT__ 16
10377 // RISCV32: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
10378 // RISCV32: #define __CHAR16_TYPE__ unsigned short
10379 // RISCV32: #define __CHAR32_TYPE__ unsigned int
10380 // RISCV32: #define __CHAR_BIT__ 8
10381 // RISCV32: #define __DBL_DECIMAL_DIG__ 17
10382 // RISCV32: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
10383 // RISCV32: #define __DBL_DIG__ 15
10384 // RISCV32: #define __DBL_EPSILON__ 2.2204460492503131e-16
10385 // RISCV32: #define __DBL_HAS_DENORM__ 1
10386 // RISCV32: #define __DBL_HAS_INFINITY__ 1
10387 // RISCV32: #define __DBL_HAS_QUIET_NAN__ 1
10388 // RISCV32: #define __DBL_MANT_DIG__ 53
10389 // RISCV32: #define __DBL_MAX_10_EXP__ 308
10390 // RISCV32: #define __DBL_MAX_EXP__ 1024
10391 // RISCV32: #define __DBL_MAX__ 1.7976931348623157e+308
10392 // RISCV32: #define __DBL_MIN_10_EXP__ (-307)
10393 // RISCV32: #define __DBL_MIN_EXP__ (-1021)
10394 // RISCV32: #define __DBL_MIN__ 2.2250738585072014e-308
10395 // RISCV32: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
10396 // RISCV32: #define __ELF__ 1
10397 // RISCV32: #define __FINITE_MATH_ONLY__ 0
10398 // RISCV32: #define __FLT_DECIMAL_DIG__ 9
10399 // RISCV32: #define __FLT_DENORM_MIN__ 1.40129846e-45F
10400 // RISCV32: #define __FLT_DIG__ 6
10401 // RISCV32: #define __FLT_EPSILON__ 1.19209290e-7F
10402 // RISCV32: #define __FLT_EVAL_METHOD__ 0
10403 // RISCV32: #define __FLT_HAS_DENORM__ 1
10404 // RISCV32: #define __FLT_HAS_INFINITY__ 1
10405 // RISCV32: #define __FLT_HAS_QUIET_NAN__ 1
10406 // RISCV32: #define __FLT_MANT_DIG__ 24
10407 // RISCV32: #define __FLT_MAX_10_EXP__ 38
10408 // RISCV32: #define __FLT_MAX_EXP__ 128
10409 // RISCV32: #define __FLT_MAX__ 3.40282347e+38F
10410 // RISCV32: #define __FLT_MIN_10_EXP__ (-37)
10411 // RISCV32: #define __FLT_MIN_EXP__ (-125)
10412 // RISCV32: #define __FLT_MIN__ 1.17549435e-38F
10413 // RISCV32: #define __FLT_RADIX__ 2
10414 // RISCV32: #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
10415 // RISCV32: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
10416 // RISCV32: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
10417 // RISCV32: #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
10418 // RISCV32: #define __GCC_ATOMIC_INT_LOCK_FREE 1
10419 // RISCV32: #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
10420 // RISCV32: #define __GCC_ATOMIC_LONG_LOCK_FREE 1
10421 // RISCV32: #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
10422 // RISCV32: #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
10423 // RISCV32: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
10424 // RISCV32: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
10425 // RISCV32: #define __GNUC_MINOR__ {{.*}}
10426 // RISCV32: #define __GNUC_PATCHLEVEL__ {{.*}}
10427 // RISCV32: #define __GNUC_STDC_INLINE__ 1
10428 // RISCV32: #define __GNUC__ {{.*}}
10429 // RISCV32: #define __GXX_ABI_VERSION {{.*}}
10430 // RISCV32: #define __ILP32__ 1
10431 // RISCV32: #define __INT16_C_SUFFIX__
10432 // RISCV32: #define __INT16_MAX__ 32767
10433 // RISCV32: #define __INT16_TYPE__ short
10434 // RISCV32: #define __INT32_C_SUFFIX__
10435 // RISCV32: #define __INT32_MAX__ 2147483647
10436 // RISCV32: #define __INT32_TYPE__ int
10437 // RISCV32: #define __INT64_C_SUFFIX__ LL
10438 // RISCV32: #define __INT64_MAX__ 9223372036854775807LL
10439 // RISCV32: #define __INT64_TYPE__ long long int
10440 // RISCV32: #define __INT8_C_SUFFIX__
10441 // RISCV32: #define __INT8_MAX__ 127
10442 // RISCV32: #define __INT8_TYPE__ signed char
10443 // RISCV32: #define __INTMAX_C_SUFFIX__ LL
10444 // RISCV32: #define __INTMAX_MAX__ 9223372036854775807LL
10445 // RISCV32: #define __INTMAX_TYPE__ long long int
10446 // RISCV32: #define __INTMAX_WIDTH__ 64
10447 // RISCV32: #define __INTPTR_MAX__ 2147483647
10448 // RISCV32: #define __INTPTR_TYPE__ int
10449 // RISCV32: #define __INTPTR_WIDTH__ 32
10450 // TODO: RISC-V GCC defines INT_FAST16 as int
10451 // RISCV32: #define __INT_FAST16_MAX__ 32767
10452 // RISCV32: #define __INT_FAST16_TYPE__ short
10453 // RISCV32: #define __INT_FAST32_MAX__ 2147483647
10454 // RISCV32: #define __INT_FAST32_TYPE__ int
10455 // RISCV32: #define __INT_FAST64_MAX__ 9223372036854775807LL
10456 // RISCV32: #define __INT_FAST64_TYPE__ long long int
10457 // TODO: RISC-V GCC defines INT_FAST8 as int
10458 // RISCV32: #define __INT_FAST8_MAX__ 127
10459 // RISCV32: #define __INT_FAST8_TYPE__ signed char
10460 // RISCV32: #define __INT_LEAST16_MAX__ 32767
10461 // RISCV32: #define __INT_LEAST16_TYPE__ short
10462 // RISCV32: #define __INT_LEAST32_MAX__ 2147483647
10463 // RISCV32: #define __INT_LEAST32_TYPE__ int
10464 // RISCV32: #define __INT_LEAST64_MAX__ 9223372036854775807LL
10465 // RISCV32: #define __INT_LEAST64_TYPE__ long long int
10466 // RISCV32: #define __INT_LEAST8_MAX__ 127
10467 // RISCV32: #define __INT_LEAST8_TYPE__ signed char
10468 // RISCV32: #define __INT_MAX__ 2147483647
10469 // RISCV32: #define __LDBL_DECIMAL_DIG__ 36
10470 // RISCV32: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
10471 // RISCV32: #define __LDBL_DIG__ 33
10472 // RISCV32: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
10473 // RISCV32: #define __LDBL_HAS_DENORM__ 1
10474 // RISCV32: #define __LDBL_HAS_INFINITY__ 1
10475 // RISCV32: #define __LDBL_HAS_QUIET_NAN__ 1
10476 // RISCV32: #define __LDBL_MANT_DIG__ 113
10477 // RISCV32: #define __LDBL_MAX_10_EXP__ 4932
10478 // RISCV32: #define __LDBL_MAX_EXP__ 16384
10479 // RISCV32: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
10480 // RISCV32: #define __LDBL_MIN_10_EXP__ (-4931)
10481 // RISCV32: #define __LDBL_MIN_EXP__ (-16381)
10482 // RISCV32: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
10483 // RISCV32: #define __LITTLE_ENDIAN__ 1
10484 // RISCV32: #define __LONG_LONG_MAX__ 9223372036854775807LL
10485 // RISCV32: #define __LONG_MAX__ 2147483647L
10486 // RISCV32: #define __NO_INLINE__ 1
10487 // RISCV32: #define __POINTER_WIDTH__ 32
10488 // RISCV32: #define __PRAGMA_REDEFINE_EXTNAME 1
10489 // RISCV32: #define __PTRDIFF_MAX__ 2147483647
10490 // RISCV32: #define __PTRDIFF_TYPE__ int
10491 // RISCV32: #define __PTRDIFF_WIDTH__ 32
10492 // RISCV32: #define __SCHAR_MAX__ 127
10493 // RISCV32: #define __SHRT_MAX__ 32767
10494 // RISCV32: #define __SIG_ATOMIC_MAX__ 2147483647
10495 // RISCV32: #define __SIG_ATOMIC_WIDTH__ 32
10496 // RISCV32: #define __SIZEOF_DOUBLE__ 8
10497 // RISCV32: #define __SIZEOF_FLOAT__ 4
10498 // RISCV32-INT128: #define __SIZEOF_INT128__ 16
10499 // RISCV32: #define __SIZEOF_INT__ 4
10500 // RISCV32: #define __SIZEOF_LONG_DOUBLE__ 16
10501 // RISCV32: #define __SIZEOF_LONG_LONG__ 8
10502 // RISCV32: #define __SIZEOF_LONG__ 4
10503 // RISCV32: #define __SIZEOF_POINTER__ 4
10504 // RISCV32: #define __SIZEOF_PTRDIFF_T__ 4
10505 // RISCV32: #define __SIZEOF_SHORT__ 2
10506 // RISCV32: #define __SIZEOF_SIZE_T__ 4
10507 // RISCV32: #define __SIZEOF_WCHAR_T__ 4
10508 // RISCV32: #define __SIZEOF_WINT_T__ 4
10509 // RISCV32: #define __SIZE_MAX__ 4294967295U
10510 // RISCV32: #define __SIZE_TYPE__ unsigned int
10511 // RISCV32: #define __SIZE_WIDTH__ 32
10512 // RISCV32: #define __STDC_HOSTED__ 0
10513 // RISCV32: #define __STDC_UTF_16__ 1
10514 // RISCV32: #define __STDC_UTF_32__ 1
10515 // RISCV32: #define __STDC_VERSION__ 201112L
10516 // RISCV32: #define __STDC__ 1
10517 // RISCV32: #define __UINT16_C_SUFFIX__
10518 // RISCV32: #define __UINT16_MAX__ 65535
10519 // RISCV32: #define __UINT16_TYPE__ unsigned short
10520 // RISCV32: #define __UINT32_C_SUFFIX__ U
10521 // RISCV32: #define __UINT32_MAX__ 4294967295U
10522 // RISCV32: #define __UINT32_TYPE__ unsigned int
10523 // RISCV32: #define __UINT64_C_SUFFIX__ ULL
10524 // RISCV32: #define __UINT64_MAX__ 18446744073709551615ULL
10525 // RISCV32: #define __UINT64_TYPE__ long long unsigned int
10526 // RISCV32: #define __UINT8_C_SUFFIX__
10527 // RISCV32: #define __UINT8_MAX__ 255
10528 // RISCV32: #define __UINT8_TYPE__ unsigned char
10529 // RISCV32: #define __UINTMAX_C_SUFFIX__ ULL
10530 // RISCV32: #define __UINTMAX_MAX__ 18446744073709551615ULL
10531 // RISCV32: #define __UINTMAX_TYPE__ long long unsigned int
10532 // RISCV32: #define __UINTMAX_WIDTH__ 64
10533 // RISCV32: #define __UINTPTR_MAX__ 4294967295U
10534 // RISCV32: #define __UINTPTR_TYPE__ unsigned int
10535 // RISCV32: #define __UINTPTR_WIDTH__ 32
10536 // TODO: RISC-V GCC defines UINT_FAST16 to be unsigned int
10537 // RISCV32: #define __UINT_FAST16_MAX__ 65535
10538 // RISCV32: #define __UINT_FAST16_TYPE__ unsigned short
10539 // RISCV32: #define __UINT_FAST32_MAX__ 4294967295U
10540 // RISCV32: #define __UINT_FAST32_TYPE__ unsigned int
10541 // RISCV32: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
10542 // RISCV32: #define __UINT_FAST64_TYPE__ long long unsigned int
10543 // TODO: RISC-V GCC defines UINT_FAST8 to be unsigned int
10544 // RISCV32: #define __UINT_FAST8_MAX__ 255
10545 // RISCV32: #define __UINT_FAST8_TYPE__ unsigned char
10546 // RISCV32: #define __UINT_LEAST16_MAX__ 65535
10547 // RISCV32: #define __UINT_LEAST16_TYPE__ unsigned short
10548 // RISCV32: #define __UINT_LEAST32_MAX__ 4294967295U
10549 // RISCV32: #define __UINT_LEAST32_TYPE__ unsigned int
10550 // RISCV32: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
10551 // RISCV32: #define __UINT_LEAST64_TYPE__ long long unsigned int
10552 // RISCV32: #define __UINT_LEAST8_MAX__ 255
10553 // RISCV32: #define __UINT_LEAST8_TYPE__ unsigned char
10554 // RISCV32: #define __USER_LABEL_PREFIX__
10555 // RISCV32: #define __WCHAR_MAX__ 2147483647
10556 // RISCV32: #define __WCHAR_TYPE__ int
10557 // RISCV32: #define __WCHAR_WIDTH__ 32
10558 // RISCV32: #define __WINT_TYPE__ unsigned int
10559 // RISCV32: #define __WINT_UNSIGNED__ 1
10560 // RISCV32: #define __WINT_WIDTH__ 32
10561 // RISCV32-LINUX: #define __gnu_linux__ 1
10562 // RISCV32-LINUX: #define __linux 1
10563 // RISCV32-LINUX: #define __linux__ 1
10564 // RISCV32: #define __riscv 1
10565 // RISCV32: #define __riscv_cmodel_medlow 1
10566 // RISCV32: #define __riscv_float_abi_soft 1
10567 // RISCV32: #define __riscv_xlen 32
10568 // RISCV32-LINUX: #define __unix 1
10569 // RISCV32-LINUX: #define __unix__ 1
10570 // RISCV32-LINUX: #define linux 1
10571 // RISCV32-LINUX: #define unix 1
10572 
10573 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv64 < /dev/null \
10574 // RUN:   | FileCheck -match-full-lines -check-prefix=RISCV64 %s
10575 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv64-unknown-linux < /dev/null \
10576 // RUN:   | FileCheck -match-full-lines -check-prefixes=RISCV64,RISCV64-LINUX %s
10577 // RISCV64: #define _LP64 1
10578 // RISCV64: #define __ATOMIC_ACQUIRE 2
10579 // RISCV64: #define __ATOMIC_ACQ_REL 4
10580 // RISCV64: #define __ATOMIC_CONSUME 1
10581 // RISCV64: #define __ATOMIC_RELAXED 0
10582 // RISCV64: #define __ATOMIC_RELEASE 3
10583 // RISCV64: #define __ATOMIC_SEQ_CST 5
10584 // RISCV64: #define __BIGGEST_ALIGNMENT__ 16
10585 // RISCV64: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
10586 // RISCV64: #define __CHAR16_TYPE__ unsigned short
10587 // RISCV64: #define __CHAR32_TYPE__ unsigned int
10588 // RISCV64: #define __CHAR_BIT__ 8
10589 // RISCV64: #define __DBL_DECIMAL_DIG__ 17
10590 // RISCV64: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
10591 // RISCV64: #define __DBL_DIG__ 15
10592 // RISCV64: #define __DBL_EPSILON__ 2.2204460492503131e-16
10593 // RISCV64: #define __DBL_HAS_DENORM__ 1
10594 // RISCV64: #define __DBL_HAS_INFINITY__ 1
10595 // RISCV64: #define __DBL_HAS_QUIET_NAN__ 1
10596 // RISCV64: #define __DBL_MANT_DIG__ 53
10597 // RISCV64: #define __DBL_MAX_10_EXP__ 308
10598 // RISCV64: #define __DBL_MAX_EXP__ 1024
10599 // RISCV64: #define __DBL_MAX__ 1.7976931348623157e+308
10600 // RISCV64: #define __DBL_MIN_10_EXP__ (-307)
10601 // RISCV64: #define __DBL_MIN_EXP__ (-1021)
10602 // RISCV64: #define __DBL_MIN__ 2.2250738585072014e-308
10603 // RISCV64: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
10604 // RISCV64: #define __ELF__ 1
10605 // RISCV64: #define __FINITE_MATH_ONLY__ 0
10606 // RISCV64: #define __FLT_DECIMAL_DIG__ 9
10607 // RISCV64: #define __FLT_DENORM_MIN__ 1.40129846e-45F
10608 // RISCV64: #define __FLT_DIG__ 6
10609 // RISCV64: #define __FLT_EPSILON__ 1.19209290e-7F
10610 // RISCV64: #define __FLT_EVAL_METHOD__ 0
10611 // RISCV64: #define __FLT_HAS_DENORM__ 1
10612 // RISCV64: #define __FLT_HAS_INFINITY__ 1
10613 // RISCV64: #define __FLT_HAS_QUIET_NAN__ 1
10614 // RISCV64: #define __FLT_MANT_DIG__ 24
10615 // RISCV64: #define __FLT_MAX_10_EXP__ 38
10616 // RISCV64: #define __FLT_MAX_EXP__ 128
10617 // RISCV64: #define __FLT_MAX__ 3.40282347e+38F
10618 // RISCV64: #define __FLT_MIN_10_EXP__ (-37)
10619 // RISCV64: #define __FLT_MIN_EXP__ (-125)
10620 // RISCV64: #define __FLT_MIN__ 1.17549435e-38F
10621 // RISCV64: #define __FLT_RADIX__ 2
10622 // RISCV64: #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
10623 // RISCV64: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
10624 // RISCV64: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
10625 // RISCV64: #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
10626 // RISCV64: #define __GCC_ATOMIC_INT_LOCK_FREE 1
10627 // RISCV64: #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
10628 // RISCV64: #define __GCC_ATOMIC_LONG_LOCK_FREE 1
10629 // RISCV64: #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
10630 // RISCV64: #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
10631 // RISCV64: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
10632 // RISCV64: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
10633 // RISCV64: #define __GNUC_MINOR__ {{.*}}
10634 // RISCV64: #define __GNUC_PATCHLEVEL__ {{.*}}
10635 // RISCV64: #define __GNUC_STDC_INLINE__ 1
10636 // RISCV64: #define __GNUC__ {{.*}}
10637 // RISCV64: #define __GXX_ABI_VERSION {{.*}}
10638 // RISCV64: #define __INT16_C_SUFFIX__
10639 // RISCV64: #define __INT16_MAX__ 32767
10640 // RISCV64: #define __INT16_TYPE__ short
10641 // RISCV64: #define __INT32_C_SUFFIX__
10642 // RISCV64: #define __INT32_MAX__ 2147483647
10643 // RISCV64: #define __INT32_TYPE__ int
10644 // RISCV64: #define __INT64_C_SUFFIX__ L
10645 // RISCV64: #define __INT64_MAX__ 9223372036854775807L
10646 // RISCV64: #define __INT64_TYPE__ long int
10647 // RISCV64: #define __INT8_C_SUFFIX__
10648 // RISCV64: #define __INT8_MAX__ 127
10649 // RISCV64: #define __INT8_TYPE__ signed char
10650 // RISCV64: #define __INTMAX_C_SUFFIX__ L
10651 // RISCV64: #define __INTMAX_MAX__ 9223372036854775807L
10652 // RISCV64: #define __INTMAX_TYPE__ long int
10653 // RISCV64: #define __INTMAX_WIDTH__ 64
10654 // RISCV64: #define __INTPTR_MAX__ 9223372036854775807L
10655 // RISCV64: #define __INTPTR_TYPE__ long int
10656 // RISCV64: #define __INTPTR_WIDTH__ 64
10657 // TODO: RISC-V GCC defines INT_FAST16 as int
10658 // RISCV64: #define __INT_FAST16_MAX__ 32767
10659 // RISCV64: #define __INT_FAST16_TYPE__ short
10660 // RISCV64: #define __INT_FAST32_MAX__ 2147483647
10661 // RISCV64: #define __INT_FAST32_TYPE__ int
10662 // RISCV64: #define __INT_FAST64_MAX__ 9223372036854775807L
10663 // RISCV64: #define __INT_FAST64_TYPE__ long int
10664 // TODO: RISC-V GCC defines INT_FAST8 as int
10665 // RISCV64: #define __INT_FAST8_MAX__ 127
10666 // RISCV64: #define __INT_FAST8_TYPE__ signed char
10667 // RISCV64: #define __INT_LEAST16_MAX__ 32767
10668 // RISCV64: #define __INT_LEAST16_TYPE__ short
10669 // RISCV64: #define __INT_LEAST32_MAX__ 2147483647
10670 // RISCV64: #define __INT_LEAST32_TYPE__ int
10671 // RISCV64: #define __INT_LEAST64_MAX__ 9223372036854775807L
10672 // RISCV64: #define __INT_LEAST64_TYPE__ long int
10673 // RISCV64: #define __INT_LEAST8_MAX__ 127
10674 // RISCV64: #define __INT_LEAST8_TYPE__ signed char
10675 // RISCV64: #define __INT_MAX__ 2147483647
10676 // RISCV64: #define __LDBL_DECIMAL_DIG__ 36
10677 // RISCV64: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
10678 // RISCV64: #define __LDBL_DIG__ 33
10679 // RISCV64: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
10680 // RISCV64: #define __LDBL_HAS_DENORM__ 1
10681 // RISCV64: #define __LDBL_HAS_INFINITY__ 1
10682 // RISCV64: #define __LDBL_HAS_QUIET_NAN__ 1
10683 // RISCV64: #define __LDBL_MANT_DIG__ 113
10684 // RISCV64: #define __LDBL_MAX_10_EXP__ 4932
10685 // RISCV64: #define __LDBL_MAX_EXP__ 16384
10686 // RISCV64: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
10687 // RISCV64: #define __LDBL_MIN_10_EXP__ (-4931)
10688 // RISCV64: #define __LDBL_MIN_EXP__ (-16381)
10689 // RISCV64: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
10690 // RISCV64: #define __LITTLE_ENDIAN__ 1
10691 // RISCV64: #define __LONG_LONG_MAX__ 9223372036854775807LL
10692 // RISCV64: #define __LONG_MAX__ 9223372036854775807L
10693 // RISCV64: #define __LP64__ 1
10694 // RISCV64: #define __NO_INLINE__ 1
10695 // RISCV64: #define __POINTER_WIDTH__ 64
10696 // RISCV64: #define __PRAGMA_REDEFINE_EXTNAME 1
10697 // RISCV64: #define __PTRDIFF_MAX__ 9223372036854775807L
10698 // RISCV64: #define __PTRDIFF_TYPE__ long int
10699 // RISCV64: #define __PTRDIFF_WIDTH__ 64
10700 // RISCV64: #define __SCHAR_MAX__ 127
10701 // RISCV64: #define __SHRT_MAX__ 32767
10702 // RISCV64: #define __SIG_ATOMIC_MAX__ 2147483647
10703 // RISCV64: #define __SIG_ATOMIC_WIDTH__ 32
10704 // RISCV64: #define __SIZEOF_DOUBLE__ 8
10705 // RISCV64: #define __SIZEOF_FLOAT__ 4
10706 // RISCV64: #define __SIZEOF_INT__ 4
10707 // RISCV64: #define __SIZEOF_LONG_DOUBLE__ 16
10708 // RISCV64: #define __SIZEOF_LONG_LONG__ 8
10709 // RISCV64: #define __SIZEOF_LONG__ 8
10710 // RISCV64: #define __SIZEOF_POINTER__ 8
10711 // RISCV64: #define __SIZEOF_PTRDIFF_T__ 8
10712 // RISCV64: #define __SIZEOF_SHORT__ 2
10713 // RISCV64: #define __SIZEOF_SIZE_T__ 8
10714 // RISCV64: #define __SIZEOF_WCHAR_T__ 4
10715 // RISCV64: #define __SIZEOF_WINT_T__ 4
10716 // RISCV64: #define __SIZE_MAX__ 18446744073709551615UL
10717 // RISCV64: #define __SIZE_TYPE__ long unsigned int
10718 // RISCV64: #define __SIZE_WIDTH__ 64
10719 // RISCV64: #define __STDC_HOSTED__ 0
10720 // RISCV64: #define __STDC_UTF_16__ 1
10721 // RISCV64: #define __STDC_UTF_32__ 1
10722 // RISCV64: #define __STDC_VERSION__ 201112L
10723 // RISCV64: #define __STDC__ 1
10724 // RISCV64: #define __UINT16_C_SUFFIX__
10725 // RISCV64: #define __UINT16_MAX__ 65535
10726 // RISCV64: #define __UINT16_TYPE__ unsigned short
10727 // RISCV64: #define __UINT32_C_SUFFIX__ U
10728 // RISCV64: #define __UINT32_MAX__ 4294967295U
10729 // RISCV64: #define __UINT32_TYPE__ unsigned int
10730 // RISCV64: #define __UINT64_C_SUFFIX__ UL
10731 // RISCV64: #define __UINT64_MAX__ 18446744073709551615UL
10732 // RISCV64: #define __UINT64_TYPE__ long unsigned int
10733 // RISCV64: #define __UINT8_C_SUFFIX__
10734 // RISCV64: #define __UINT8_MAX__ 255
10735 // RISCV64: #define __UINT8_TYPE__ unsigned char
10736 // RISCV64: #define __UINTMAX_C_SUFFIX__ UL
10737 // RISCV64: #define __UINTMAX_MAX__ 18446744073709551615UL
10738 // RISCV64: #define __UINTMAX_TYPE__ long unsigned int
10739 // RISCV64: #define __UINTMAX_WIDTH__ 64
10740 // RISCV64: #define __UINTPTR_MAX__ 18446744073709551615UL
10741 // RISCV64: #define __UINTPTR_TYPE__ long unsigned int
10742 // RISCV64: #define __UINTPTR_WIDTH__ 64
10743 // TODO: RISC-V GCC defines UINT_FAST16 to be unsigned int
10744 // RISCV64: #define __UINT_FAST16_MAX__ 65535
10745 // RISCV64: #define __UINT_FAST16_TYPE__ unsigned short
10746 // RISCV64: #define __UINT_FAST32_MAX__ 4294967295U
10747 // RISCV64: #define __UINT_FAST32_TYPE__ unsigned int
10748 // RISCV64: #define __UINT_FAST64_MAX__ 18446744073709551615UL
10749 // RISCV64: #define __UINT_FAST64_TYPE__ long unsigned int
10750 // TODO: RISC-V GCC defines UINT_FAST8 to be unsigned int
10751 // RISCV64: #define __UINT_FAST8_MAX__ 255
10752 // RISCV64: #define __UINT_FAST8_TYPE__ unsigned char
10753 // RISCV64: #define __UINT_LEAST16_MAX__ 65535
10754 // RISCV64: #define __UINT_LEAST16_TYPE__ unsigned short
10755 // RISCV64: #define __UINT_LEAST32_MAX__ 4294967295U
10756 // RISCV64: #define __UINT_LEAST32_TYPE__ unsigned int
10757 // RISCV64: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
10758 // RISCV64: #define __UINT_LEAST64_TYPE__ long unsigned int
10759 // RISCV64: #define __UINT_LEAST8_MAX__ 255
10760 // RISCV64: #define __UINT_LEAST8_TYPE__ unsigned char
10761 // RISCV64: #define __USER_LABEL_PREFIX__
10762 // RISCV64: #define __WCHAR_MAX__ 2147483647
10763 // RISCV64: #define __WCHAR_TYPE__ int
10764 // RISCV64: #define __WCHAR_WIDTH__ 32
10765 // RISCV64: #define __WINT_TYPE__ unsigned int
10766 // RISCV64: #define __WINT_UNSIGNED__ 1
10767 // RISCV64: #define __WINT_WIDTH__ 32
10768 // RISCV64-LINUX: #define __gnu_linux__ 1
10769 // RISCV64-LINUX: #define __linux 1
10770 // RISCV64-LINUX: #define __linux__ 1
10771 // RISCV64: #define __riscv 1
10772 // RISCV64: #define __riscv_cmodel_medlow 1
10773 // RISCV64: #define __riscv_float_abi_soft 1
10774 // RISCV64: #define __riscv_xlen 64
10775 // RISCV64-LINUX: #define __unix 1
10776 // RISCV64-LINUX: #define __unix__ 1
10777 // RISCV64-LINUX: #define linux 1
10778 // RISCV64-LINUX: #define unix 1
10779