Clang Project

clang_source_code/test/Preprocessor/init.c
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__ 15
314// AARCH64:#define __FLT16_MAX__ 6.5504e+4F16
315// AARCH64:#define __FLT16_MIN_10_EXP__ (-13)
316// AARCH64:#define __FLT16_MIN_EXP__ (-14)
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 -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
7247//
7248// PPC-AIX-CXX:#define _WCHAR_T 1
7249//
7250// 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
7251// 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
7252//
7253// PPC-AIX-NOWCHAR-NOT:#define _WCHAR_T 1
7254//
7255// 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
7256// PPC-AIX-THREADSAFE:#define _THREAD_SAFE 1
7257//
7258// 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
7259// PPC-AIX-NOTHREADSAFE-NOT:#define _THREAD_SAFE 1
7260//
7261// 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
7262//
7263// PPC-LINUX:#define _ARCH_PPC 1
7264// PPC-LINUX:#define _BIG_ENDIAN 1
7265// PPC-LINUX-NOT:#define _LP64
7266// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 16
7267// PPC-LINUX:#define __BIG_ENDIAN__ 1
7268// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
7269// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
7270// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
7271// PPC-LINUX:#define __CHAR_BIT__ 8
7272// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
7273// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7274// PPC-LINUX:#define __DBL_DIG__ 15
7275// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
7276// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
7277// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
7278// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
7279// PPC-LINUX:#define __DBL_MANT_DIG__ 53
7280// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
7281// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
7282// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
7283// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
7284// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
7285// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
7286// PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7287// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7288// PPC-LINUX:#define __FLT_DIG__ 6
7289// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
7290// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
7291// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
7292// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
7293// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
7294// PPC-LINUX:#define __FLT_MANT_DIG__ 24
7295// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
7296// PPC-LINUX:#define __FLT_MAX_EXP__ 128
7297// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
7298// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
7299// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
7300// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
7301// PPC-LINUX:#define __FLT_RADIX__ 2
7302// PPC-LINUX:#define __HAVE_BSWAP__ 1
7303// PPC-LINUX:#define __INT16_C_SUFFIX__
7304// PPC-LINUX:#define __INT16_FMTd__ "hd"
7305// PPC-LINUX:#define __INT16_FMTi__ "hi"
7306// PPC-LINUX:#define __INT16_MAX__ 32767
7307// PPC-LINUX:#define __INT16_TYPE__ short
7308// PPC-LINUX:#define __INT32_C_SUFFIX__
7309// PPC-LINUX:#define __INT32_FMTd__ "d"
7310// PPC-LINUX:#define __INT32_FMTi__ "i"
7311// PPC-LINUX:#define __INT32_MAX__ 2147483647
7312// PPC-LINUX:#define __INT32_TYPE__ int
7313// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
7314// PPC-LINUX:#define __INT64_FMTd__ "lld"
7315// PPC-LINUX:#define __INT64_FMTi__ "lli"
7316// PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
7317// PPC-LINUX:#define __INT64_TYPE__ long long int
7318// PPC-LINUX:#define __INT8_C_SUFFIX__
7319// PPC-LINUX:#define __INT8_FMTd__ "hhd"
7320// PPC-LINUX:#define __INT8_FMTi__ "hhi"
7321// PPC-LINUX:#define __INT8_MAX__ 127
7322// PPC-LINUX:#define __INT8_TYPE__ signed char
7323// PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
7324// PPC-LINUX:#define __INTMAX_FMTd__ "lld"
7325// PPC-LINUX:#define __INTMAX_FMTi__ "lli"
7326// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
7327// PPC-LINUX:#define __INTMAX_TYPE__ long long int
7328// PPC-LINUX:#define __INTMAX_WIDTH__ 64
7329// PPC-LINUX:#define __INTPTR_FMTd__ "d"
7330// PPC-LINUX:#define __INTPTR_FMTi__ "i"
7331// PPC-LINUX:#define __INTPTR_MAX__ 2147483647
7332// PPC-LINUX:#define __INTPTR_TYPE__ int
7333// PPC-LINUX:#define __INTPTR_WIDTH__ 32
7334// PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
7335// PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
7336// PPC-LINUX:#define __INT_FAST16_MAX__ 32767
7337// PPC-LINUX:#define __INT_FAST16_TYPE__ short
7338// PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
7339// PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
7340// PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
7341// PPC-LINUX:#define __INT_FAST32_TYPE__ int
7342// PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
7343// PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
7344// PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
7345// PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
7346// PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
7347// PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
7348// PPC-LINUX:#define __INT_FAST8_MAX__ 127
7349// PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
7350// PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
7351// PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
7352// PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
7353// PPC-LINUX:#define __INT_LEAST16_TYPE__ short
7354// PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
7355// PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
7356// PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
7357// PPC-LINUX:#define __INT_LEAST32_TYPE__ int
7358// PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
7359// PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
7360// PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7361// PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
7362// PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
7363// PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
7364// PPC-LINUX:#define __INT_LEAST8_MAX__ 127
7365// PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
7366// PPC-LINUX:#define __INT_MAX__ 2147483647
7367// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
7368// PPC-LINUX:#define __LDBL_DIG__ 31
7369// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
7370// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
7371// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
7372// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
7373// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
7374// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
7375// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
7376// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
7377// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
7378// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
7379// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
7380// PPC-LINUX:#define __LONGDOUBLE128 1
7381// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
7382// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
7383// PPC-LINUX:#define __LONG_MAX__ 2147483647L
7384// PPC-LINUX-NOT:#define __LP64__
7385// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
7386// PPC-LINUX:#define __POINTER_WIDTH__ 32
7387// PPC-LINUX:#define __POWERPC__ 1
7388// PPC-LINUX:#define __PPC__ 1
7389// PPC-LINUX:#define __PTRDIFF_TYPE__ int
7390// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
7391// PPC-LINUX:#define __REGISTER_PREFIX__
7392// PPC-LINUX:#define __SCHAR_MAX__ 127
7393// PPC-LINUX:#define __SHRT_MAX__ 32767
7394// PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
7395// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
7396// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
7397// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
7398// PPC-LINUX:#define __SIZEOF_INT__ 4
7399// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
7400// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
7401// PPC-LINUX:#define __SIZEOF_LONG__ 4
7402// PPC-LINUX:#define __SIZEOF_POINTER__ 4
7403// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
7404// PPC-LINUX:#define __SIZEOF_SHORT__ 2
7405// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
7406// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
7407// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
7408// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
7409// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
7410// PPC-LINUX:#define __SIZE_WIDTH__ 32
7411// PPC-LINUX:#define __UINT16_C_SUFFIX__
7412// PPC-LINUX:#define __UINT16_MAX__ 65535
7413// PPC-LINUX:#define __UINT16_TYPE__ unsigned short
7414// PPC-LINUX:#define __UINT32_C_SUFFIX__ U
7415// PPC-LINUX:#define __UINT32_MAX__ 4294967295U
7416// PPC-LINUX:#define __UINT32_TYPE__ unsigned int
7417// PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
7418// PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
7419// PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
7420// PPC-LINUX:#define __UINT8_C_SUFFIX__
7421// PPC-LINUX:#define __UINT8_MAX__ 255
7422// PPC-LINUX:#define __UINT8_TYPE__ unsigned char
7423// PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
7424// PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
7425// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
7426// PPC-LINUX:#define __UINTMAX_WIDTH__ 64
7427// PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
7428// PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
7429// PPC-LINUX:#define __UINTPTR_WIDTH__ 32
7430// PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
7431// PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
7432// PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
7433// PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
7434// PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7435// PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
7436// PPC-LINUX:#define __UINT_FAST8_MAX__ 255
7437// PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
7438// PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
7439// PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
7440// PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
7441// PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
7442// PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7443// PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
7444// PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
7445// PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
7446// PPC-LINUX:#define __USER_LABEL_PREFIX__
7447// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
7448// PPC-LINUX:#define __WCHAR_TYPE__ int
7449// PPC-LINUX:#define __WCHAR_WIDTH__ 32
7450// PPC-LINUX:#define __WINT_TYPE__ unsigned int
7451// PPC-LINUX:#define __WINT_UNSIGNED__ 1
7452// PPC-LINUX:#define __WINT_WIDTH__ 32
7453// PPC-LINUX:#define __powerpc__ 1
7454// PPC-LINUX:#define __ppc__ 1
7455//
7456// 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
7457//
7458// PPC32-LINUX-NOT: _CALL_LINUX
7459//
7460// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-DARWIN %s
7461//
7462// PPC-DARWIN:#define _ARCH_PPC 1
7463// PPC-DARWIN:#define _BIG_ENDIAN 1
7464// PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
7465// PPC-DARWIN:#define __BIG_ENDIAN__ 1
7466// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
7467// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
7468// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
7469// PPC-DARWIN:#define __CHAR_BIT__ 8
7470// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7471// PPC-DARWIN:#define __DBL_DIG__ 15
7472// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
7473// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
7474// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
7475// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
7476// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
7477// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
7478// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
7479// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
7480// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
7481// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
7482// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
7483// PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7484// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7485// PPC-DARWIN:#define __FLT_DIG__ 6
7486// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
7487// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
7488// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
7489// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
7490// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
7491// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
7492// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
7493// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
7494// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
7495// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
7496// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
7497// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
7498// PPC-DARWIN:#define __FLT_RADIX__ 2
7499// PPC-DARWIN:#define __HAVE_BSWAP__ 1
7500// PPC-DARWIN:#define __INT16_C_SUFFIX__
7501// PPC-DARWIN:#define __INT16_FMTd__ "hd"
7502// PPC-DARWIN:#define __INT16_FMTi__ "hi"
7503// PPC-DARWIN:#define __INT16_MAX__ 32767
7504// PPC-DARWIN:#define __INT16_TYPE__ short
7505// PPC-DARWIN:#define __INT32_C_SUFFIX__
7506// PPC-DARWIN:#define __INT32_FMTd__ "d"
7507// PPC-DARWIN:#define __INT32_FMTi__ "i"
7508// PPC-DARWIN:#define __INT32_MAX__ 2147483647
7509// PPC-DARWIN:#define __INT32_TYPE__ int
7510// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
7511// PPC-DARWIN:#define __INT64_FMTd__ "lld"
7512// PPC-DARWIN:#define __INT64_FMTi__ "lli"
7513// PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
7514// PPC-DARWIN:#define __INT64_TYPE__ long long int
7515// PPC-DARWIN:#define __INT8_C_SUFFIX__
7516// PPC-DARWIN:#define __INT8_FMTd__ "hhd"
7517// PPC-DARWIN:#define __INT8_FMTi__ "hhi"
7518// PPC-DARWIN:#define __INT8_MAX__ 127
7519// PPC-DARWIN:#define __INT8_TYPE__ signed char
7520// PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
7521// PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
7522// PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
7523// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
7524// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
7525// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
7526// PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
7527// PPC-DARWIN:#define __INTPTR_FMTi__ "li"
7528// PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
7529// PPC-DARWIN:#define __INTPTR_TYPE__ long int
7530// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
7531// PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
7532// PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
7533// PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
7534// PPC-DARWIN:#define __INT_FAST16_TYPE__ short
7535// PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
7536// PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
7537// PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
7538// PPC-DARWIN:#define __INT_FAST32_TYPE__ int
7539// PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
7540// PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
7541// PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
7542// PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
7543// PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
7544// PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
7545// PPC-DARWIN:#define __INT_FAST8_MAX__ 127
7546// PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
7547// PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
7548// PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
7549// PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
7550// PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
7551// PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
7552// PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
7553// PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
7554// PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
7555// PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
7556// PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
7557// PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7558// PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
7559// PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
7560// PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
7561// PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
7562// PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
7563// PPC-DARWIN:#define __INT_MAX__ 2147483647
7564// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
7565// PPC-DARWIN:#define __LDBL_DIG__ 31
7566// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
7567// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
7568// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
7569// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
7570// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
7571// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
7572// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
7573// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
7574// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
7575// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
7576// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
7577// PPC-DARWIN:#define __LONGDOUBLE128 1
7578// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
7579// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
7580// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
7581// PPC-DARWIN:#define __MACH__ 1
7582// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
7583// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
7584// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
7585// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
7586// PPC-DARWIN:#define __POINTER_WIDTH__ 32
7587// PPC-DARWIN:#define __POWERPC__ 1
7588// PPC-DARWIN:#define __PPC__ 1
7589// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
7590// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
7591// PPC-DARWIN:#define __REGISTER_PREFIX__
7592// PPC-DARWIN:#define __SCHAR_MAX__ 127
7593// PPC-DARWIN:#define __SHRT_MAX__ 32767
7594// PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
7595// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
7596// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
7597// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
7598// PPC-DARWIN:#define __SIZEOF_INT__ 4
7599// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
7600// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
7601// PPC-DARWIN:#define __SIZEOF_LONG__ 4
7602// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
7603// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
7604// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
7605// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
7606// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
7607// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
7608// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
7609// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
7610// PPC-DARWIN:#define __SIZE_WIDTH__ 32
7611// PPC-DARWIN:#define __STDC_HOSTED__ 0
7612// PPC-DARWIN:#define __STDC_VERSION__ 201112L
7613// PPC-DARWIN:#define __STDC__ 1
7614// PPC-DARWIN:#define __UINT16_C_SUFFIX__
7615// PPC-DARWIN:#define __UINT16_MAX__ 65535
7616// PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
7617// PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
7618// PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
7619// PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
7620// PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
7621// PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
7622// PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
7623// PPC-DARWIN:#define __UINT8_C_SUFFIX__
7624// PPC-DARWIN:#define __UINT8_MAX__ 255
7625// PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
7626// PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
7627// PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
7628// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
7629// PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
7630// PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
7631// PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
7632// PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
7633// PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
7634// PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
7635// PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
7636// PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
7637// PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7638// PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
7639// PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
7640// PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
7641// PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
7642// PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
7643// PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
7644// PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
7645// PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7646// PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
7647// PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
7648// PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
7649// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
7650// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
7651// PPC-DARWIN:#define __WCHAR_TYPE__ int
7652// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
7653// PPC-DARWIN:#define __WINT_TYPE__ int
7654// PPC-DARWIN:#define __WINT_WIDTH__ 32
7655// PPC-DARWIN:#define __powerpc__ 1
7656// PPC-DARWIN:#define __ppc__ 1
7657
7658// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-DARWIN %s
7659// PPC64-DARWIN:#define __STRUCT_PARM_ALIGN__ 16
7660
7661// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
7662// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=r600 -target-cpu caicos < /dev/null | FileCheck -match-full-lines --check-prefix AMDGPU %s
7663//
7664// AMDGPU:#define __ENDIAN_LITTLE__ 1
7665// AMDGPU:#define cl_khr_byte_addressable_store 1
7666// AMDGCN:#define cl_khr_fp64 1
7667// AMDGPU:#define cl_khr_global_int32_base_atomics 1
7668// AMDGPU:#define cl_khr_global_int32_extended_atomics 1
7669// AMDGPU:#define cl_khr_local_int32_base_atomics 1
7670// AMDGPU:#define cl_khr_local_int32_extended_atomics 1
7671
7672// RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix S390X %s
7673// 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
7674//
7675// S390X:#define __BIGGEST_ALIGNMENT__ 8
7676// S390X:#define __CHAR16_TYPE__ unsigned short
7677// S390X:#define __CHAR32_TYPE__ unsigned int
7678// S390X:#define __CHAR_BIT__ 8
7679// S390X:#define __CHAR_UNSIGNED__ 1
7680// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7681// S390X:#define __DBL_DIG__ 15
7682// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
7683// S390X:#define __DBL_HAS_DENORM__ 1
7684// S390X:#define __DBL_HAS_INFINITY__ 1
7685// S390X:#define __DBL_HAS_QUIET_NAN__ 1
7686// S390X:#define __DBL_MANT_DIG__ 53
7687// S390X:#define __DBL_MAX_10_EXP__ 308
7688// S390X:#define __DBL_MAX_EXP__ 1024
7689// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
7690// S390X:#define __DBL_MIN_10_EXP__ (-307)
7691// S390X:#define __DBL_MIN_EXP__ (-1021)
7692// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
7693// S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7694// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7695// S390X:#define __FLT_DIG__ 6
7696// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
7697// S390X:#define __FLT_EVAL_METHOD__ 0
7698// S390X:#define __FLT_HAS_DENORM__ 1
7699// S390X:#define __FLT_HAS_INFINITY__ 1
7700// S390X:#define __FLT_HAS_QUIET_NAN__ 1
7701// S390X:#define __FLT_MANT_DIG__ 24
7702// S390X:#define __FLT_MAX_10_EXP__ 38
7703// S390X:#define __FLT_MAX_EXP__ 128
7704// S390X:#define __FLT_MAX__ 3.40282347e+38F
7705// S390X:#define __FLT_MIN_10_EXP__ (-37)
7706// S390X:#define __FLT_MIN_EXP__ (-125)
7707// S390X:#define __FLT_MIN__ 1.17549435e-38F
7708// S390X:#define __FLT_RADIX__ 2
7709// S390X:#define __INT16_C_SUFFIX__
7710// S390X:#define __INT16_FMTd__ "hd"
7711// S390X:#define __INT16_FMTi__ "hi"
7712// S390X:#define __INT16_MAX__ 32767
7713// S390X:#define __INT16_TYPE__ short
7714// S390X:#define __INT32_C_SUFFIX__
7715// S390X:#define __INT32_FMTd__ "d"
7716// S390X:#define __INT32_FMTi__ "i"
7717// S390X:#define __INT32_MAX__ 2147483647
7718// S390X:#define __INT32_TYPE__ int
7719// S390X:#define __INT64_C_SUFFIX__ L
7720// S390X:#define __INT64_FMTd__ "ld"
7721// S390X:#define __INT64_FMTi__ "li"
7722// S390X:#define __INT64_MAX__ 9223372036854775807L
7723// S390X:#define __INT64_TYPE__ long int
7724// S390X:#define __INT8_C_SUFFIX__
7725// S390X:#define __INT8_FMTd__ "hhd"
7726// S390X:#define __INT8_FMTi__ "hhi"
7727// S390X:#define __INT8_MAX__ 127
7728// S390X:#define __INT8_TYPE__ signed char
7729// S390X:#define __INTMAX_C_SUFFIX__ L
7730// S390X:#define __INTMAX_FMTd__ "ld"
7731// S390X:#define __INTMAX_FMTi__ "li"
7732// S390X:#define __INTMAX_MAX__ 9223372036854775807L
7733// S390X:#define __INTMAX_TYPE__ long int
7734// S390X:#define __INTMAX_WIDTH__ 64
7735// S390X:#define __INTPTR_FMTd__ "ld"
7736// S390X:#define __INTPTR_FMTi__ "li"
7737// S390X:#define __INTPTR_MAX__ 9223372036854775807L
7738// S390X:#define __INTPTR_TYPE__ long int
7739// S390X:#define __INTPTR_WIDTH__ 64
7740// S390X:#define __INT_FAST16_FMTd__ "hd"
7741// S390X:#define __INT_FAST16_FMTi__ "hi"
7742// S390X:#define __INT_FAST16_MAX__ 32767
7743// S390X:#define __INT_FAST16_TYPE__ short
7744// S390X:#define __INT_FAST32_FMTd__ "d"
7745// S390X:#define __INT_FAST32_FMTi__ "i"
7746// S390X:#define __INT_FAST32_MAX__ 2147483647
7747// S390X:#define __INT_FAST32_TYPE__ int
7748// S390X:#define __INT_FAST64_FMTd__ "ld"
7749// S390X:#define __INT_FAST64_FMTi__ "li"
7750// S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
7751// S390X:#define __INT_FAST64_TYPE__ long int
7752// S390X:#define __INT_FAST8_FMTd__ "hhd"
7753// S390X:#define __INT_FAST8_FMTi__ "hhi"
7754// S390X:#define __INT_FAST8_MAX__ 127
7755// S390X:#define __INT_FAST8_TYPE__ signed char
7756// S390X:#define __INT_LEAST16_FMTd__ "hd"
7757// S390X:#define __INT_LEAST16_FMTi__ "hi"
7758// S390X:#define __INT_LEAST16_MAX__ 32767
7759// S390X:#define __INT_LEAST16_TYPE__ short
7760// S390X:#define __INT_LEAST32_FMTd__ "d"
7761// S390X:#define __INT_LEAST32_FMTi__ "i"
7762// S390X:#define __INT_LEAST32_MAX__ 2147483647
7763// S390X:#define __INT_LEAST32_TYPE__ int
7764// S390X:#define __INT_LEAST64_FMTd__ "ld"
7765// S390X:#define __INT_LEAST64_FMTi__ "li"
7766// S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
7767// S390X:#define __INT_LEAST64_TYPE__ long int
7768// S390X:#define __INT_LEAST8_FMTd__ "hhd"
7769// S390X:#define __INT_LEAST8_FMTi__ "hhi"
7770// S390X:#define __INT_LEAST8_MAX__ 127
7771// S390X:#define __INT_LEAST8_TYPE__ signed char
7772// S390X:#define __INT_MAX__ 2147483647
7773// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
7774// S390X:#define __LDBL_DIG__ 33
7775// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
7776// S390X:#define __LDBL_HAS_DENORM__ 1
7777// S390X:#define __LDBL_HAS_INFINITY__ 1
7778// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
7779// S390X:#define __LDBL_MANT_DIG__ 113
7780// S390X:#define __LDBL_MAX_10_EXP__ 4932
7781// S390X:#define __LDBL_MAX_EXP__ 16384
7782// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
7783// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
7784// S390X:#define __LDBL_MIN_EXP__ (-16381)
7785// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
7786// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
7787// S390X:#define __LONG_MAX__ 9223372036854775807L
7788// S390X:#define __NO_INLINE__ 1
7789// S390X:#define __POINTER_WIDTH__ 64
7790// S390X:#define __PTRDIFF_TYPE__ long int
7791// S390X:#define __PTRDIFF_WIDTH__ 64
7792// S390X:#define __SCHAR_MAX__ 127
7793// S390X:#define __SHRT_MAX__ 32767
7794// S390X:#define __SIG_ATOMIC_MAX__ 2147483647
7795// S390X:#define __SIG_ATOMIC_WIDTH__ 32
7796// S390X:#define __SIZEOF_DOUBLE__ 8
7797// S390X:#define __SIZEOF_FLOAT__ 4
7798// S390X:#define __SIZEOF_INT__ 4
7799// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
7800// S390X:#define __SIZEOF_LONG_LONG__ 8
7801// S390X:#define __SIZEOF_LONG__ 8
7802// S390X:#define __SIZEOF_POINTER__ 8
7803// S390X:#define __SIZEOF_PTRDIFF_T__ 8
7804// S390X:#define __SIZEOF_SHORT__ 2
7805// S390X:#define __SIZEOF_SIZE_T__ 8
7806// S390X:#define __SIZEOF_WCHAR_T__ 4
7807// S390X:#define __SIZEOF_WINT_T__ 4
7808// S390X:#define __SIZE_TYPE__ long unsigned int
7809// S390X:#define __SIZE_WIDTH__ 64
7810// S390X-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
7811// S390X:#define __UINT16_C_SUFFIX__
7812// S390X:#define __UINT16_MAX__ 65535
7813// S390X:#define __UINT16_TYPE__ unsigned short
7814// S390X:#define __UINT32_C_SUFFIX__ U
7815// S390X:#define __UINT32_MAX__ 4294967295U
7816// S390X:#define __UINT32_TYPE__ unsigned int
7817// S390X:#define __UINT64_C_SUFFIX__ UL
7818// S390X:#define __UINT64_MAX__ 18446744073709551615UL
7819// S390X:#define __UINT64_TYPE__ long unsigned int
7820// S390X:#define __UINT8_C_SUFFIX__
7821// S390X:#define __UINT8_MAX__ 255
7822// S390X:#define __UINT8_TYPE__ unsigned char
7823// S390X:#define __UINTMAX_C_SUFFIX__ UL
7824// S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
7825// S390X:#define __UINTMAX_TYPE__ long unsigned int
7826// S390X:#define __UINTMAX_WIDTH__ 64
7827// S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
7828// S390X:#define __UINTPTR_TYPE__ long unsigned int
7829// S390X:#define __UINTPTR_WIDTH__ 64
7830// S390X:#define __UINT_FAST16_MAX__ 65535
7831// S390X:#define __UINT_FAST16_TYPE__ unsigned short
7832// S390X:#define __UINT_FAST32_MAX__ 4294967295U
7833// S390X:#define __UINT_FAST32_TYPE__ unsigned int
7834// S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7835// S390X:#define __UINT_FAST64_TYPE__ long unsigned int
7836// S390X:#define __UINT_FAST8_MAX__ 255
7837// S390X:#define __UINT_FAST8_TYPE__ unsigned char
7838// S390X:#define __UINT_LEAST16_MAX__ 65535
7839// S390X:#define __UINT_LEAST16_TYPE__ unsigned short
7840// S390X:#define __UINT_LEAST32_MAX__ 4294967295U
7841// S390X:#define __UINT_LEAST32_TYPE__ unsigned int
7842// S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7843// S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
7844// S390X:#define __UINT_LEAST8_MAX__ 255
7845// S390X:#define __UINT_LEAST8_TYPE__ unsigned char
7846// S390X:#define __USER_LABEL_PREFIX__
7847// S390X:#define __WCHAR_MAX__ 2147483647
7848// S390X:#define __WCHAR_TYPE__ int
7849// S390X:#define __WCHAR_WIDTH__ 32
7850// S390X:#define __WINT_TYPE__ int
7851// S390X:#define __WINT_WIDTH__ 32
7852// S390X:#define __s390__ 1
7853// S390X:#define __s390x__ 1
7854//
7855// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7856// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7857// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
7858// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
7859// 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
7860// 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
7861//
7862// SPARC-NOT:#define _LP64
7863// SPARC:#define __BIGGEST_ALIGNMENT__ 8
7864// SPARC:#define __BIG_ENDIAN__ 1
7865// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
7866// SPARC:#define __CHAR16_TYPE__ unsigned short
7867// SPARC:#define __CHAR32_TYPE__ unsigned int
7868// SPARC:#define __CHAR_BIT__ 8
7869// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7870// SPARC:#define __DBL_DIG__ 15
7871// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
7872// SPARC:#define __DBL_HAS_DENORM__ 1
7873// SPARC:#define __DBL_HAS_INFINITY__ 1
7874// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
7875// SPARC:#define __DBL_MANT_DIG__ 53
7876// SPARC:#define __DBL_MAX_10_EXP__ 308
7877// SPARC:#define __DBL_MAX_EXP__ 1024
7878// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
7879// SPARC:#define __DBL_MIN_10_EXP__ (-307)
7880// SPARC:#define __DBL_MIN_EXP__ (-1021)
7881// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
7882// SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7883// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7884// SPARC:#define __FLT_DIG__ 6
7885// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
7886// SPARC:#define __FLT_EVAL_METHOD__ 0
7887// SPARC:#define __FLT_HAS_DENORM__ 1
7888// SPARC:#define __FLT_HAS_INFINITY__ 1
7889// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
7890// SPARC:#define __FLT_MANT_DIG__ 24
7891// SPARC:#define __FLT_MAX_10_EXP__ 38
7892// SPARC:#define __FLT_MAX_EXP__ 128
7893// SPARC:#define __FLT_MAX__ 3.40282347e+38F
7894// SPARC:#define __FLT_MIN_10_EXP__ (-37)
7895// SPARC:#define __FLT_MIN_EXP__ (-125)
7896// SPARC:#define __FLT_MIN__ 1.17549435e-38F
7897// SPARC:#define __FLT_RADIX__ 2
7898// SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
7899// SPARC:#define __INT16_C_SUFFIX__
7900// SPARC:#define __INT16_FMTd__ "hd"
7901// SPARC:#define __INT16_FMTi__ "hi"
7902// SPARC:#define __INT16_MAX__ 32767
7903// SPARC:#define __INT16_TYPE__ short
7904// SPARC:#define __INT32_C_SUFFIX__
7905// SPARC:#define __INT32_FMTd__ "d"
7906// SPARC:#define __INT32_FMTi__ "i"
7907// SPARC:#define __INT32_MAX__ 2147483647
7908// SPARC:#define __INT32_TYPE__ int
7909// SPARC:#define __INT64_C_SUFFIX__ LL
7910// SPARC:#define __INT64_FMTd__ "lld"
7911// SPARC:#define __INT64_FMTi__ "lli"
7912// SPARC:#define __INT64_MAX__ 9223372036854775807LL
7913// SPARC:#define __INT64_TYPE__ long long int
7914// SPARC:#define __INT8_C_SUFFIX__
7915// SPARC:#define __INT8_FMTd__ "hhd"
7916// SPARC:#define __INT8_FMTi__ "hhi"
7917// SPARC:#define __INT8_MAX__ 127
7918// SPARC:#define __INT8_TYPE__ signed char
7919// SPARC:#define __INTMAX_C_SUFFIX__ LL
7920// SPARC:#define __INTMAX_FMTd__ "lld"
7921// SPARC:#define __INTMAX_FMTi__ "lli"
7922// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
7923// SPARC:#define __INTMAX_TYPE__ long long int
7924// SPARC:#define __INTMAX_WIDTH__ 64
7925// SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
7926// SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
7927// SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
7928// SPARC-DEFAULT:#define __INTPTR_TYPE__ int
7929// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
7930// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
7931// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
7932// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
7933// SPARC:#define __INTPTR_WIDTH__ 32
7934// SPARC:#define __INT_FAST16_FMTd__ "hd"
7935// SPARC:#define __INT_FAST16_FMTi__ "hi"
7936// SPARC:#define __INT_FAST16_MAX__ 32767
7937// SPARC:#define __INT_FAST16_TYPE__ short
7938// SPARC:#define __INT_FAST32_FMTd__ "d"
7939// SPARC:#define __INT_FAST32_FMTi__ "i"
7940// SPARC:#define __INT_FAST32_MAX__ 2147483647
7941// SPARC:#define __INT_FAST32_TYPE__ int
7942// SPARC:#define __INT_FAST64_FMTd__ "lld"
7943// SPARC:#define __INT_FAST64_FMTi__ "lli"
7944// SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
7945// SPARC:#define __INT_FAST64_TYPE__ long long int
7946// SPARC:#define __INT_FAST8_FMTd__ "hhd"
7947// SPARC:#define __INT_FAST8_FMTi__ "hhi"
7948// SPARC:#define __INT_FAST8_MAX__ 127
7949// SPARC:#define __INT_FAST8_TYPE__ signed char
7950// SPARC:#define __INT_LEAST16_FMTd__ "hd"
7951// SPARC:#define __INT_LEAST16_FMTi__ "hi"
7952// SPARC:#define __INT_LEAST16_MAX__ 32767
7953// SPARC:#define __INT_LEAST16_TYPE__ short
7954// SPARC:#define __INT_LEAST32_FMTd__ "d"
7955// SPARC:#define __INT_LEAST32_FMTi__ "i"
7956// SPARC:#define __INT_LEAST32_MAX__ 2147483647
7957// SPARC:#define __INT_LEAST32_TYPE__ int
7958// SPARC:#define __INT_LEAST64_FMTd__ "lld"
7959// SPARC:#define __INT_LEAST64_FMTi__ "lli"
7960// SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7961// SPARC:#define __INT_LEAST64_TYPE__ long long int
7962// SPARC:#define __INT_LEAST8_FMTd__ "hhd"
7963// SPARC:#define __INT_LEAST8_FMTi__ "hhi"
7964// SPARC:#define __INT_LEAST8_MAX__ 127
7965// SPARC:#define __INT_LEAST8_TYPE__ signed char
7966// SPARC:#define __INT_MAX__ 2147483647
7967// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
7968// SPARC:#define __LDBL_DIG__ 15
7969// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
7970// SPARC:#define __LDBL_HAS_DENORM__ 1
7971// SPARC:#define __LDBL_HAS_INFINITY__ 1
7972// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
7973// SPARC:#define __LDBL_MANT_DIG__ 53
7974// SPARC:#define __LDBL_MAX_10_EXP__ 308
7975// SPARC:#define __LDBL_MAX_EXP__ 1024
7976// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
7977// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
7978// SPARC:#define __LDBL_MIN_EXP__ (-1021)
7979// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
7980// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
7981// SPARC:#define __LONG_MAX__ 2147483647L
7982// SPARC-NOT:#define __LP64__
7983// SPARC:#define __POINTER_WIDTH__ 32
7984// SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
7985// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
7986// SPARC:#define __PTRDIFF_WIDTH__ 32
7987// SPARC:#define __REGISTER_PREFIX__
7988// SPARC:#define __SCHAR_MAX__ 127
7989// SPARC:#define __SHRT_MAX__ 32767
7990// SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
7991// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
7992// SPARC:#define __SIZEOF_DOUBLE__ 8
7993// SPARC:#define __SIZEOF_FLOAT__ 4
7994// SPARC:#define __SIZEOF_INT__ 4
7995// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
7996// SPARC:#define __SIZEOF_LONG_LONG__ 8
7997// SPARC:#define __SIZEOF_LONG__ 4
7998// SPARC:#define __SIZEOF_POINTER__ 4
7999// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
8000// SPARC:#define __SIZEOF_SHORT__ 2
8001// SPARC:#define __SIZEOF_SIZE_T__ 4
8002// SPARC:#define __SIZEOF_WCHAR_T__ 4
8003// SPARC:#define __SIZEOF_WINT_T__ 4
8004// SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
8005// SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
8006// SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
8007// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
8008// SPARC:#define __SIZE_WIDTH__ 32
8009// SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
8010// SPARC-NETOPENBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
8011// SPARC:#define __UINT16_C_SUFFIX__
8012// SPARC:#define __UINT16_MAX__ 65535
8013// SPARC:#define __UINT16_TYPE__ unsigned short
8014// SPARC:#define __UINT32_C_SUFFIX__ U
8015// SPARC:#define __UINT32_MAX__ 4294967295U
8016// SPARC:#define __UINT32_TYPE__ unsigned int
8017// SPARC:#define __UINT64_C_SUFFIX__ ULL
8018// SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
8019// SPARC:#define __UINT64_TYPE__ long long unsigned int
8020// SPARC:#define __UINT8_C_SUFFIX__
8021// SPARC:#define __UINT8_MAX__ 255
8022// SPARC:#define __UINT8_TYPE__ unsigned char
8023// SPARC:#define __UINTMAX_C_SUFFIX__ ULL
8024// SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
8025// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
8026// SPARC:#define __UINTMAX_WIDTH__ 64
8027// SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
8028// SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
8029// SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
8030// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
8031// SPARC:#define __UINTPTR_WIDTH__ 32
8032// SPARC:#define __UINT_FAST16_MAX__ 65535
8033// SPARC:#define __UINT_FAST16_TYPE__ unsigned short
8034// SPARC:#define __UINT_FAST32_MAX__ 4294967295U
8035// SPARC:#define __UINT_FAST32_TYPE__ unsigned int
8036// SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8037// SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
8038// SPARC:#define __UINT_FAST8_MAX__ 255
8039// SPARC:#define __UINT_FAST8_TYPE__ unsigned char
8040// SPARC:#define __UINT_LEAST16_MAX__ 65535
8041// SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
8042// SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
8043// SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
8044// SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8045// SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
8046// SPARC:#define __UINT_LEAST8_MAX__ 255
8047// SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
8048// SPARC:#define __USER_LABEL_PREFIX__
8049// SPARC:#define __VERSION__ "4.2.1 Compatible{{.*}}
8050// SPARC:#define __WCHAR_MAX__ 2147483647
8051// SPARC:#define __WCHAR_TYPE__ int
8052// SPARC:#define __WCHAR_WIDTH__ 32
8053// SPARC:#define __WINT_TYPE__ int
8054// SPARC:#define __WINT_WIDTH__ 32
8055// SPARC:#define __sparc 1
8056// SPARC:#define __sparc__ 1
8057// SPARC:#define __sparcv8 1
8058// SPARC:#define sparc 1
8059
8060// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE %s
8061// 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
8062//
8063// TCE-NOT:#define _LP64
8064// TCE:#define __BIGGEST_ALIGNMENT__ 4
8065// TCE:#define __BIG_ENDIAN__ 1
8066// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
8067// TCE:#define __CHAR16_TYPE__ unsigned short
8068// TCE:#define __CHAR32_TYPE__ unsigned int
8069// TCE:#define __CHAR_BIT__ 8
8070// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
8071// TCE:#define __DBL_DIG__ 6
8072// TCE:#define __DBL_EPSILON__ 1.19209290e-7
8073// TCE:#define __DBL_HAS_DENORM__ 1
8074// TCE:#define __DBL_HAS_INFINITY__ 1
8075// TCE:#define __DBL_HAS_QUIET_NAN__ 1
8076// TCE:#define __DBL_MANT_DIG__ 24
8077// TCE:#define __DBL_MAX_10_EXP__ 38
8078// TCE:#define __DBL_MAX_EXP__ 128
8079// TCE:#define __DBL_MAX__ 3.40282347e+38
8080// TCE:#define __DBL_MIN_10_EXP__ (-37)
8081// TCE:#define __DBL_MIN_EXP__ (-125)
8082// TCE:#define __DBL_MIN__ 1.17549435e-38
8083// TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8084// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8085// TCE:#define __FLT_DIG__ 6
8086// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
8087// TCE:#define __FLT_EVAL_METHOD__ 0
8088// TCE:#define __FLT_HAS_DENORM__ 1
8089// TCE:#define __FLT_HAS_INFINITY__ 1
8090// TCE:#define __FLT_HAS_QUIET_NAN__ 1
8091// TCE:#define __FLT_MANT_DIG__ 24
8092// TCE:#define __FLT_MAX_10_EXP__ 38
8093// TCE:#define __FLT_MAX_EXP__ 128
8094// TCE:#define __FLT_MAX__ 3.40282347e+38F
8095// TCE:#define __FLT_MIN_10_EXP__ (-37)
8096// TCE:#define __FLT_MIN_EXP__ (-125)
8097// TCE:#define __FLT_MIN__ 1.17549435e-38F
8098// TCE:#define __FLT_RADIX__ 2
8099// TCE:#define __INT16_C_SUFFIX__
8100// TCE:#define __INT16_FMTd__ "hd"
8101// TCE:#define __INT16_FMTi__ "hi"
8102// TCE:#define __INT16_MAX__ 32767
8103// TCE:#define __INT16_TYPE__ short
8104// TCE:#define __INT32_C_SUFFIX__
8105// TCE:#define __INT32_FMTd__ "d"
8106// TCE:#define __INT32_FMTi__ "i"
8107// TCE:#define __INT32_MAX__ 2147483647
8108// TCE:#define __INT32_TYPE__ int
8109// TCE:#define __INT8_C_SUFFIX__
8110// TCE:#define __INT8_FMTd__ "hhd"
8111// TCE:#define __INT8_FMTi__ "hhi"
8112// TCE:#define __INT8_MAX__ 127
8113// TCE:#define __INT8_TYPE__ signed char
8114// TCE:#define __INTMAX_C_SUFFIX__ L
8115// TCE:#define __INTMAX_FMTd__ "ld"
8116// TCE:#define __INTMAX_FMTi__ "li"
8117// TCE:#define __INTMAX_MAX__ 2147483647L
8118// TCE:#define __INTMAX_TYPE__ long int
8119// TCE:#define __INTMAX_WIDTH__ 32
8120// TCE:#define __INTPTR_FMTd__ "d"
8121// TCE:#define __INTPTR_FMTi__ "i"
8122// TCE:#define __INTPTR_MAX__ 2147483647
8123// TCE:#define __INTPTR_TYPE__ int
8124// TCE:#define __INTPTR_WIDTH__ 32
8125// TCE:#define __INT_FAST16_FMTd__ "hd"
8126// TCE:#define __INT_FAST16_FMTi__ "hi"
8127// TCE:#define __INT_FAST16_MAX__ 32767
8128// TCE:#define __INT_FAST16_TYPE__ short
8129// TCE:#define __INT_FAST32_FMTd__ "d"
8130// TCE:#define __INT_FAST32_FMTi__ "i"
8131// TCE:#define __INT_FAST32_MAX__ 2147483647
8132// TCE:#define __INT_FAST32_TYPE__ int
8133// TCE:#define __INT_FAST8_FMTd__ "hhd"
8134// TCE:#define __INT_FAST8_FMTi__ "hhi"
8135// TCE:#define __INT_FAST8_MAX__ 127
8136// TCE:#define __INT_FAST8_TYPE__ signed char
8137// TCE:#define __INT_LEAST16_FMTd__ "hd"
8138// TCE:#define __INT_LEAST16_FMTi__ "hi"
8139// TCE:#define __INT_LEAST16_MAX__ 32767
8140// TCE:#define __INT_LEAST16_TYPE__ short
8141// TCE:#define __INT_LEAST32_FMTd__ "d"
8142// TCE:#define __INT_LEAST32_FMTi__ "i"
8143// TCE:#define __INT_LEAST32_MAX__ 2147483647
8144// TCE:#define __INT_LEAST32_TYPE__ int
8145// TCE:#define __INT_LEAST8_FMTd__ "hhd"
8146// TCE:#define __INT_LEAST8_FMTi__ "hhi"
8147// TCE:#define __INT_LEAST8_MAX__ 127
8148// TCE:#define __INT_LEAST8_TYPE__ signed char
8149// TCE:#define __INT_MAX__ 2147483647
8150// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
8151// TCE:#define __LDBL_DIG__ 6
8152// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
8153// TCE:#define __LDBL_HAS_DENORM__ 1
8154// TCE:#define __LDBL_HAS_INFINITY__ 1
8155// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
8156// TCE:#define __LDBL_MANT_DIG__ 24
8157// TCE:#define __LDBL_MAX_10_EXP__ 38
8158// TCE:#define __LDBL_MAX_EXP__ 128
8159// TCE:#define __LDBL_MAX__ 3.40282347e+38L
8160// TCE:#define __LDBL_MIN_10_EXP__ (-37)
8161// TCE:#define __LDBL_MIN_EXP__ (-125)
8162// TCE:#define __LDBL_MIN__ 1.17549435e-38L
8163// TCE:#define __LONG_LONG_MAX__ 2147483647LL
8164// TCE:#define __LONG_MAX__ 2147483647L
8165// TCE-NOT:#define __LP64__
8166// TCE:#define __POINTER_WIDTH__ 32
8167// TCE:#define __PTRDIFF_TYPE__ int
8168// TCE:#define __PTRDIFF_WIDTH__ 32
8169// TCE:#define __SCHAR_MAX__ 127
8170// TCE:#define __SHRT_MAX__ 32767
8171// TCE:#define __SIG_ATOMIC_MAX__ 2147483647
8172// TCE:#define __SIG_ATOMIC_WIDTH__ 32
8173// TCE:#define __SIZEOF_DOUBLE__ 4
8174// TCE:#define __SIZEOF_FLOAT__ 4
8175// TCE:#define __SIZEOF_INT__ 4
8176// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
8177// TCE:#define __SIZEOF_LONG_LONG__ 4
8178// TCE:#define __SIZEOF_LONG__ 4
8179// TCE:#define __SIZEOF_POINTER__ 4
8180// TCE:#define __SIZEOF_PTRDIFF_T__ 4
8181// TCE:#define __SIZEOF_SHORT__ 2
8182// TCE:#define __SIZEOF_SIZE_T__ 4
8183// TCE:#define __SIZEOF_WCHAR_T__ 4
8184// TCE:#define __SIZEOF_WINT_T__ 4
8185// TCE:#define __SIZE_MAX__ 4294967295U
8186// TCE:#define __SIZE_TYPE__ unsigned int
8187// TCE:#define __SIZE_WIDTH__ 32
8188// TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
8189// TCE:#define __TCE_V1__ 1
8190// TCE:#define __TCE__ 1
8191// TCE:#define __UINT16_C_SUFFIX__
8192// TCE:#define __UINT16_MAX__ 65535
8193// TCE:#define __UINT16_TYPE__ unsigned short
8194// TCE:#define __UINT32_C_SUFFIX__ U
8195// TCE:#define __UINT32_MAX__ 4294967295U
8196// TCE:#define __UINT32_TYPE__ unsigned int
8197// TCE:#define __UINT8_C_SUFFIX__
8198// TCE:#define __UINT8_MAX__ 255
8199// TCE:#define __UINT8_TYPE__ unsigned char
8200// TCE:#define __UINTMAX_C_SUFFIX__ UL
8201// TCE:#define __UINTMAX_MAX__ 4294967295UL
8202// TCE:#define __UINTMAX_TYPE__ long unsigned int
8203// TCE:#define __UINTMAX_WIDTH__ 32
8204// TCE:#define __UINTPTR_MAX__ 4294967295U
8205// TCE:#define __UINTPTR_TYPE__ unsigned int
8206// TCE:#define __UINTPTR_WIDTH__ 32
8207// TCE:#define __UINT_FAST16_MAX__ 65535
8208// TCE:#define __UINT_FAST16_TYPE__ unsigned short
8209// TCE:#define __UINT_FAST32_MAX__ 4294967295U
8210// TCE:#define __UINT_FAST32_TYPE__ unsigned int
8211// TCE:#define __UINT_FAST8_MAX__ 255
8212// TCE:#define __UINT_FAST8_TYPE__ unsigned char
8213// TCE:#define __UINT_LEAST16_MAX__ 65535
8214// TCE:#define __UINT_LEAST16_TYPE__ unsigned short
8215// TCE:#define __UINT_LEAST32_MAX__ 4294967295U
8216// TCE:#define __UINT_LEAST32_TYPE__ unsigned int
8217// TCE:#define __UINT_LEAST8_MAX__ 255
8218// TCE:#define __UINT_LEAST8_TYPE__ unsigned char
8219// TCE:#define __USER_LABEL_PREFIX__
8220// TCE:#define __WCHAR_MAX__ 2147483647
8221// TCE:#define __WCHAR_TYPE__ int
8222// TCE:#define __WCHAR_WIDTH__ 32
8223// TCE:#define __WINT_TYPE__ int
8224// TCE:#define __WINT_WIDTH__ 32
8225// TCE:#define __tce 1
8226// TCE:#define __tce__ 1
8227// TCE:#define tce 1
8228//
8229// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64 %s
8230// 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
8231//
8232// X86_64:#define _LP64 1
8233// X86_64-NOT:#define _LP32 1
8234// X86_64:#define __BIGGEST_ALIGNMENT__ 16
8235// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8236// X86_64:#define __CHAR16_TYPE__ unsigned short
8237// X86_64:#define __CHAR32_TYPE__ unsigned int
8238// X86_64:#define __CHAR_BIT__ 8
8239// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8240// X86_64:#define __DBL_DIG__ 15
8241// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
8242// X86_64:#define __DBL_HAS_DENORM__ 1
8243// X86_64:#define __DBL_HAS_INFINITY__ 1
8244// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
8245// X86_64:#define __DBL_MANT_DIG__ 53
8246// X86_64:#define __DBL_MAX_10_EXP__ 308
8247// X86_64:#define __DBL_MAX_EXP__ 1024
8248// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
8249// X86_64:#define __DBL_MIN_10_EXP__ (-307)
8250// X86_64:#define __DBL_MIN_EXP__ (-1021)
8251// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
8252// X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8253// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8254// X86_64:#define __FLT_DIG__ 6
8255// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
8256// X86_64:#define __FLT_EVAL_METHOD__ 0
8257// X86_64:#define __FLT_HAS_DENORM__ 1
8258// X86_64:#define __FLT_HAS_INFINITY__ 1
8259// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
8260// X86_64:#define __FLT_MANT_DIG__ 24
8261// X86_64:#define __FLT_MAX_10_EXP__ 38
8262// X86_64:#define __FLT_MAX_EXP__ 128
8263// X86_64:#define __FLT_MAX__ 3.40282347e+38F
8264// X86_64:#define __FLT_MIN_10_EXP__ (-37)
8265// X86_64:#define __FLT_MIN_EXP__ (-125)
8266// X86_64:#define __FLT_MIN__ 1.17549435e-38F
8267// X86_64:#define __FLT_RADIX__ 2
8268// X86_64:#define __INT16_C_SUFFIX__
8269// X86_64:#define __INT16_FMTd__ "hd"
8270// X86_64:#define __INT16_FMTi__ "hi"
8271// X86_64:#define __INT16_MAX__ 32767
8272// X86_64:#define __INT16_TYPE__ short
8273// X86_64:#define __INT32_C_SUFFIX__
8274// X86_64:#define __INT32_FMTd__ "d"
8275// X86_64:#define __INT32_FMTi__ "i"
8276// X86_64:#define __INT32_MAX__ 2147483647
8277// X86_64:#define __INT32_TYPE__ int
8278// X86_64:#define __INT64_C_SUFFIX__ L
8279// X86_64:#define __INT64_FMTd__ "ld"
8280// X86_64:#define __INT64_FMTi__ "li"
8281// X86_64:#define __INT64_MAX__ 9223372036854775807L
8282// X86_64:#define __INT64_TYPE__ long int
8283// X86_64:#define __INT8_C_SUFFIX__
8284// X86_64:#define __INT8_FMTd__ "hhd"
8285// X86_64:#define __INT8_FMTi__ "hhi"
8286// X86_64:#define __INT8_MAX__ 127
8287// X86_64:#define __INT8_TYPE__ signed char
8288// X86_64:#define __INTMAX_C_SUFFIX__ L
8289// X86_64:#define __INTMAX_FMTd__ "ld"
8290// X86_64:#define __INTMAX_FMTi__ "li"
8291// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
8292// X86_64:#define __INTMAX_TYPE__ long int
8293// X86_64:#define __INTMAX_WIDTH__ 64
8294// X86_64:#define __INTPTR_FMTd__ "ld"
8295// X86_64:#define __INTPTR_FMTi__ "li"
8296// X86_64:#define __INTPTR_MAX__ 9223372036854775807L
8297// X86_64:#define __INTPTR_TYPE__ long int
8298// X86_64:#define __INTPTR_WIDTH__ 64
8299// X86_64:#define __INT_FAST16_FMTd__ "hd"
8300// X86_64:#define __INT_FAST16_FMTi__ "hi"
8301// X86_64:#define __INT_FAST16_MAX__ 32767
8302// X86_64:#define __INT_FAST16_TYPE__ short
8303// X86_64:#define __INT_FAST32_FMTd__ "d"
8304// X86_64:#define __INT_FAST32_FMTi__ "i"
8305// X86_64:#define __INT_FAST32_MAX__ 2147483647
8306// X86_64:#define __INT_FAST32_TYPE__ int
8307// X86_64:#define __INT_FAST64_FMTd__ "ld"
8308// X86_64:#define __INT_FAST64_FMTi__ "li"
8309// X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
8310// X86_64:#define __INT_FAST64_TYPE__ long int
8311// X86_64:#define __INT_FAST8_FMTd__ "hhd"
8312// X86_64:#define __INT_FAST8_FMTi__ "hhi"
8313// X86_64:#define __INT_FAST8_MAX__ 127
8314// X86_64:#define __INT_FAST8_TYPE__ signed char
8315// X86_64:#define __INT_LEAST16_FMTd__ "hd"
8316// X86_64:#define __INT_LEAST16_FMTi__ "hi"
8317// X86_64:#define __INT_LEAST16_MAX__ 32767
8318// X86_64:#define __INT_LEAST16_TYPE__ short
8319// X86_64:#define __INT_LEAST32_FMTd__ "d"
8320// X86_64:#define __INT_LEAST32_FMTi__ "i"
8321// X86_64:#define __INT_LEAST32_MAX__ 2147483647
8322// X86_64:#define __INT_LEAST32_TYPE__ int
8323// X86_64:#define __INT_LEAST64_FMTd__ "ld"
8324// X86_64:#define __INT_LEAST64_FMTi__ "li"
8325// X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
8326// X86_64:#define __INT_LEAST64_TYPE__ long int
8327// X86_64:#define __INT_LEAST8_FMTd__ "hhd"
8328// X86_64:#define __INT_LEAST8_FMTi__ "hhi"
8329// X86_64:#define __INT_LEAST8_MAX__ 127
8330// X86_64:#define __INT_LEAST8_TYPE__ signed char
8331// X86_64:#define __INT_MAX__ 2147483647
8332// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8333// X86_64:#define __LDBL_DIG__ 18
8334// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8335// X86_64:#define __LDBL_HAS_DENORM__ 1
8336// X86_64:#define __LDBL_HAS_INFINITY__ 1
8337// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
8338// X86_64:#define __LDBL_MANT_DIG__ 64
8339// X86_64:#define __LDBL_MAX_10_EXP__ 4932
8340// X86_64:#define __LDBL_MAX_EXP__ 16384
8341// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8342// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
8343// X86_64:#define __LDBL_MIN_EXP__ (-16381)
8344// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8345// X86_64:#define __LITTLE_ENDIAN__ 1
8346// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
8347// X86_64:#define __LONG_MAX__ 9223372036854775807L
8348// X86_64:#define __LP64__ 1
8349// X86_64-NOT:#define __ILP32__ 1
8350// X86_64:#define __MMX__ 1
8351// X86_64:#define __NO_MATH_INLINES 1
8352// X86_64:#define __POINTER_WIDTH__ 64
8353// X86_64:#define __PTRDIFF_TYPE__ long int
8354// X86_64:#define __PTRDIFF_WIDTH__ 64
8355// X86_64:#define __REGISTER_PREFIX__
8356// X86_64:#define __SCHAR_MAX__ 127
8357// X86_64:#define __SHRT_MAX__ 32767
8358// X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
8359// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
8360// X86_64:#define __SIZEOF_DOUBLE__ 8
8361// X86_64:#define __SIZEOF_FLOAT__ 4
8362// X86_64:#define __SIZEOF_INT__ 4
8363// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
8364// X86_64:#define __SIZEOF_LONG_LONG__ 8
8365// X86_64:#define __SIZEOF_LONG__ 8
8366// X86_64:#define __SIZEOF_POINTER__ 8
8367// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
8368// X86_64:#define __SIZEOF_SHORT__ 2
8369// X86_64:#define __SIZEOF_SIZE_T__ 8
8370// X86_64:#define __SIZEOF_WCHAR_T__ 4
8371// X86_64:#define __SIZEOF_WINT_T__ 4
8372// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
8373// X86_64:#define __SIZE_TYPE__ long unsigned int
8374// X86_64:#define __SIZE_WIDTH__ 64
8375// X86_64:#define __SSE2_MATH__ 1
8376// X86_64:#define __SSE2__ 1
8377// X86_64:#define __SSE_MATH__ 1
8378// X86_64:#define __SSE__ 1
8379// X86_64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
8380// X86_64:#define __UINT16_C_SUFFIX__
8381// X86_64:#define __UINT16_MAX__ 65535
8382// X86_64:#define __UINT16_TYPE__ unsigned short
8383// X86_64:#define __UINT32_C_SUFFIX__ U
8384// X86_64:#define __UINT32_MAX__ 4294967295U
8385// X86_64:#define __UINT32_TYPE__ unsigned int
8386// X86_64:#define __UINT64_C_SUFFIX__ UL
8387// X86_64:#define __UINT64_MAX__ 18446744073709551615UL
8388// X86_64:#define __UINT64_TYPE__ long unsigned int
8389// X86_64:#define __UINT8_C_SUFFIX__
8390// X86_64:#define __UINT8_MAX__ 255
8391// X86_64:#define __UINT8_TYPE__ unsigned char
8392// X86_64:#define __UINTMAX_C_SUFFIX__ UL
8393// X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
8394// X86_64:#define __UINTMAX_TYPE__ long unsigned int
8395// X86_64:#define __UINTMAX_WIDTH__ 64
8396// X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
8397// X86_64:#define __UINTPTR_TYPE__ long unsigned int
8398// X86_64:#define __UINTPTR_WIDTH__ 64
8399// X86_64:#define __UINT_FAST16_MAX__ 65535
8400// X86_64:#define __UINT_FAST16_TYPE__ unsigned short
8401// X86_64:#define __UINT_FAST32_MAX__ 4294967295U
8402// X86_64:#define __UINT_FAST32_TYPE__ unsigned int
8403// X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8404// X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
8405// X86_64:#define __UINT_FAST8_MAX__ 255
8406// X86_64:#define __UINT_FAST8_TYPE__ unsigned char
8407// X86_64:#define __UINT_LEAST16_MAX__ 65535
8408// X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
8409// X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
8410// X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
8411// X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8412// X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
8413// X86_64:#define __UINT_LEAST8_MAX__ 255
8414// X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
8415// X86_64:#define __USER_LABEL_PREFIX__
8416// X86_64:#define __WCHAR_MAX__ 2147483647
8417// X86_64:#define __WCHAR_TYPE__ int
8418// X86_64:#define __WCHAR_WIDTH__ 32
8419// X86_64:#define __WINT_TYPE__ int
8420// X86_64:#define __WINT_WIDTH__ 32
8421// X86_64:#define __amd64 1
8422// X86_64:#define __amd64__ 1
8423// X86_64:#define __code_model_small_ 1
8424// X86_64:#define __x86_64 1
8425// X86_64:#define __x86_64__ 1
8426//
8427// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64h-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64H %s
8428//
8429// X86_64H:#define __x86_64 1
8430// X86_64H:#define __x86_64__ 1
8431// X86_64H:#define __x86_64h 1
8432// X86_64H:#define __x86_64h__ 1
8433//
8434// RUN: %clang -xc - -E -dM -mcmodel=medium --target=i386-unknown-linux < /dev/null | FileCheck -match-full-lines -check-prefix X86_MEDIUM %s
8435// X86_MEDIUM:#define __code_model_medium_ 1
8436//
8437// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none-gnux32 < /dev/null | FileCheck -match-full-lines -check-prefix X32 %s
8438// 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
8439//
8440// X32:#define _ILP32 1
8441// X32-NOT:#define _LP64 1
8442// X32:#define __BIGGEST_ALIGNMENT__ 16
8443// X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8444// X32:#define __CHAR16_TYPE__ unsigned short
8445// X32:#define __CHAR32_TYPE__ unsigned int
8446// X32:#define __CHAR_BIT__ 8
8447// X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8448// X32:#define __DBL_DIG__ 15
8449// X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
8450// X32:#define __DBL_HAS_DENORM__ 1
8451// X32:#define __DBL_HAS_INFINITY__ 1
8452// X32:#define __DBL_HAS_QUIET_NAN__ 1
8453// X32:#define __DBL_MANT_DIG__ 53
8454// X32:#define __DBL_MAX_10_EXP__ 308
8455// X32:#define __DBL_MAX_EXP__ 1024
8456// X32:#define __DBL_MAX__ 1.7976931348623157e+308
8457// X32:#define __DBL_MIN_10_EXP__ (-307)
8458// X32:#define __DBL_MIN_EXP__ (-1021)
8459// X32:#define __DBL_MIN__ 2.2250738585072014e-308
8460// X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8461// X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8462// X32:#define __FLT_DIG__ 6
8463// X32:#define __FLT_EPSILON__ 1.19209290e-7F
8464// X32:#define __FLT_EVAL_METHOD__ 0
8465// X32:#define __FLT_HAS_DENORM__ 1
8466// X32:#define __FLT_HAS_INFINITY__ 1
8467// X32:#define __FLT_HAS_QUIET_NAN__ 1
8468// X32:#define __FLT_MANT_DIG__ 24
8469// X32:#define __FLT_MAX_10_EXP__ 38
8470// X32:#define __FLT_MAX_EXP__ 128
8471// X32:#define __FLT_MAX__ 3.40282347e+38F
8472// X32:#define __FLT_MIN_10_EXP__ (-37)
8473// X32:#define __FLT_MIN_EXP__ (-125)
8474// X32:#define __FLT_MIN__ 1.17549435e-38F
8475// X32:#define __FLT_RADIX__ 2
8476// X32:#define __ILP32__ 1
8477// X32-NOT:#define __LP64__ 1
8478// X32:#define __INT16_C_SUFFIX__
8479// X32:#define __INT16_FMTd__ "hd"
8480// X32:#define __INT16_FMTi__ "hi"
8481// X32:#define __INT16_MAX__ 32767
8482// X32:#define __INT16_TYPE__ short
8483// X32:#define __INT32_C_SUFFIX__
8484// X32:#define __INT32_FMTd__ "d"
8485// X32:#define __INT32_FMTi__ "i"
8486// X32:#define __INT32_MAX__ 2147483647
8487// X32:#define __INT32_TYPE__ int
8488// X32:#define __INT64_C_SUFFIX__ LL
8489// X32:#define __INT64_FMTd__ "lld"
8490// X32:#define __INT64_FMTi__ "lli"
8491// X32:#define __INT64_MAX__ 9223372036854775807LL
8492// X32:#define __INT64_TYPE__ long long int
8493// X32:#define __INT8_C_SUFFIX__
8494// X32:#define __INT8_FMTd__ "hhd"
8495// X32:#define __INT8_FMTi__ "hhi"
8496// X32:#define __INT8_MAX__ 127
8497// X32:#define __INT8_TYPE__ signed char
8498// X32:#define __INTMAX_C_SUFFIX__ LL
8499// X32:#define __INTMAX_FMTd__ "lld"
8500// X32:#define __INTMAX_FMTi__ "lli"
8501// X32:#define __INTMAX_MAX__ 9223372036854775807LL
8502// X32:#define __INTMAX_TYPE__ long long int
8503// X32:#define __INTMAX_WIDTH__ 64
8504// X32:#define __INTPTR_FMTd__ "d"
8505// X32:#define __INTPTR_FMTi__ "i"
8506// X32:#define __INTPTR_MAX__ 2147483647
8507// X32:#define __INTPTR_TYPE__ int
8508// X32:#define __INTPTR_WIDTH__ 32
8509// X32:#define __INT_FAST16_FMTd__ "hd"
8510// X32:#define __INT_FAST16_FMTi__ "hi"
8511// X32:#define __INT_FAST16_MAX__ 32767
8512// X32:#define __INT_FAST16_TYPE__ short
8513// X32:#define __INT_FAST32_FMTd__ "d"
8514// X32:#define __INT_FAST32_FMTi__ "i"
8515// X32:#define __INT_FAST32_MAX__ 2147483647
8516// X32:#define __INT_FAST32_TYPE__ int
8517// X32:#define __INT_FAST64_FMTd__ "lld"
8518// X32:#define __INT_FAST64_FMTi__ "lli"
8519// X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
8520// X32:#define __INT_FAST64_TYPE__ long long int
8521// X32:#define __INT_FAST8_FMTd__ "hhd"
8522// X32:#define __INT_FAST8_FMTi__ "hhi"
8523// X32:#define __INT_FAST8_MAX__ 127
8524// X32:#define __INT_FAST8_TYPE__ signed char
8525// X32:#define __INT_LEAST16_FMTd__ "hd"
8526// X32:#define __INT_LEAST16_FMTi__ "hi"
8527// X32:#define __INT_LEAST16_MAX__ 32767
8528// X32:#define __INT_LEAST16_TYPE__ short
8529// X32:#define __INT_LEAST32_FMTd__ "d"
8530// X32:#define __INT_LEAST32_FMTi__ "i"
8531// X32:#define __INT_LEAST32_MAX__ 2147483647
8532// X32:#define __INT_LEAST32_TYPE__ int
8533// X32:#define __INT_LEAST64_FMTd__ "lld"
8534// X32:#define __INT_LEAST64_FMTi__ "lli"
8535// X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8536// X32:#define __INT_LEAST64_TYPE__ long long int
8537// X32:#define __INT_LEAST8_FMTd__ "hhd"
8538// X32:#define __INT_LEAST8_FMTi__ "hhi"
8539// X32:#define __INT_LEAST8_MAX__ 127
8540// X32:#define __INT_LEAST8_TYPE__ signed char
8541// X32:#define __INT_MAX__ 2147483647
8542// X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8543// X32:#define __LDBL_DIG__ 18
8544// X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8545// X32:#define __LDBL_HAS_DENORM__ 1
8546// X32:#define __LDBL_HAS_INFINITY__ 1
8547// X32:#define __LDBL_HAS_QUIET_NAN__ 1
8548// X32:#define __LDBL_MANT_DIG__ 64
8549// X32:#define __LDBL_MAX_10_EXP__ 4932
8550// X32:#define __LDBL_MAX_EXP__ 16384
8551// X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8552// X32:#define __LDBL_MIN_10_EXP__ (-4931)
8553// X32:#define __LDBL_MIN_EXP__ (-16381)
8554// X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8555// X32:#define __LITTLE_ENDIAN__ 1
8556// X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
8557// X32:#define __LONG_MAX__ 2147483647L
8558// X32:#define __MMX__ 1
8559// X32:#define __NO_MATH_INLINES 1
8560// X32:#define __POINTER_WIDTH__ 32
8561// X32:#define __PTRDIFF_TYPE__ int
8562// X32:#define __PTRDIFF_WIDTH__ 32
8563// X32:#define __REGISTER_PREFIX__
8564// X32:#define __SCHAR_MAX__ 127
8565// X32:#define __SHRT_MAX__ 32767
8566// X32:#define __SIG_ATOMIC_MAX__ 2147483647
8567// X32:#define __SIG_ATOMIC_WIDTH__ 32
8568// X32:#define __SIZEOF_DOUBLE__ 8
8569// X32:#define __SIZEOF_FLOAT__ 4
8570// X32:#define __SIZEOF_INT__ 4
8571// X32:#define __SIZEOF_LONG_DOUBLE__ 16
8572// X32:#define __SIZEOF_LONG_LONG__ 8
8573// X32:#define __SIZEOF_LONG__ 4
8574// X32:#define __SIZEOF_POINTER__ 4
8575// X32:#define __SIZEOF_PTRDIFF_T__ 4
8576// X32:#define __SIZEOF_SHORT__ 2
8577// X32:#define __SIZEOF_SIZE_T__ 4
8578// X32:#define __SIZEOF_WCHAR_T__ 4
8579// X32:#define __SIZEOF_WINT_T__ 4
8580// X32:#define __SIZE_MAX__ 4294967295U
8581// X32:#define __SIZE_TYPE__ unsigned int
8582// X32:#define __SIZE_WIDTH__ 32
8583// X32:#define __SSE2_MATH__ 1
8584// X32:#define __SSE2__ 1
8585// X32:#define __SSE_MATH__ 1
8586// X32:#define __SSE__ 1
8587// X32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
8588// X32:#define __UINT16_C_SUFFIX__
8589// X32:#define __UINT16_MAX__ 65535
8590// X32:#define __UINT16_TYPE__ unsigned short
8591// X32:#define __UINT32_C_SUFFIX__ U
8592// X32:#define __UINT32_MAX__ 4294967295U
8593// X32:#define __UINT32_TYPE__ unsigned int
8594// X32:#define __UINT64_C_SUFFIX__ ULL
8595// X32:#define __UINT64_MAX__ 18446744073709551615ULL
8596// X32:#define __UINT64_TYPE__ long long unsigned int
8597// X32:#define __UINT8_C_SUFFIX__
8598// X32:#define __UINT8_MAX__ 255
8599// X32:#define __UINT8_TYPE__ unsigned char
8600// X32:#define __UINTMAX_C_SUFFIX__ ULL
8601// X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
8602// X32:#define __UINTMAX_TYPE__ long long unsigned int
8603// X32:#define __UINTMAX_WIDTH__ 64
8604// X32:#define __UINTPTR_MAX__ 4294967295U
8605// X32:#define __UINTPTR_TYPE__ unsigned int
8606// X32:#define __UINTPTR_WIDTH__ 32
8607// X32:#define __UINT_FAST16_MAX__ 65535
8608// X32:#define __UINT_FAST16_TYPE__ unsigned short
8609// X32:#define __UINT_FAST32_MAX__ 4294967295U
8610// X32:#define __UINT_FAST32_TYPE__ unsigned int
8611// X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8612// X32:#define __UINT_FAST64_TYPE__ long long unsigned int
8613// X32:#define __UINT_FAST8_MAX__ 255
8614// X32:#define __UINT_FAST8_TYPE__ unsigned char
8615// X32:#define __UINT_LEAST16_MAX__ 65535
8616// X32:#define __UINT_LEAST16_TYPE__ unsigned short
8617// X32:#define __UINT_LEAST32_MAX__ 4294967295U
8618// X32:#define __UINT_LEAST32_TYPE__ unsigned int
8619// X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8620// X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
8621// X32:#define __UINT_LEAST8_MAX__ 255
8622// X32:#define __UINT_LEAST8_TYPE__ unsigned char
8623// X32:#define __USER_LABEL_PREFIX__
8624// X32:#define __WCHAR_MAX__ 2147483647
8625// X32:#define __WCHAR_TYPE__ int
8626// X32:#define __WCHAR_WIDTH__ 32
8627// X32:#define __WINT_TYPE__ int
8628// X32:#define __WINT_WIDTH__ 32
8629// X32:#define __amd64 1
8630// X32:#define __amd64__ 1
8631// X32:#define __x86_64 1
8632// X32:#define __x86_64__ 1
8633//
8634// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-unknown-cloudabi < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-CLOUDABI %s
8635//
8636// X86_64-CLOUDABI:#define _LP64 1
8637// X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
8638// X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
8639// X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
8640// X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
8641// X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
8642// X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
8643// X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
8644// X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8645// X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
8646// X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
8647// X86_64-CLOUDABI:#define __CHAR_BIT__ 8
8648// X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
8649// X86_64-CLOUDABI:#define __CloudABI__ 1
8650// X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
8651// X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8652// X86_64-CLOUDABI:#define __DBL_DIG__ 15
8653// X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
8654// X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
8655// X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
8656// X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
8657// X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
8658// X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
8659// X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
8660// X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
8661// X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
8662// X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
8663// X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
8664// X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8665// X86_64-CLOUDABI:#define __ELF__ 1
8666// X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
8667// X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
8668// X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8669// X86_64-CLOUDABI:#define __FLT_DIG__ 6
8670// X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
8671// X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
8672// X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
8673// X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
8674// X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
8675// X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
8676// X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
8677// X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
8678// X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
8679// X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
8680// X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
8681// X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
8682// X86_64-CLOUDABI:#define __FLT_RADIX__ 2
8683// X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8684// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8685// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8686// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8687// X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8688// X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
8689// X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8690// X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8691// X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8692// X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8693// X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
8694// X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
8695// X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
8696// X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
8697// X86_64-CLOUDABI:#define __GNUC__ 4
8698// X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
8699// X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
8700// X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
8701// X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
8702// X86_64-CLOUDABI:#define __INT16_MAX__ 32767
8703// X86_64-CLOUDABI:#define __INT16_TYPE__ short
8704// X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
8705// X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
8706// X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
8707// X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
8708// X86_64-CLOUDABI:#define __INT32_TYPE__ int
8709// X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
8710// X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
8711// X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
8712// X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
8713// X86_64-CLOUDABI:#define __INT64_TYPE__ long int
8714// X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
8715// X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
8716// X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
8717// X86_64-CLOUDABI:#define __INT8_MAX__ 127
8718// X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
8719// X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
8720// X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
8721// X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
8722// X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
8723// X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
8724// X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
8725// X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
8726// X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
8727// X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
8728// X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
8729// X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
8730// X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
8731// X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
8732// X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
8733// X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
8734// X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
8735// X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
8736// X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
8737// X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
8738// X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
8739// X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
8740// X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
8741// X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
8742// X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
8743// X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
8744// X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
8745// X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
8746// X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
8747// X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
8748// X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
8749// X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
8750// X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
8751// X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
8752// X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
8753// X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
8754// X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
8755// X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
8756// X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
8757// X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
8758// X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
8759// X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
8760// X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
8761// X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
8762// X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
8763// X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
8764// X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8765// X86_64-CLOUDABI:#define __LDBL_DIG__ 18
8766// X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8767// X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
8768// X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
8769// X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
8770// X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
8771// X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
8772// X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
8773// X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8774// X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
8775// X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
8776// X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8777// X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
8778// X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
8779// X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
8780// X86_64-CLOUDABI:#define __LP64__ 1
8781// X86_64-CLOUDABI:#define __MMX__ 1
8782// X86_64-CLOUDABI:#define __NO_INLINE__ 1
8783// X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
8784// X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
8785// X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
8786// X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
8787// X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
8788// X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
8789// X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
8790// X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
8791// X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
8792// X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
8793// X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
8794// X86_64-CLOUDABI:#define __REGISTER_PREFIX__
8795// X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
8796// X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
8797// X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
8798// X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
8799// X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
8800// X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
8801// X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
8802// X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
8803// X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
8804// X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
8805// X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
8806// X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
8807// X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
8808// X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
8809// X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
8810// X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
8811// X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
8812// X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
8813// X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
8814// X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
8815// X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
8816// X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
8817// X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
8818// X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
8819// X86_64-CLOUDABI:#define __SSE2_MATH__ 1
8820// X86_64-CLOUDABI:#define __SSE2__ 1
8821// X86_64-CLOUDABI:#define __SSE_MATH__ 1
8822// X86_64-CLOUDABI:#define __SSE__ 1
8823// X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
8824// X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
8825// X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
8826// X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
8827// X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
8828// X86_64-CLOUDABI:#define __STDC__ 1
8829// X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
8830// X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
8831// X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
8832// X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
8833// X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
8834// X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
8835// X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
8836// X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
8837// X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
8838// X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
8839// X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
8840// X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
8841// X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
8842// X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
8843// X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
8844// X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
8845// X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
8846// X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
8847// X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
8848// X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
8849// X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
8850// X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
8851// X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
8852// X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
8853// X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
8854// X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
8855// X86_64-CLOUDABI:#define __UINT8_MAX__ 255
8856// X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
8857// X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
8858// X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
8859// X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
8860// X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
8861// X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
8862// X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
8863// X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
8864// X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
8865// X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
8866// X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
8867// X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
8868// X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
8869// X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
8870// X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
8871// X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
8872// X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
8873// X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
8874// X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
8875// X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
8876// X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
8877// X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
8878// X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
8879// X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
8880// X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
8881// X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
8882// X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
8883// X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
8884// X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
8885// X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
8886// X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
8887// X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
8888// X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8889// X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
8890// X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
8891// X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
8892// X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
8893// X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
8894// X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
8895// X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
8896// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
8897// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
8898// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
8899// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
8900// X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
8901// X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
8902// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
8903// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
8904// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
8905// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
8906// X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
8907// X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
8908// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
8909// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
8910// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
8911// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
8912// X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8913// X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
8914// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
8915// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
8916// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
8917// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
8918// X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
8919// X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
8920// X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
8921// X86_64-CLOUDABI:#define __VERSION__ "4.2.1 Compatible{{.*}}
8922// X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
8923// X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
8924// X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
8925// X86_64-CLOUDABI:#define __WINT_MAX__ 2147483647
8926// X86_64-CLOUDABI:#define __WINT_TYPE__ int
8927// X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
8928// X86_64-CLOUDABI:#define __amd64 1
8929// X86_64-CLOUDABI:#define __amd64__ 1
8930// X86_64-CLOUDABI:#define __clang__ 1
8931// X86_64-CLOUDABI:#define __clang_major__ {{.*}}
8932// X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
8933// X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
8934// X86_64-CLOUDABI:#define __clang_version__ {{.*}}
8935// X86_64-CLOUDABI:#define __llvm__ 1
8936// X86_64-CLOUDABI:#define __x86_64 1
8937// X86_64-CLOUDABI:#define __x86_64__ 1
8938//
8939// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-LINUX %s
8940//
8941// X86_64-LINUX:#define _LP64 1
8942// X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
8943// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8944// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
8945// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
8946// X86_64-LINUX:#define __CHAR_BIT__ 8
8947// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8948// X86_64-LINUX:#define __DBL_DIG__ 15
8949// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
8950// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
8951// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
8952// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
8953// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
8954// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
8955// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
8956// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
8957// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
8958// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
8959// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
8960// X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8961// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8962// X86_64-LINUX:#define __FLT_DIG__ 6
8963// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
8964// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
8965// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
8966// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
8967// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
8968// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
8969// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
8970// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
8971// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
8972// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
8973// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
8974// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
8975// X86_64-LINUX:#define __FLT_RADIX__ 2
8976// X86_64-LINUX:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8977// X86_64-LINUX:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8978// X86_64-LINUX:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8979// X86_64-LINUX:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8980// X86_64-LINUX:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8981// X86_64-LINUX:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
8982// X86_64-LINUX:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8983// X86_64-LINUX:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8984// X86_64-LINUX:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8985// X86_64-LINUX:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8986// X86_64-LINUX:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
8987// X86_64-LINUX:#define __INT16_C_SUFFIX__
8988// X86_64-LINUX:#define __INT16_FMTd__ "hd"
8989// X86_64-LINUX:#define __INT16_FMTi__ "hi"
8990// X86_64-LINUX:#define __INT16_MAX__ 32767
8991// X86_64-LINUX:#define __INT16_TYPE__ short
8992// X86_64-LINUX:#define __INT32_C_SUFFIX__
8993// X86_64-LINUX:#define __INT32_FMTd__ "d"
8994// X86_64-LINUX:#define __INT32_FMTi__ "i"
8995// X86_64-LINUX:#define __INT32_MAX__ 2147483647
8996// X86_64-LINUX:#define __INT32_TYPE__ int
8997// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
8998// X86_64-LINUX:#define __INT64_FMTd__ "ld"
8999// X86_64-LINUX:#define __INT64_FMTi__ "li"
9000// X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
9001// X86_64-LINUX:#define __INT64_TYPE__ long int
9002// X86_64-LINUX:#define __INT8_C_SUFFIX__
9003// X86_64-LINUX:#define __INT8_FMTd__ "hhd"
9004// X86_64-LINUX:#define __INT8_FMTi__ "hhi"
9005// X86_64-LINUX:#define __INT8_MAX__ 127
9006// X86_64-LINUX:#define __INT8_TYPE__ signed char
9007// X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
9008// X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
9009// X86_64-LINUX:#define __INTMAX_FMTi__ "li"
9010// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
9011// X86_64-LINUX:#define __INTMAX_TYPE__ long int
9012// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
9013// X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
9014// X86_64-LINUX:#define __INTPTR_FMTi__ "li"
9015// X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
9016// X86_64-LINUX:#define __INTPTR_TYPE__ long int
9017// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
9018// X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
9019// X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
9020// X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
9021// X86_64-LINUX:#define __INT_FAST16_TYPE__ short
9022// X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
9023// X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
9024// X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
9025// X86_64-LINUX:#define __INT_FAST32_TYPE__ int
9026// X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
9027// X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
9028// X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
9029// X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
9030// X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
9031// X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
9032// X86_64-LINUX:#define __INT_FAST8_MAX__ 127
9033// X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
9034// X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
9035// X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
9036// X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
9037// X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
9038// X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
9039// X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
9040// X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
9041// X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
9042// X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
9043// X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
9044// X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
9045// X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
9046// X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
9047// X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
9048// X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
9049// X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
9050// X86_64-LINUX:#define __INT_MAX__ 2147483647
9051// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
9052// X86_64-LINUX:#define __LDBL_DIG__ 18
9053// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
9054// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
9055// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
9056// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
9057// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
9058// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
9059// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
9060// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
9061// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
9062// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
9063// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
9064// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
9065// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
9066// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
9067// X86_64-LINUX:#define __LP64__ 1
9068// X86_64-LINUX:#define __MMX__ 1
9069// X86_64-LINUX:#define __NO_MATH_INLINES 1
9070// X86_64-LINUX:#define __POINTER_WIDTH__ 64
9071// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
9072// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
9073// X86_64-LINUX:#define __REGISTER_PREFIX__
9074// X86_64-LINUX:#define __SCHAR_MAX__ 127
9075// X86_64-LINUX:#define __SHRT_MAX__ 32767
9076// X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
9077// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
9078// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
9079// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
9080// X86_64-LINUX:#define __SIZEOF_INT__ 4
9081// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
9082// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
9083// X86_64-LINUX:#define __SIZEOF_LONG__ 8
9084// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
9085// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
9086// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
9087// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
9088// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
9089// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
9090// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
9091// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
9092// X86_64-LINUX:#define __SIZE_WIDTH__ 64
9093// X86_64-LINUX:#define __SSE2_MATH__ 1
9094// X86_64-LINUX:#define __SSE2__ 1
9095// X86_64-LINUX:#define __SSE_MATH__ 1
9096// X86_64-LINUX:#define __SSE__ 1
9097// X86_64-LINUX:#define __UINT16_C_SUFFIX__
9098// X86_64-LINUX:#define __UINT16_MAX__ 65535
9099// X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
9100// X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
9101// X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
9102// X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
9103// X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
9104// X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
9105// X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
9106// X86_64-LINUX:#define __UINT8_C_SUFFIX__
9107// X86_64-LINUX:#define __UINT8_MAX__ 255
9108// X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
9109// X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
9110// X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
9111// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
9112// X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
9113// X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
9114// X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
9115// X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
9116// X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
9117// X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
9118// X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
9119// X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
9120// X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
9121// X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
9122// X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
9123// X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
9124// X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
9125// X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
9126// X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
9127// X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
9128// X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
9129// X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
9130// X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
9131// X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
9132// X86_64-LINUX:#define __USER_LABEL_PREFIX__
9133// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
9134// X86_64-LINUX:#define __WCHAR_TYPE__ int
9135// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
9136// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
9137// X86_64-LINUX:#define __WINT_WIDTH__ 32
9138// X86_64-LINUX:#define __amd64 1
9139// X86_64-LINUX:#define __amd64__ 1
9140// X86_64-LINUX:#define __x86_64 1
9141// X86_64-LINUX:#define __x86_64__ 1
9142//
9143// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-unknown-freebsd9.1 < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-FREEBSD %s
9144//
9145// X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
9146// X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
9147// X86_64-FREEBSD:#define __FreeBSD__ 9
9148// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
9149// X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
9150// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
9151//
9152// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-NETBSD %s
9153//
9154// X86_64-NETBSD:#define _LP64 1
9155// X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
9156// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9157// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
9158// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
9159// X86_64-NETBSD:#define __CHAR_BIT__ 8
9160// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9161// X86_64-NETBSD:#define __DBL_DIG__ 15
9162// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
9163// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
9164// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
9165// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
9166// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
9167// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
9168// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
9169// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
9170// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
9171// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
9172// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
9173// X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
9174// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9175// X86_64-NETBSD:#define __FLT_DIG__ 6
9176// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
9177// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
9178// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
9179// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
9180// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
9181// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
9182// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
9183// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
9184// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
9185// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
9186// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
9187// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
9188// X86_64-NETBSD:#define __FLT_RADIX__ 2
9189// X86_64-NETBSD:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9190// X86_64-NETBSD:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9191// X86_64-NETBSD:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9192// X86_64-NETBSD:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9193// X86_64-NETBSD:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9194// X86_64-NETBSD:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9195// X86_64-NETBSD:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9196// X86_64-NETBSD:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9197// X86_64-NETBSD:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9198// X86_64-NETBSD:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9199// X86_64-NETBSD:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
9200// X86_64-NETBSD:#define __INT16_C_SUFFIX__
9201// X86_64-NETBSD:#define __INT16_FMTd__ "hd"
9202// X86_64-NETBSD:#define __INT16_FMTi__ "hi"
9203// X86_64-NETBSD:#define __INT16_MAX__ 32767
9204// X86_64-NETBSD:#define __INT16_TYPE__ short
9205// X86_64-NETBSD:#define __INT32_C_SUFFIX__
9206// X86_64-NETBSD:#define __INT32_FMTd__ "d"
9207// X86_64-NETBSD:#define __INT32_FMTi__ "i"
9208// X86_64-NETBSD:#define __INT32_MAX__ 2147483647
9209// X86_64-NETBSD:#define __INT32_TYPE__ int
9210// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
9211// X86_64-NETBSD:#define __INT64_FMTd__ "ld"
9212// X86_64-NETBSD:#define __INT64_FMTi__ "li"
9213// X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
9214// X86_64-NETBSD:#define __INT64_TYPE__ long int
9215// X86_64-NETBSD:#define __INT8_C_SUFFIX__
9216// X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
9217// X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
9218// X86_64-NETBSD:#define __INT8_MAX__ 127
9219// X86_64-NETBSD:#define __INT8_TYPE__ signed char
9220// X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
9221// X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
9222// X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
9223// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
9224// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
9225// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
9226// X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
9227// X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
9228// X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
9229// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
9230// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
9231// X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
9232// X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
9233// X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
9234// X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
9235// X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
9236// X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
9237// X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
9238// X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
9239// X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
9240// X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
9241// X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
9242// X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
9243// X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
9244// X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
9245// X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
9246// X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
9247// X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
9248// X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
9249// X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
9250// X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
9251// X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
9252// X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
9253// X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
9254// X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
9255// X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
9256// X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
9257// X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
9258// X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
9259// X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
9260// X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
9261// X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
9262// X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
9263// X86_64-NETBSD:#define __INT_MAX__ 2147483647
9264// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
9265// X86_64-NETBSD:#define __LDBL_DIG__ 18
9266// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
9267// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
9268// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
9269// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
9270// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
9271// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
9272// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
9273// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
9274// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
9275// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
9276// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
9277// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
9278// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
9279// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
9280// X86_64-NETBSD:#define __LP64__ 1
9281// X86_64-NETBSD:#define __MMX__ 1
9282// X86_64-NETBSD:#define __NO_MATH_INLINES 1
9283// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
9284// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
9285// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
9286// X86_64-NETBSD:#define __REGISTER_PREFIX__
9287// X86_64-NETBSD:#define __SCHAR_MAX__ 127
9288// X86_64-NETBSD:#define __SHRT_MAX__ 32767
9289// X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
9290// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
9291// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
9292// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
9293// X86_64-NETBSD:#define __SIZEOF_INT__ 4
9294// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
9295// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
9296// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
9297// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
9298// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
9299// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
9300// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
9301// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
9302// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
9303// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
9304// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
9305// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
9306// X86_64-NETBSD:#define __SSE2_MATH__ 1
9307// X86_64-NETBSD:#define __SSE2__ 1
9308// X86_64-NETBSD:#define __SSE_MATH__ 1
9309// X86_64-NETBSD:#define __SSE__ 1
9310// X86_64-NETBSD:#define __UINT16_C_SUFFIX__
9311// X86_64-NETBSD:#define __UINT16_MAX__ 65535
9312// X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
9313// X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
9314// X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
9315// X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
9316// X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
9317// X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
9318// X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
9319// X86_64-NETBSD:#define __UINT8_C_SUFFIX__
9320// X86_64-NETBSD:#define __UINT8_MAX__ 255
9321// X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
9322// X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
9323// X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
9324// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
9325// X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
9326// X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
9327// X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
9328// X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
9329// X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
9330// X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
9331// X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
9332// X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
9333// X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
9334// X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
9335// X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
9336// X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
9337// X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
9338// X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
9339// X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
9340// X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
9341// X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
9342// X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
9343// X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
9344// X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
9345// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
9346// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
9347// X86_64-NETBSD:#define __WCHAR_TYPE__ int
9348// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
9349// X86_64-NETBSD:#define __WINT_TYPE__ int
9350// X86_64-NETBSD:#define __WINT_WIDTH__ 32
9351// X86_64-NETBSD:#define __amd64 1
9352// X86_64-NETBSD:#define __amd64__ 1
9353// X86_64-NETBSD:#define __x86_64 1
9354// X86_64-NETBSD:#define __x86_64__ 1
9355//
9356// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-scei-ps4 < /dev/null | FileCheck -match-full-lines -check-prefix PS4 %s
9357//
9358// PS4:#define _LP64 1
9359// PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9360// PS4:#define __CHAR16_TYPE__ unsigned short
9361// PS4:#define __CHAR32_TYPE__ unsigned int
9362// PS4:#define __CHAR_BIT__ 8
9363// PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9364// PS4:#define __DBL_DIG__ 15
9365// PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
9366// PS4:#define __DBL_HAS_DENORM__ 1
9367// PS4:#define __DBL_HAS_INFINITY__ 1
9368// PS4:#define __DBL_HAS_QUIET_NAN__ 1
9369// PS4:#define __DBL_MANT_DIG__ 53
9370// PS4:#define __DBL_MAX_10_EXP__ 308
9371// PS4:#define __DBL_MAX_EXP__ 1024
9372// PS4:#define __DBL_MAX__ 1.7976931348623157e+308
9373// PS4:#define __DBL_MIN_10_EXP__ (-307)
9374// PS4:#define __DBL_MIN_EXP__ (-1021)
9375// PS4:#define __DBL_MIN__ 2.2250738585072014e-308
9376// PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
9377// PS4:#define __ELF__ 1
9378// PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9379// PS4:#define __FLT_DIG__ 6
9380// PS4:#define __FLT_EPSILON__ 1.19209290e-7F
9381// PS4:#define __FLT_EVAL_METHOD__ 0
9382// PS4:#define __FLT_HAS_DENORM__ 1
9383// PS4:#define __FLT_HAS_INFINITY__ 1
9384// PS4:#define __FLT_HAS_QUIET_NAN__ 1
9385// PS4:#define __FLT_MANT_DIG__ 24
9386// PS4:#define __FLT_MAX_10_EXP__ 38
9387// PS4:#define __FLT_MAX_EXP__ 128
9388// PS4:#define __FLT_MAX__ 3.40282347e+38F
9389// PS4:#define __FLT_MIN_10_EXP__ (-37)
9390// PS4:#define __FLT_MIN_EXP__ (-125)
9391// PS4:#define __FLT_MIN__ 1.17549435e-38F
9392// PS4:#define __FLT_RADIX__ 2
9393// PS4:#define __FreeBSD__ 9
9394// PS4:#define __FreeBSD_cc_version 900001
9395// PS4:#define __INT16_TYPE__ short
9396// PS4:#define __INT32_TYPE__ int
9397// PS4:#define __INT64_C_SUFFIX__ L
9398// PS4:#define __INT64_TYPE__ long int
9399// PS4:#define __INT8_TYPE__ signed char
9400// PS4:#define __INTMAX_MAX__ 9223372036854775807L
9401// PS4:#define __INTMAX_TYPE__ long int
9402// PS4:#define __INTMAX_WIDTH__ 64
9403// PS4:#define __INTPTR_TYPE__ long int
9404// PS4:#define __INTPTR_WIDTH__ 64
9405// PS4:#define __INT_MAX__ 2147483647
9406// PS4:#define __KPRINTF_ATTRIBUTE__ 1
9407// PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
9408// PS4:#define __LDBL_DIG__ 18
9409// PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
9410// PS4:#define __LDBL_HAS_DENORM__ 1
9411// PS4:#define __LDBL_HAS_INFINITY__ 1
9412// PS4:#define __LDBL_HAS_QUIET_NAN__ 1
9413// PS4:#define __LDBL_MANT_DIG__ 64
9414// PS4:#define __LDBL_MAX_10_EXP__ 4932
9415// PS4:#define __LDBL_MAX_EXP__ 16384
9416// PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
9417// PS4:#define __LDBL_MIN_10_EXP__ (-4931)
9418// PS4:#define __LDBL_MIN_EXP__ (-16381)
9419// PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
9420// PS4:#define __LITTLE_ENDIAN__ 1
9421// PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
9422// PS4:#define __LONG_MAX__ 9223372036854775807L
9423// PS4:#define __LP64__ 1
9424// PS4:#define __MMX__ 1
9425// PS4:#define __NO_MATH_INLINES 1
9426// PS4:#define __ORBIS__ 1
9427// PS4:#define __POINTER_WIDTH__ 64
9428// PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
9429// PS4:#define __PTRDIFF_TYPE__ long int
9430// PS4:#define __PTRDIFF_WIDTH__ 64
9431// PS4:#define __REGISTER_PREFIX__
9432// PS4:#define __SCHAR_MAX__ 127
9433// PS4:#define __SHRT_MAX__ 32767
9434// PS4:#define __SIG_ATOMIC_MAX__ 2147483647
9435// PS4:#define __SIG_ATOMIC_WIDTH__ 32
9436// PS4:#define __SIZEOF_DOUBLE__ 8
9437// PS4:#define __SIZEOF_FLOAT__ 4
9438// PS4:#define __SIZEOF_INT__ 4
9439// PS4:#define __SIZEOF_LONG_DOUBLE__ 16
9440// PS4:#define __SIZEOF_LONG_LONG__ 8
9441// PS4:#define __SIZEOF_LONG__ 8
9442// PS4:#define __SIZEOF_POINTER__ 8
9443// PS4:#define __SIZEOF_PTRDIFF_T__ 8
9444// PS4:#define __SIZEOF_SHORT__ 2
9445// PS4:#define __SIZEOF_SIZE_T__ 8
9446// PS4:#define __SIZEOF_WCHAR_T__ 2
9447// PS4:#define __SIZEOF_WINT_T__ 4
9448// PS4:#define __SIZE_TYPE__ long unsigned int
9449// PS4:#define __SIZE_WIDTH__ 64
9450// PS4:#define __SSE2_MATH__ 1
9451// PS4:#define __SSE2__ 1
9452// PS4:#define __SSE_MATH__ 1
9453// PS4:#define __SSE__ 1
9454// PS4:#define __STDC_VERSION__ 199901L
9455// PS4:#define __UINTMAX_TYPE__ long unsigned int
9456// PS4:#define __USER_LABEL_PREFIX__
9457// PS4:#define __WCHAR_MAX__ 65535
9458// PS4:#define __WCHAR_TYPE__ unsigned short
9459// PS4:#define __WCHAR_UNSIGNED__ 1
9460// PS4:#define __WCHAR_WIDTH__ 16
9461// PS4:#define __WINT_TYPE__ int
9462// PS4:#define __WINT_WIDTH__ 32
9463// PS4:#define __amd64 1
9464// PS4:#define __amd64__ 1
9465// PS4:#define __unix 1
9466// PS4:#define __unix__ 1
9467// PS4:#define __x86_64 1
9468// PS4:#define __x86_64__ 1
9469// PS4:#define unix 1
9470//
9471// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-scei-ps4 < /dev/null | FileCheck -match-full-lines -check-prefix PS4-CXX %s
9472// PS4-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 32UL
9473//
9474// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
9475// RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
9476// X86-64-DECLSPEC: #define __declspec{{.*}}
9477//
9478// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARCV9 %s
9479// SPARCV9:#define __INT64_TYPE__ long int
9480// SPARCV9:#define __INTMAX_C_SUFFIX__ L
9481// SPARCV9:#define __INTMAX_TYPE__ long int
9482// SPARCV9:#define __INTPTR_TYPE__ long int
9483// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
9484// SPARCV9:#define __LP64__ 1
9485// SPARCV9:#define __SIZEOF_LONG__ 8
9486// SPARCV9:#define __SIZEOF_POINTER__ 8
9487// SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
9488//
9489// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC64-OBSD %s
9490// SPARC64-OBSD:#define __INT64_TYPE__ long long int
9491// SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
9492// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
9493// SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
9494// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
9495//
9496// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-kfreebsd-gnu < /dev/null | FileCheck -match-full-lines -check-prefix KFREEBSD-DEFINE %s
9497// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
9498// KFREEBSD-DEFINE:#define __GLIBC__ 1
9499//
9500// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i686-pc-kfreebsd-gnu < /dev/null | FileCheck -match-full-lines -check-prefix KFREEBSDI686-DEFINE %s
9501// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
9502// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
9503//
9504// 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
9505// RUN: %clang_cc1 -x c++ -triple sparc-rtems-elf -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSOURCE %s
9506// GNUSOURCE:#define _GNU_SOURCE 1
9507//
9508// Check that the GNUstep Objective-C ABI defines exist and are clamped at the
9509// highest supported version.
9510// 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
9511// GNUSTEP1:#define __OBJC_GNUSTEP_RUNTIME_ABI__ 18
9512// 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
9513// GNUSTEP2:#define __OBJC_GNUSTEP_RUNTIME_ABI__ 20
9514//
9515// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
9516// NORTTI: #define __GXX_ABI_VERSION {{.*}}
9517// NORTTI-NOT:#define __GXX_RTTI
9518// NORTTI:#define __STDC__ 1
9519//
9520// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID %s
9521// ANDROID-NOT:#define __ANDROID_API__
9522// ANDROID:#define __ANDROID__ 1
9523// ANDROID-NOT:#define __gnu_linux__
9524//
9525// RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
9526// I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
9527//
9528// 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
9529// X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
9530//
9531// RUN: %clang_cc1 -triple arm-linux-androideabi20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID20 %s
9532// ANDROID20:#define __ANDROID_API__ 20
9533// ANDROID20:#define __ANDROID__ 1
9534// ANDROID-NOT:#define __gnu_linux__
9535//
9536// RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
9537// LANAI: #define __lanai__ 1
9538//
9539// RUN: %clang_cc1 -E -dM -ffreestanding -triple=amd64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9540// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9541// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9542// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9543// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9544// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9545// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9546// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9547// OPENBSD:#define __ELF__ 1
9548// OPENBSD:#define __INT16_TYPE__ short
9549// OPENBSD:#define __INT32_TYPE__ int
9550// OPENBSD:#define __INT64_TYPE__ long long int
9551// OPENBSD:#define __INT8_TYPE__ signed char
9552// OPENBSD:#define __INTMAX_TYPE__ long long int
9553// OPENBSD:#define __INTPTR_TYPE__ long int
9554// OPENBSD:#define __OpenBSD__ 1
9555// OPENBSD:#define __PTRDIFF_TYPE__ long int
9556// OPENBSD:#define __SIZE_TYPE__ long unsigned int
9557// OPENBSD:#define __UINT16_TYPE__ unsigned short
9558// OPENBSD:#define __UINT32_TYPE__ unsigned int
9559// OPENBSD:#define __UINT64_TYPE__ long long unsigned int
9560// OPENBSD:#define __UINT8_TYPE__ unsigned char
9561// OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
9562// OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
9563// OPENBSD:#define __WCHAR_TYPE__ int
9564// OPENBSD:#define __WINT_TYPE__ int
9565//
9566// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-freebsd < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-FREEBSD %s
9567// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
9568//
9569// RUN: %clang_cc1 -E -dM -ffreestanding -triple=xcore-none-none < /dev/null | FileCheck -match-full-lines -check-prefix XCORE %s
9570// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9571// XCORE:#define __LITTLE_ENDIAN__ 1
9572// XCORE:#define __XS1B__ 1
9573//
9574// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
9575// RUN:   < /dev/null \
9576// RUN:   | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY32 %s
9577// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
9578// RUN:   < /dev/null \
9579// RUN:   | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY64 %s
9580// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-wasi \
9581// RUN:   < /dev/null \
9582// RUN:   | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY32,WEBASSEMBLY-WASI %s
9583// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-wasi \
9584// RUN:   < /dev/null \
9585// RUN:   | FileCheck -match-full-lines -check-prefixes=WEBASSEMBLY,WEBASSEMBLY64,WEBASSEMBLY-WASI %s
9586//
9587// WEBASSEMBLY32:#define _ILP32 1
9588// WEBASSEMBLY32-NOT:#define _LP64
9589// WEBASSEMBLY64-NOT:#define _ILP32
9590// WEBASSEMBLY64:#define _LP64 1
9591// WEBASSEMBLY-NEXT:#define __ATOMIC_ACQUIRE 2
9592// WEBASSEMBLY-NEXT:#define __ATOMIC_ACQ_REL 4
9593// WEBASSEMBLY-NEXT:#define __ATOMIC_CONSUME 1
9594// WEBASSEMBLY-NEXT:#define __ATOMIC_RELAXED 0
9595// WEBASSEMBLY-NEXT:#define __ATOMIC_RELEASE 3
9596// WEBASSEMBLY-NEXT:#define __ATOMIC_SEQ_CST 5
9597// WEBASSEMBLY-NEXT:#define __BIGGEST_ALIGNMENT__ 16
9598// WEBASSEMBLY-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9599// WEBASSEMBLY-NEXT:#define __CHAR16_TYPE__ unsigned short
9600// WEBASSEMBLY-NEXT:#define __CHAR32_TYPE__ unsigned int
9601// WEBASSEMBLY-NEXT:#define __CHAR_BIT__ 8
9602// WEBASSEMBLY-NOT:#define __CHAR_UNSIGNED__
9603// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9604// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9605// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9606// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9607// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9608// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9609// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9610// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9611// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9612// WEBASSEMBLY-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
9613// WEBASSEMBLY-NEXT:#define __CONSTANT_CFSTRINGS__ 1
9614// WEBASSEMBLY-NEXT:#define __DBL_DECIMAL_DIG__ 17
9615// WEBASSEMBLY-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9616// WEBASSEMBLY-NEXT:#define __DBL_DIG__ 15
9617// WEBASSEMBLY-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
9618// WEBASSEMBLY-NEXT:#define __DBL_HAS_DENORM__ 1
9619// WEBASSEMBLY-NEXT:#define __DBL_HAS_INFINITY__ 1
9620// WEBASSEMBLY-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
9621// WEBASSEMBLY-NEXT:#define __DBL_MANT_DIG__ 53
9622// WEBASSEMBLY-NEXT:#define __DBL_MAX_10_EXP__ 308
9623// WEBASSEMBLY-NEXT:#define __DBL_MAX_EXP__ 1024
9624// WEBASSEMBLY-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
9625// WEBASSEMBLY-NEXT:#define __DBL_MIN_10_EXP__ (-307)
9626// WEBASSEMBLY-NEXT:#define __DBL_MIN_EXP__ (-1021)
9627// WEBASSEMBLY-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
9628// WEBASSEMBLY-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
9629// WEBASSEMBLY-NOT:#define __ELF__
9630// WEBASSEMBLY-NEXT:#define __FINITE_MATH_ONLY__ 0
9631// WEBASSEMBLY-NEXT:#define __FLOAT128__ 1
9632// WEBASSEMBLY-NOT:#define __FLT16_DECIMAL_DIG__
9633// WEBASSEMBLY-NOT:#define __FLT16_DENORM_MIN__
9634// WEBASSEMBLY-NOT:#define __FLT16_DIG__
9635// WEBASSEMBLY-NOT:#define __FLT16_EPSILON__
9636// WEBASSEMBLY-NOT:#define __FLT16_HAS_DENORM__
9637// WEBASSEMBLY-NOT:#define __FLT16_HAS_INFINITY__
9638// WEBASSEMBLY-NOT:#define __FLT16_HAS_QUIET_NAN__
9639// WEBASSEMBLY-NOT:#define __FLT16_MANT_DIG__
9640// WEBASSEMBLY-NOT:#define __FLT16_MAX_10_EXP__
9641// WEBASSEMBLY-NOT:#define __FLT16_MAX_EXP__
9642// WEBASSEMBLY-NOT:#define __FLT16_MAX__
9643// WEBASSEMBLY-NOT:#define __FLT16_MIN_10_EXP__
9644// WEBASSEMBLY-NOT:#define __FLT16_MIN_EXP__
9645// WEBASSEMBLY-NOT:#define __FLT16_MIN__
9646// WEBASSEMBLY-NEXT:#define __FLT_DECIMAL_DIG__ 9
9647// WEBASSEMBLY-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9648// WEBASSEMBLY-NEXT:#define __FLT_DIG__ 6
9649// WEBASSEMBLY-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
9650// WEBASSEMBLY-NEXT:#define __FLT_EVAL_METHOD__ 0
9651// WEBASSEMBLY-NEXT:#define __FLT_HAS_DENORM__ 1
9652// WEBASSEMBLY-NEXT:#define __FLT_HAS_INFINITY__ 1
9653// WEBASSEMBLY-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
9654// WEBASSEMBLY-NEXT:#define __FLT_MANT_DIG__ 24
9655// WEBASSEMBLY-NEXT:#define __FLT_MAX_10_EXP__ 38
9656// WEBASSEMBLY-NEXT:#define __FLT_MAX_EXP__ 128
9657// WEBASSEMBLY-NEXT:#define __FLT_MAX__ 3.40282347e+38F
9658// WEBASSEMBLY-NEXT:#define __FLT_MIN_10_EXP__ (-37)
9659// WEBASSEMBLY-NEXT:#define __FLT_MIN_EXP__ (-125)
9660// WEBASSEMBLY-NEXT:#define __FLT_MIN__ 1.17549435e-38F
9661// WEBASSEMBLY-NEXT:#define __FLT_RADIX__ 2
9662// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9663// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9664// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9665// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9666// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9667// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9668// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9669// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9670// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9671// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9672// WEBASSEMBLY-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
9673// WEBASSEMBLY-NEXT:#define __GNUC_MINOR__ {{.*}}
9674// WEBASSEMBLY-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
9675// WEBASSEMBLY-NEXT:#define __GNUC_STDC_INLINE__ 1
9676// WEBASSEMBLY-NEXT:#define __GNUC__ {{.*}}
9677// WEBASSEMBLY-NEXT:#define __GXX_ABI_VERSION 1002
9678// WEBASSEMBLY32-NEXT:#define __ILP32__ 1
9679// WEBASSEMBLY64-NOT:#define __ILP32__
9680// WEBASSEMBLY-NEXT:#define __INT16_C_SUFFIX__
9681// WEBASSEMBLY-NEXT:#define __INT16_FMTd__ "hd"
9682// WEBASSEMBLY-NEXT:#define __INT16_FMTi__ "hi"
9683// WEBASSEMBLY-NEXT:#define __INT16_MAX__ 32767
9684// WEBASSEMBLY-NEXT:#define __INT16_TYPE__ short
9685// WEBASSEMBLY-NEXT:#define __INT32_C_SUFFIX__
9686// WEBASSEMBLY-NEXT:#define __INT32_FMTd__ "d"
9687// WEBASSEMBLY-NEXT:#define __INT32_FMTi__ "i"
9688// WEBASSEMBLY-NEXT:#define __INT32_MAX__ 2147483647
9689// WEBASSEMBLY-NEXT:#define __INT32_TYPE__ int
9690// WEBASSEMBLY-NEXT:#define __INT64_C_SUFFIX__ LL
9691// WEBASSEMBLY-NEXT:#define __INT64_FMTd__ "lld"
9692// WEBASSEMBLY-NEXT:#define __INT64_FMTi__ "lli"
9693// WEBASSEMBLY-NEXT:#define __INT64_MAX__ 9223372036854775807LL
9694// WEBASSEMBLY-NEXT:#define __INT64_TYPE__ long long int
9695// WEBASSEMBLY-NEXT:#define __INT8_C_SUFFIX__
9696// WEBASSEMBLY-NEXT:#define __INT8_FMTd__ "hhd"
9697// WEBASSEMBLY-NEXT:#define __INT8_FMTi__ "hhi"
9698// WEBASSEMBLY-NEXT:#define __INT8_MAX__ 127
9699// WEBASSEMBLY-NEXT:#define __INT8_TYPE__ signed char
9700// WEBASSEMBLY-NEXT:#define __INTMAX_C_SUFFIX__ LL
9701// WEBASSEMBLY-NEXT:#define __INTMAX_FMTd__ "lld"
9702// WEBASSEMBLY-NEXT:#define __INTMAX_FMTi__ "lli"
9703// WEBASSEMBLY-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
9704// WEBASSEMBLY-NEXT:#define __INTMAX_TYPE__ long long int
9705// WEBASSEMBLY-NEXT:#define __INTMAX_WIDTH__ 64
9706// WEBASSEMBLY-NEXT:#define __INTPTR_FMTd__ "ld"
9707// WEBASSEMBLY-NEXT:#define __INTPTR_FMTi__ "li"
9708// WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647L
9709// WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
9710// WEBASSEMBLY-NEXT:#define __INTPTR_TYPE__ long int
9711// WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
9712// WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
9713// WEBASSEMBLY-NEXT:#define __INT_FAST16_FMTd__ "hd"
9714// WEBASSEMBLY-NEXT:#define __INT_FAST16_FMTi__ "hi"
9715// WEBASSEMBLY-NEXT:#define __INT_FAST16_MAX__ 32767
9716// WEBASSEMBLY-NEXT:#define __INT_FAST16_TYPE__ short
9717// WEBASSEMBLY-NEXT:#define __INT_FAST32_FMTd__ "d"
9718// WEBASSEMBLY-NEXT:#define __INT_FAST32_FMTi__ "i"
9719// WEBASSEMBLY-NEXT:#define __INT_FAST32_MAX__ 2147483647
9720// WEBASSEMBLY-NEXT:#define __INT_FAST32_TYPE__ int
9721// WEBASSEMBLY-NEXT:#define __INT_FAST64_FMTd__ "lld"
9722// WEBASSEMBLY-NEXT:#define __INT_FAST64_FMTi__ "lli"
9723// WEBASSEMBLY-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
9724// WEBASSEMBLY-NEXT:#define __INT_FAST64_TYPE__ long long int
9725// WEBASSEMBLY-NEXT:#define __INT_FAST8_FMTd__ "hhd"
9726// WEBASSEMBLY-NEXT:#define __INT_FAST8_FMTi__ "hhi"
9727// WEBASSEMBLY-NEXT:#define __INT_FAST8_MAX__ 127
9728// WEBASSEMBLY-NEXT:#define __INT_FAST8_TYPE__ signed char
9729// WEBASSEMBLY-NEXT:#define __INT_LEAST16_FMTd__ "hd"
9730// WEBASSEMBLY-NEXT:#define __INT_LEAST16_FMTi__ "hi"
9731// WEBASSEMBLY-NEXT:#define __INT_LEAST16_MAX__ 32767
9732// WEBASSEMBLY-NEXT:#define __INT_LEAST16_TYPE__ short
9733// WEBASSEMBLY-NEXT:#define __INT_LEAST32_FMTd__ "d"
9734// WEBASSEMBLY-NEXT:#define __INT_LEAST32_FMTi__ "i"
9735// WEBASSEMBLY-NEXT:#define __INT_LEAST32_MAX__ 2147483647
9736// WEBASSEMBLY-NEXT:#define __INT_LEAST32_TYPE__ int
9737// WEBASSEMBLY-NEXT:#define __INT_LEAST64_FMTd__ "lld"
9738// WEBASSEMBLY-NEXT:#define __INT_LEAST64_FMTi__ "lli"
9739// WEBASSEMBLY-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9740// WEBASSEMBLY-NEXT:#define __INT_LEAST64_TYPE__ long long int
9741// WEBASSEMBLY-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9742// WEBASSEMBLY-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9743// WEBASSEMBLY-NEXT:#define __INT_LEAST8_MAX__ 127
9744// WEBASSEMBLY-NEXT:#define __INT_LEAST8_TYPE__ signed char
9745// WEBASSEMBLY-NEXT:#define __INT_MAX__ 2147483647
9746// WEBASSEMBLY-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9747// WEBASSEMBLY-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9748// WEBASSEMBLY-NEXT:#define __LDBL_DIG__ 33
9749// WEBASSEMBLY-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9750// WEBASSEMBLY-NEXT:#define __LDBL_HAS_DENORM__ 1
9751// WEBASSEMBLY-NEXT:#define __LDBL_HAS_INFINITY__ 1
9752// WEBASSEMBLY-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9753// WEBASSEMBLY-NEXT:#define __LDBL_MANT_DIG__ 113
9754// WEBASSEMBLY-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9755// WEBASSEMBLY-NEXT:#define __LDBL_MAX_EXP__ 16384
9756// WEBASSEMBLY-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9757// WEBASSEMBLY-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9758// WEBASSEMBLY-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9759// WEBASSEMBLY-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9760// WEBASSEMBLY-NEXT:#define __LITTLE_ENDIAN__ 1
9761// WEBASSEMBLY-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9762// WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
9763// WEBASSEMBLY32-NOT:#define __LP64__
9764// WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
9765// WEBASSEMBLY64-NEXT:#define __LP64__ 1
9766// WEBASSEMBLY-NEXT:#define __NO_INLINE__ 1
9767// WEBASSEMBLY-NEXT:#define __OBJC_BOOL_IS_BOOL 0
9768// WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES 3
9769// WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_DEVICE 2
9770// WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_SUB_GROUP 4
9771// WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_GROUP 1
9772// WEBASSEMBLY-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_ITEM 0
9773// WEBASSEMBLY-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9774// WEBASSEMBLY-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9775// WEBASSEMBLY-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9776// WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
9777// WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
9778// WEBASSEMBLY-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
9779// WEBASSEMBLY-NEXT:#define __PTRDIFF_FMTd__ "ld"
9780// WEBASSEMBLY-NEXT:#define __PTRDIFF_FMTi__ "li"
9781// WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647L
9782// WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
9783// WEBASSEMBLY-NEXT:#define __PTRDIFF_TYPE__ long int
9784// WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
9785// WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
9786// WEBASSEMBLY-NOT:#define __REGISTER_PREFIX__
9787// WEBASSEMBLY-NEXT:#define __SCHAR_MAX__ 127
9788// WEBASSEMBLY-NEXT:#define __SHRT_MAX__ 32767
9789// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
9790// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
9791// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
9792// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
9793// WEBASSEMBLY-NEXT:#define __SIZEOF_DOUBLE__ 8
9794// WEBASSEMBLY-NEXT:#define __SIZEOF_FLOAT__ 4
9795// WEBASSEMBLY-NEXT:#define __SIZEOF_INT128__ 16
9796// WEBASSEMBLY-NEXT:#define __SIZEOF_INT__ 4
9797// WEBASSEMBLY-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9798// WEBASSEMBLY-NEXT:#define __SIZEOF_LONG_LONG__ 8
9799// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
9800// WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
9801// WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
9802// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
9803// WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
9804// WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
9805// WEBASSEMBLY-NEXT:#define __SIZEOF_SHORT__ 2
9806// WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
9807// WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
9808// WEBASSEMBLY-NEXT:#define __SIZEOF_WCHAR_T__ 4
9809// WEBASSEMBLY-NEXT:#define __SIZEOF_WINT_T__ 4
9810// WEBASSEMBLY-NEXT:#define __SIZE_FMTX__ "lX"
9811// WEBASSEMBLY-NEXT:#define __SIZE_FMTo__ "lo"
9812// WEBASSEMBLY-NEXT:#define __SIZE_FMTu__ "lu"
9813// WEBASSEMBLY-NEXT:#define __SIZE_FMTx__ "lx"
9814// WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295UL
9815// WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
9816// WEBASSEMBLY-NEXT:#define __SIZE_TYPE__ long unsigned int
9817// WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
9818// WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
9819// WEBASSEMBLY-NEXT:#define __STDC_HOSTED__ 0
9820// WEBASSEMBLY-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9821// WEBASSEMBLY-NOT:#define __STDC_NO_ATOMICS__
9822// WEBASSEMBLY-NOT:#define __STDC_NO_COMPLEX__
9823// WEBASSEMBLY-NOT:#define __STDC_NO_VLA__
9824// WEBASSEMBLY-NOT:#define __STDC_NO_THREADS__
9825// WEBASSEMBLY-NEXT:#define __STDC_UTF_16__ 1
9826// WEBASSEMBLY-NEXT:#define __STDC_UTF_32__ 1
9827// WEBASSEMBLY-NEXT:#define __STDC_VERSION__ 201112L
9828// WEBASSEMBLY-NEXT:#define __STDC__ 1
9829// WEBASSEMBLY-NEXT:#define __UINT16_C_SUFFIX__
9830// WEBASSEMBLY-NEXT:#define __UINT16_FMTX__ "hX"
9831// WEBASSEMBLY-NEXT:#define __UINT16_FMTo__ "ho"
9832// WEBASSEMBLY-NEXT:#define __UINT16_FMTu__ "hu"
9833// WEBASSEMBLY-NEXT:#define __UINT16_FMTx__ "hx"
9834// WEBASSEMBLY-NEXT:#define __UINT16_MAX__ 65535
9835// WEBASSEMBLY-NEXT:#define __UINT16_TYPE__ unsigned short
9836// WEBASSEMBLY-NEXT:#define __UINT32_C_SUFFIX__ U
9837// WEBASSEMBLY-NEXT:#define __UINT32_FMTX__ "X"
9838// WEBASSEMBLY-NEXT:#define __UINT32_FMTo__ "o"
9839// WEBASSEMBLY-NEXT:#define __UINT32_FMTu__ "u"
9840// WEBASSEMBLY-NEXT:#define __UINT32_FMTx__ "x"
9841// WEBASSEMBLY-NEXT:#define __UINT32_MAX__ 4294967295U
9842// WEBASSEMBLY-NEXT:#define __UINT32_TYPE__ unsigned int
9843// WEBASSEMBLY-NEXT:#define __UINT64_C_SUFFIX__ ULL
9844// WEBASSEMBLY-NEXT:#define __UINT64_FMTX__ "llX"
9845// WEBASSEMBLY-NEXT:#define __UINT64_FMTo__ "llo"
9846// WEBASSEMBLY-NEXT:#define __UINT64_FMTu__ "llu"
9847// WEBASSEMBLY-NEXT:#define __UINT64_FMTx__ "llx"
9848// WEBASSEMBLY-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9849// WEBASSEMBLY-NEXT:#define __UINT64_TYPE__ long long unsigned int
9850// WEBASSEMBLY-NEXT:#define __UINT8_C_SUFFIX__
9851// WEBASSEMBLY-NEXT:#define __UINT8_FMTX__ "hhX"
9852// WEBASSEMBLY-NEXT:#define __UINT8_FMTo__ "hho"
9853// WEBASSEMBLY-NEXT:#define __UINT8_FMTu__ "hhu"
9854// WEBASSEMBLY-NEXT:#define __UINT8_FMTx__ "hhx"
9855// WEBASSEMBLY-NEXT:#define __UINT8_MAX__ 255
9856// WEBASSEMBLY-NEXT:#define __UINT8_TYPE__ unsigned char
9857// WEBASSEMBLY-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9858// WEBASSEMBLY-NEXT:#define __UINTMAX_FMTX__ "llX"
9859// WEBASSEMBLY-NEXT:#define __UINTMAX_FMTo__ "llo"
9860// WEBASSEMBLY-NEXT:#define __UINTMAX_FMTu__ "llu"
9861// WEBASSEMBLY-NEXT:#define __UINTMAX_FMTx__ "llx"
9862// WEBASSEMBLY-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9863// WEBASSEMBLY-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9864// WEBASSEMBLY-NEXT:#define __UINTMAX_WIDTH__ 64
9865// WEBASSEMBLY-NEXT:#define __UINTPTR_FMTX__ "lX"
9866// WEBASSEMBLY-NEXT:#define __UINTPTR_FMTo__ "lo"
9867// WEBASSEMBLY-NEXT:#define __UINTPTR_FMTu__ "lu"
9868// WEBASSEMBLY-NEXT:#define __UINTPTR_FMTx__ "lx"
9869// WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295UL
9870// WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
9871// WEBASSEMBLY-NEXT:#define __UINTPTR_TYPE__ long unsigned int
9872// WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
9873// WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
9874// WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9875// WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9876// WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9877// WEBASSEMBLY-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9878// WEBASSEMBLY-NEXT:#define __UINT_FAST16_MAX__ 65535
9879// WEBASSEMBLY-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9880// WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTX__ "X"
9881// WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTo__ "o"
9882// WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTu__ "u"
9883// WEBASSEMBLY-NEXT:#define __UINT_FAST32_FMTx__ "x"
9884// WEBASSEMBLY-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9885// WEBASSEMBLY-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9886// WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9887// WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9888// WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9889// WEBASSEMBLY-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9890// WEBASSEMBLY-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9891// WEBASSEMBLY-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9892// WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9893// WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9894// WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9895// WEBASSEMBLY-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9896// WEBASSEMBLY-NEXT:#define __UINT_FAST8_MAX__ 255
9897// WEBASSEMBLY-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9898// WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9899// WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9900// WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9901// WEBASSEMBLY-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9902// WEBASSEMBLY-NEXT:#define __UINT_LEAST16_MAX__ 65535
9903// WEBASSEMBLY-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9904// WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9905// WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9906// WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9907// WEBASSEMBLY-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9908// WEBASSEMBLY-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9909// WEBASSEMBLY-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9910// WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9911// WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9912// WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9913// WEBASSEMBLY-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9914// WEBASSEMBLY-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9915// WEBASSEMBLY-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9916// WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9917// WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9918// WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9919// WEBASSEMBLY-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9920// WEBASSEMBLY-NEXT:#define __UINT_LEAST8_MAX__ 255
9921// WEBASSEMBLY-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9922// WEBASSEMBLY-NEXT:#define __USER_LABEL_PREFIX__
9923// WEBASSEMBLY-NEXT:#define __VERSION__ "{{.*}}"
9924// WEBASSEMBLY-NEXT:#define __WCHAR_MAX__ 2147483647
9925// WEBASSEMBLY-NEXT:#define __WCHAR_TYPE__ int
9926// WEBASSEMBLY-NOT:#define __WCHAR_UNSIGNED__
9927// WEBASSEMBLY-NEXT:#define __WCHAR_WIDTH__ 32
9928// WEBASSEMBLY-NEXT:#define __WINT_MAX__ 2147483647
9929// WEBASSEMBLY-NEXT:#define __WINT_TYPE__ int
9930// WEBASSEMBLY-NOT:#define __WINT_UNSIGNED__
9931// WEBASSEMBLY-NEXT:#define __WINT_WIDTH__ 32
9932// WEBASSEMBLY-NEXT:#define __clang__ 1
9933// WEBASSEMBLY-NEXT:#define __clang_major__ {{.*}}
9934// WEBASSEMBLY-NEXT:#define __clang_minor__ {{.*}}
9935// WEBASSEMBLY-NEXT:#define __clang_patchlevel__ {{.*}}
9936// WEBASSEMBLY-NEXT:#define __clang_version__ "{{.*}}"
9937// WEBASSEMBLY-NEXT:#define __llvm__ 1
9938// WEBASSEMBLY-NOT:#define __unix
9939// WEBASSEMBLY-NOT:#define __unix__
9940// WEBASSEMBLY-WASI-NEXT:#define __wasi__ 1
9941// WEBASSEMBLY-NOT:#define __wasm_simd128__
9942// WEBASSEMBLY-NOT:#define __wasm_simd256__
9943// WEBASSEMBLY-NOT:#define __wasm_simd512__
9944// WEBASSEMBLY-NEXT:#define __wasm 1
9945// WEBASSEMBLY32-NEXT:#define __wasm32 1
9946// WEBASSEMBLY64-NOT:#define __wasm32
9947// WEBASSEMBLY32-NEXT:#define __wasm32__ 1
9948// WEBASSEMBLY64-NOT:#define __wasm32__
9949// WEBASSEMBLY32-NOT:#define __wasm64__
9950// WEBASSEMBLY32-NOT:#define __wasm64
9951// WEBASSEMBLY64-NEXT:#define __wasm64 1
9952// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
9953// WEBASSEMBLY-NEXT:#define __wasm__ 1
9954
9955// RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
9956// CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
9957
9958// RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
9959// CYGWIN-X64: #define __USER_LABEL_PREFIX__
9960
9961// RUN: %clang_cc1 -E -dM -ffreestanding -triple=avr \
9962// RUN:   < /dev/null \
9963// RUN:   | FileCheck -match-full-lines -check-prefix=AVR %s
9964//
9965// AVR:#define __ATOMIC_ACQUIRE 2
9966// AVR:#define __ATOMIC_ACQ_REL 4
9967// AVR:#define __ATOMIC_CONSUME 1
9968// AVR:#define __ATOMIC_RELAXED 0
9969// AVR:#define __ATOMIC_RELEASE 3
9970// AVR:#define __ATOMIC_SEQ_CST 5
9971// AVR:#define __AVR__ 1
9972// AVR:#define __BIGGEST_ALIGNMENT__ 1
9973// AVR:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9974// AVR:#define __CHAR16_TYPE__ unsigned int
9975// AVR:#define __CHAR32_TYPE__ long unsigned int
9976// AVR:#define __CHAR_BIT__ 8
9977// AVR:#define __DBL_DECIMAL_DIG__ 9
9978// AVR:#define __DBL_DENORM_MIN__ 1.40129846e-45
9979// AVR:#define __DBL_DIG__ 6
9980// AVR:#define __DBL_EPSILON__ 1.19209290e-7
9981// AVR:#define __DBL_HAS_DENORM__ 1
9982// AVR:#define __DBL_HAS_INFINITY__ 1
9983// AVR:#define __DBL_HAS_QUIET_NAN__ 1
9984// AVR:#define __DBL_MANT_DIG__ 24
9985// AVR:#define __DBL_MAX_10_EXP__ 38
9986// AVR:#define __DBL_MAX_EXP__ 128
9987// AVR:#define __DBL_MAX__ 3.40282347e+38
9988// AVR:#define __DBL_MIN_10_EXP__ (-37)
9989// AVR:#define __DBL_MIN_EXP__ (-125)
9990// AVR:#define __DBL_MIN__ 1.17549435e-38
9991// AVR:#define __FINITE_MATH_ONLY__ 0
9992// AVR:#define __FLT_DECIMAL_DIG__ 9
9993// AVR:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9994// AVR:#define __FLT_DIG__ 6
9995// AVR:#define __FLT_EPSILON__ 1.19209290e-7F
9996// AVR:#define __FLT_EVAL_METHOD__ 0
9997// AVR:#define __FLT_HAS_DENORM__ 1
9998// AVR:#define __FLT_HAS_INFINITY__ 1
9999// AVR:#define __FLT_HAS_QUIET_NAN__ 1
10000// AVR:#define __FLT_MANT_DIG__ 24
10001// AVR:#define __FLT_MAX_10_EXP__ 38
10002// AVR:#define __FLT_MAX_EXP__ 128
10003// AVR:#define __FLT_MAX__ 3.40282347e+38F
10004// AVR:#define __FLT_MIN_10_EXP__ (-37)
10005// AVR:#define __FLT_MIN_EXP__ (-125)
10006// AVR:#define __FLT_MIN__ 1.17549435e-38F
10007// AVR:#define __FLT_RADIX__ 2
10008// AVR:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1
10009// AVR:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
10010// AVR:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
10011// AVR:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1
10012// AVR:#define __GCC_ATOMIC_INT_LOCK_FREE 1
10013// AVR:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
10014// AVR:#define __GCC_ATOMIC_LONG_LOCK_FREE 1
10015// AVR:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1
10016// AVR:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1
10017// AVR:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
10018// AVR:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
10019// AVR:#define __GXX_ABI_VERSION 1002
10020// AVR:#define __INT16_C_SUFFIX__
10021// AVR:#define __INT16_MAX__ 32767
10022// AVR:#define __INT16_TYPE__ short
10023// AVR:#define __INT32_C_SUFFIX__ L
10024// AVR:#define __INT32_MAX__ 2147483647L
10025// AVR:#define __INT32_TYPE__ long int
10026// AVR:#define __INT64_C_SUFFIX__ LL
10027// AVR:#define __INT64_MAX__ 9223372036854775807LL
10028// AVR:#define __INT64_TYPE__ long long int
10029// AVR:#define __INT8_C_SUFFIX__
10030// AVR:#define __INT8_MAX__ 127
10031// AVR:#define __INT8_TYPE__ signed char
10032// AVR:#define __INTMAX_C_SUFFIX__ LL
10033// AVR:#define __INTMAX_MAX__ 9223372036854775807LL
10034// AVR:#define __INTMAX_TYPE__ long long int
10035// AVR:#define __INTPTR_MAX__ 32767
10036// AVR:#define __INTPTR_TYPE__ int
10037// AVR:#define __INT_FAST16_MAX__ 32767
10038// AVR:#define __INT_FAST16_TYPE__ int
10039// AVR:#define __INT_FAST32_MAX__ 2147483647L
10040// AVR:#define __INT_FAST32_TYPE__ long int
10041// AVR:#define __INT_FAST64_MAX__ 9223372036854775807LL
10042// AVR:#define __INT_FAST64_TYPE__ long long int
10043// AVR:#define __INT_FAST8_MAX__ 127
10044// AVR:#define __INT_FAST8_TYPE__ signed char
10045// AVR:#define __INT_LEAST16_MAX__ 32767
10046// AVR:#define __INT_LEAST16_TYPE__ int
10047// AVR:#define __INT_LEAST32_MAX__ 2147483647L
10048// AVR:#define __INT_LEAST32_TYPE__ long int
10049// AVR:#define __INT_LEAST64_MAX__ 9223372036854775807LL
10050// AVR:#define __INT_LEAST64_TYPE__ long long int
10051// AVR:#define __INT_LEAST8_MAX__ 127
10052// AVR:#define __INT_LEAST8_TYPE__ signed char
10053// AVR:#define __INT_MAX__ 32767
10054// AVR:#define __LDBL_DECIMAL_DIG__ 9
10055// AVR:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
10056// AVR:#define __LDBL_DIG__ 6
10057// AVR:#define __LDBL_EPSILON__ 1.19209290e-7L
10058// AVR:#define __LDBL_HAS_DENORM__ 1
10059// AVR:#define __LDBL_HAS_INFINITY__ 1
10060// AVR:#define __LDBL_HAS_QUIET_NAN__ 1
10061// AVR:#define __LDBL_MANT_DIG__ 24
10062// AVR:#define __LDBL_MAX_10_EXP__ 38
10063// AVR:#define __LDBL_MAX_EXP__ 128
10064// AVR:#define __LDBL_MAX__ 3.40282347e+38L
10065// AVR:#define __LDBL_MIN_10_EXP__ (-37)
10066// AVR:#define __LDBL_MIN_EXP__ (-125)
10067// AVR:#define __LDBL_MIN__ 1.17549435e-38L
10068// AVR:#define __LONG_LONG_MAX__ 9223372036854775807LL
10069// AVR:#define __LONG_MAX__ 2147483647L
10070// AVR:#define __NO_INLINE__ 1
10071// AVR:#define __ORDER_BIG_ENDIAN__ 4321
10072// AVR:#define __ORDER_LITTLE_ENDIAN__ 1234
10073// AVR:#define __ORDER_PDP_ENDIAN__ 3412
10074// AVR:#define __PRAGMA_REDEFINE_EXTNAME 1
10075// AVR:#define __PTRDIFF_MAX__ 32767
10076// AVR:#define __PTRDIFF_TYPE__ int
10077// AVR:#define __SCHAR_MAX__ 127
10078// AVR:#define __SHRT_MAX__ 32767
10079// AVR:#define __SIG_ATOMIC_MAX__ 127
10080// AVR:#define __SIG_ATOMIC_WIDTH__ 8
10081// AVR:#define __SIZEOF_DOUBLE__ 4
10082// AVR:#define __SIZEOF_FLOAT__ 4
10083// AVR:#define __SIZEOF_INT__ 2
10084// AVR:#define __SIZEOF_LONG_DOUBLE__ 4
10085// AVR:#define __SIZEOF_LONG_LONG__ 8
10086// AVR:#define __SIZEOF_LONG__ 4
10087// AVR:#define __SIZEOF_POINTER__ 2
10088// AVR:#define __SIZEOF_PTRDIFF_T__ 2
10089// AVR:#define __SIZEOF_SHORT__ 2
10090// AVR:#define __SIZEOF_SIZE_T__ 2
10091// AVR:#define __SIZEOF_WCHAR_T__ 2
10092// AVR:#define __SIZEOF_WINT_T__ 2
10093// AVR:#define __SIZE_MAX__ 65535U
10094// AVR:#define __SIZE_TYPE__ unsigned int
10095// AVR:#define __STDC__ 1
10096// AVR:#define __UINT16_MAX__ 65535U
10097// AVR:#define __UINT16_TYPE__ unsigned short
10098// AVR:#define __UINT32_C_SUFFIX__ UL
10099// AVR:#define __UINT32_MAX__ 4294967295UL
10100// AVR:#define __UINT32_TYPE__ long unsigned int
10101// AVR:#define __UINT64_C_SUFFIX__ ULL
10102// AVR:#define __UINT64_MAX__ 18446744073709551615ULL
10103// AVR:#define __UINT64_TYPE__ long long unsigned int
10104// AVR:#define __UINT8_C_SUFFIX__
10105// AVR:#define __UINT8_MAX__ 255
10106// AVR:#define __UINT8_TYPE__ unsigned char
10107// AVR:#define __UINTMAX_C_SUFFIX__ ULL
10108// AVR:#define __UINTMAX_MAX__ 18446744073709551615ULL
10109// AVR:#define __UINTMAX_TYPE__ long long unsigned int
10110// AVR:#define __UINTPTR_MAX__ 65535U
10111// AVR:#define __UINTPTR_TYPE__ unsigned int
10112// AVR:#define __UINT_FAST16_MAX__ 65535U
10113// AVR:#define __UINT_FAST16_TYPE__ unsigned int
10114// AVR:#define __UINT_FAST32_MAX__ 4294967295UL
10115// AVR:#define __UINT_FAST32_TYPE__ long unsigned int
10116// AVR:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
10117// AVR:#define __UINT_FAST64_TYPE__ long long unsigned int
10118// AVR:#define __UINT_FAST8_MAX__ 255
10119// AVR:#define __UINT_FAST8_TYPE__ unsigned char
10120// AVR:#define __UINT_LEAST16_MAX__ 65535U
10121// AVR:#define __UINT_LEAST16_TYPE__ unsigned int
10122// AVR:#define __UINT_LEAST32_MAX__ 4294967295UL
10123// AVR:#define __UINT_LEAST32_TYPE__ long unsigned int
10124// AVR:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
10125// AVR:#define __UINT_LEAST64_TYPE__ long long unsigned int
10126// AVR:#define __UINT_LEAST8_MAX__ 255
10127// AVR:#define __UINT_LEAST8_TYPE__ unsigned char
10128// AVR:#define __USER_LABEL_PREFIX__
10129// AVR:#define __WCHAR_MAX__ 32767
10130// AVR:#define __WCHAR_TYPE__ int
10131// AVR:#define __WINT_TYPE__ int
10132
10133
10134// RUN: %clang_cc1 -E -dM -ffreestanding \
10135// RUN:    -triple i686-windows-msvc -fms-compatibility -x c++ < /dev/null \
10136// RUN:  | FileCheck -match-full-lines -check-prefix MSVC-X32 %s
10137
10138// RUN: %clang_cc1 -E -dM -ffreestanding \
10139// RUN:    -triple x86_64-windows-msvc -fms-compatibility -x c++ < /dev/null \
10140// RUN:  | FileCheck -match-full-lines -check-prefix MSVC-X64 %s
10141
10142// MSVC-X32:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
10143// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
10144// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
10145// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
10146// MSVC-X32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
10147// MSVC-X32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
10148// MSVC-X32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
10149// MSVC-X32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
10150// MSVC-X32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
10151// MSVC-X32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
10152// MSVC-X32-NOT:#define __GCC_ATOMIC{{.*}}
10153// MSVC-X32:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
10154
10155// MSVC-X64:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
10156// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
10157// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
10158// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
10159// MSVC-X64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
10160// MSVC-X64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
10161// MSVC-X64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
10162// MSVC-X64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
10163// MSVC-X64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
10164// MSVC-X64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
10165// MSVC-X64-NOT:#define __GCC_ATOMIC{{.*}}
10166// MSVC-X64:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16ULL
10167
10168// RUN: %clang_cc1 -E -dM -ffreestanding                \
10169// RUN:   -triple=aarch64-apple-ios9 < /dev/null        \
10170// RUN: | FileCheck -check-prefix=DARWIN %s
10171// RUN: %clang_cc1 -E -dM -ffreestanding                \
10172// RUN:   -triple=aarch64-apple-macosx10.12 < /dev/null \
10173// RUN: | FileCheck -check-prefix=DARWIN %s
10174
10175// DARWIN:#define __STDC_NO_THREADS__ 1
10176
10177// RUN: %clang_cc1 -triple i386-apple-macosx -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix MACOS-32 %s
10178// RUN: %clang_cc1 -triple x86_64-apple-macosx -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix MACOS-64 %s
10179
10180// MACOS-32: #define __INTPTR_TYPE__ long int
10181// MACOS-32: #define __PTRDIFF_TYPE__ int
10182// MACOS-32: #define __SIZE_TYPE__ long unsigned int
10183
10184// MACOS-64: #define __INTPTR_TYPE__ long int
10185// MACOS-64: #define __PTRDIFF_TYPE__ long int
10186// MACOS-64: #define __SIZE_TYPE__ long unsigned int
10187
10188// RUN: %clang_cc1 -triple i386-apple-ios-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-32 %s
10189// RUN: %clang_cc1 -triple armv7-apple-ios -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-32 %s
10190// RUN: %clang_cc1 -triple x86_64-apple-ios-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-64 %s
10191// RUN: %clang_cc1 -triple arm64-apple-ios -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-64 %s
10192
10193// IOS-32: #define __INTPTR_TYPE__ long int
10194// IOS-32: #define __PTRDIFF_TYPE__ int
10195// IOS-32: #define __SIZE_TYPE__ long unsigned int
10196
10197// IOS-64: #define __INTPTR_TYPE__ long int
10198// IOS-64: #define __PTRDIFF_TYPE__ long int
10199// IOS-64: #define __SIZE_TYPE__ long unsigned int
10200
10201// RUN: %clang_cc1 -triple i386-apple-tvos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-32 %s
10202// RUN: %clang_cc1 -triple armv7-apple-tvos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-32 %s
10203// RUN: %clang_cc1 -triple x86_64-apple-tvos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-64 %s
10204// RUN: %clang_cc1 -triple arm64-apple-tvos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-64 %s
10205
10206// TVOS-32: #define __INTPTR_TYPE__ long int
10207// TVOS-32: #define __PTRDIFF_TYPE__ int
10208// TVOS-32: #define __SIZE_TYPE__ long unsigned int
10209
10210// TVOS-64: #define __INTPTR_TYPE__ long int
10211// TVOS-64: #define __PTRDIFF_TYPE__ long int
10212// TVOS-64: #define __SIZE_TYPE__ long unsigned int
10213
10214// RUN: %clang_cc1 -triple i386-apple-watchos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-32 %s
10215// RUN: %clang_cc1 -triple armv7k-apple-watchos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10216// RUN: %clang_cc1 -triple x86_64-apple-watchos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10217// RUN: %clang_cc1 -triple arm64-apple-watchos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10218
10219// WATCHOS-32: #define __INTPTR_TYPE__ long int
10220// WATCHOS-32: #define __PTRDIFF_TYPE__ int
10221// WATCHOS-32: #define __SIZE_TYPE__ long unsigned int
10222
10223// WATCHOS-64: #define __INTPTR_TYPE__ long int
10224// WATCHOS-64: #define __PTRDIFF_TYPE__ long int
10225// WATCHOS-64: #define __SIZE_TYPE__ long unsigned int
10226
10227// 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
10228// 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
10229
10230// ARM-DARWIN-BAREMETAL-32: #define __INTPTR_TYPE__ long int
10231// ARM-DARWIN-BAREMETAL-32: #define __PTRDIFF_TYPE__ int
10232// ARM-DARWIN-BAREMETAL-32: #define __SIZE_TYPE__ long unsigned int
10233
10234// ARM-DARWIN-BAREMETAL-64: #define __INTPTR_TYPE__ long int
10235// ARM-DARWIN-BAREMETAL-64: #define __PTRDIFF_TYPE__ long int
10236// ARM-DARWIN-BAREMETAL-64: #define __SIZE_TYPE__ long unsigned int
10237
10238// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32 < /dev/null \
10239// RUN:   | FileCheck -match-full-lines -check-prefix=RISCV32 %s
10240// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32-unknown-linux < /dev/null \
10241// RUN:   | FileCheck -match-full-lines -check-prefixes=RISCV32,RISCV32-LINUX %s
10242// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32 \
10243// RUN: -fforce-enable-int128 < /dev/null | FileCheck -match-full-lines \
10244// RUN: -check-prefixes=RISCV32,RISCV32-INT128 %s
10245// RISCV32: #define _ILP32 1
10246// RISCV32: #define __ATOMIC_ACQUIRE 2
10247// RISCV32: #define __ATOMIC_ACQ_REL 4
10248// RISCV32: #define __ATOMIC_CONSUME 1
10249// RISCV32: #define __ATOMIC_RELAXED 0
10250// RISCV32: #define __ATOMIC_RELEASE 3
10251// RISCV32: #define __ATOMIC_SEQ_CST 5
10252// RISCV32: #define __BIGGEST_ALIGNMENT__ 16
10253// RISCV32: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
10254// RISCV32: #define __CHAR16_TYPE__ unsigned short
10255// RISCV32: #define __CHAR32_TYPE__ unsigned int
10256// RISCV32: #define __CHAR_BIT__ 8
10257// RISCV32: #define __DBL_DECIMAL_DIG__ 17
10258// RISCV32: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
10259// RISCV32: #define __DBL_DIG__ 15
10260// RISCV32: #define __DBL_EPSILON__ 2.2204460492503131e-16
10261// RISCV32: #define __DBL_HAS_DENORM__ 1
10262// RISCV32: #define __DBL_HAS_INFINITY__ 1
10263// RISCV32: #define __DBL_HAS_QUIET_NAN__ 1
10264// RISCV32: #define __DBL_MANT_DIG__ 53
10265// RISCV32: #define __DBL_MAX_10_EXP__ 308
10266// RISCV32: #define __DBL_MAX_EXP__ 1024
10267// RISCV32: #define __DBL_MAX__ 1.7976931348623157e+308
10268// RISCV32: #define __DBL_MIN_10_EXP__ (-307)
10269// RISCV32: #define __DBL_MIN_EXP__ (-1021)
10270// RISCV32: #define __DBL_MIN__ 2.2250738585072014e-308
10271// RISCV32: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
10272// RISCV32: #define __ELF__ 1
10273// RISCV32: #define __FINITE_MATH_ONLY__ 0
10274// RISCV32: #define __FLT_DECIMAL_DIG__ 9
10275// RISCV32: #define __FLT_DENORM_MIN__ 1.40129846e-45F
10276// RISCV32: #define __FLT_DIG__ 6
10277// RISCV32: #define __FLT_EPSILON__ 1.19209290e-7F
10278// RISCV32: #define __FLT_EVAL_METHOD__ 0
10279// RISCV32: #define __FLT_HAS_DENORM__ 1
10280// RISCV32: #define __FLT_HAS_INFINITY__ 1
10281// RISCV32: #define __FLT_HAS_QUIET_NAN__ 1
10282// RISCV32: #define __FLT_MANT_DIG__ 24
10283// RISCV32: #define __FLT_MAX_10_EXP__ 38
10284// RISCV32: #define __FLT_MAX_EXP__ 128
10285// RISCV32: #define __FLT_MAX__ 3.40282347e+38F
10286// RISCV32: #define __FLT_MIN_10_EXP__ (-37)
10287// RISCV32: #define __FLT_MIN_EXP__ (-125)
10288// RISCV32: #define __FLT_MIN__ 1.17549435e-38F
10289// RISCV32: #define __FLT_RADIX__ 2
10290// RISCV32: #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
10291// RISCV32: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
10292// RISCV32: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
10293// RISCV32: #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
10294// RISCV32: #define __GCC_ATOMIC_INT_LOCK_FREE 1
10295// RISCV32: #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
10296// RISCV32: #define __GCC_ATOMIC_LONG_LOCK_FREE 1
10297// RISCV32: #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
10298// RISCV32: #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
10299// RISCV32: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
10300// RISCV32: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
10301// RISCV32: #define __GNUC_MINOR__ {{.*}}
10302// RISCV32: #define __GNUC_PATCHLEVEL__ {{.*}}
10303// RISCV32: #define __GNUC_STDC_INLINE__ 1
10304// RISCV32: #define __GNUC__ {{.*}}
10305// RISCV32: #define __GXX_ABI_VERSION {{.*}}
10306// RISCV32: #define __ILP32__ 1
10307// RISCV32: #define __INT16_C_SUFFIX__
10308// RISCV32: #define __INT16_MAX__ 32767
10309// RISCV32: #define __INT16_TYPE__ short
10310// RISCV32: #define __INT32_C_SUFFIX__
10311// RISCV32: #define __INT32_MAX__ 2147483647
10312// RISCV32: #define __INT32_TYPE__ int
10313// RISCV32: #define __INT64_C_SUFFIX__ LL
10314// RISCV32: #define __INT64_MAX__ 9223372036854775807LL
10315// RISCV32: #define __INT64_TYPE__ long long int
10316// RISCV32: #define __INT8_C_SUFFIX__
10317// RISCV32: #define __INT8_MAX__ 127
10318// RISCV32: #define __INT8_TYPE__ signed char
10319// RISCV32: #define __INTMAX_C_SUFFIX__ LL
10320// RISCV32: #define __INTMAX_MAX__ 9223372036854775807LL
10321// RISCV32: #define __INTMAX_TYPE__ long long int
10322// RISCV32: #define __INTMAX_WIDTH__ 64
10323// RISCV32: #define __INTPTR_MAX__ 2147483647
10324// RISCV32: #define __INTPTR_TYPE__ int
10325// RISCV32: #define __INTPTR_WIDTH__ 32
10326// TODO: RISC-V GCC defines INT_FAST16 as int
10327// RISCV32: #define __INT_FAST16_MAX__ 32767
10328// RISCV32: #define __INT_FAST16_TYPE__ short
10329// RISCV32: #define __INT_FAST32_MAX__ 2147483647
10330// RISCV32: #define __INT_FAST32_TYPE__ int
10331// RISCV32: #define __INT_FAST64_MAX__ 9223372036854775807LL
10332// RISCV32: #define __INT_FAST64_TYPE__ long long int
10333// TODO: RISC-V GCC defines INT_FAST8 as int
10334// RISCV32: #define __INT_FAST8_MAX__ 127
10335// RISCV32: #define __INT_FAST8_TYPE__ signed char
10336// RISCV32: #define __INT_LEAST16_MAX__ 32767
10337// RISCV32: #define __INT_LEAST16_TYPE__ short
10338// RISCV32: #define __INT_LEAST32_MAX__ 2147483647
10339// RISCV32: #define __INT_LEAST32_TYPE__ int
10340// RISCV32: #define __INT_LEAST64_MAX__ 9223372036854775807LL
10341// RISCV32: #define __INT_LEAST64_TYPE__ long long int
10342// RISCV32: #define __INT_LEAST8_MAX__ 127
10343// RISCV32: #define __INT_LEAST8_TYPE__ signed char
10344// RISCV32: #define __INT_MAX__ 2147483647
10345// RISCV32: #define __LDBL_DECIMAL_DIG__ 36
10346// RISCV32: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
10347// RISCV32: #define __LDBL_DIG__ 33
10348// RISCV32: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
10349// RISCV32: #define __LDBL_HAS_DENORM__ 1
10350// RISCV32: #define __LDBL_HAS_INFINITY__ 1
10351// RISCV32: #define __LDBL_HAS_QUIET_NAN__ 1
10352// RISCV32: #define __LDBL_MANT_DIG__ 113
10353// RISCV32: #define __LDBL_MAX_10_EXP__ 4932
10354// RISCV32: #define __LDBL_MAX_EXP__ 16384
10355// RISCV32: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
10356// RISCV32: #define __LDBL_MIN_10_EXP__ (-4931)
10357// RISCV32: #define __LDBL_MIN_EXP__ (-16381)
10358// RISCV32: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
10359// RISCV32: #define __LITTLE_ENDIAN__ 1
10360// RISCV32: #define __LONG_LONG_MAX__ 9223372036854775807LL
10361// RISCV32: #define __LONG_MAX__ 2147483647L
10362// RISCV32: #define __NO_INLINE__ 1
10363// RISCV32: #define __POINTER_WIDTH__ 32
10364// RISCV32: #define __PRAGMA_REDEFINE_EXTNAME 1
10365// RISCV32: #define __PTRDIFF_MAX__ 2147483647
10366// RISCV32: #define __PTRDIFF_TYPE__ int
10367// RISCV32: #define __PTRDIFF_WIDTH__ 32
10368// RISCV32: #define __SCHAR_MAX__ 127
10369// RISCV32: #define __SHRT_MAX__ 32767
10370// RISCV32: #define __SIG_ATOMIC_MAX__ 2147483647
10371// RISCV32: #define __SIG_ATOMIC_WIDTH__ 32
10372// RISCV32: #define __SIZEOF_DOUBLE__ 8
10373// RISCV32: #define __SIZEOF_FLOAT__ 4
10374// RISCV32-INT128: #define __SIZEOF_INT128__ 16
10375// RISCV32: #define __SIZEOF_INT__ 4
10376// RISCV32: #define __SIZEOF_LONG_DOUBLE__ 16
10377// RISCV32: #define __SIZEOF_LONG_LONG__ 8
10378// RISCV32: #define __SIZEOF_LONG__ 4
10379// RISCV32: #define __SIZEOF_POINTER__ 4
10380// RISCV32: #define __SIZEOF_PTRDIFF_T__ 4
10381// RISCV32: #define __SIZEOF_SHORT__ 2
10382// RISCV32: #define __SIZEOF_SIZE_T__ 4
10383// RISCV32: #define __SIZEOF_WCHAR_T__ 4
10384// RISCV32: #define __SIZEOF_WINT_T__ 4
10385// RISCV32: #define __SIZE_MAX__ 4294967295U
10386// RISCV32: #define __SIZE_TYPE__ unsigned int
10387// RISCV32: #define __SIZE_WIDTH__ 32
10388// RISCV32: #define __STDC_HOSTED__ 0
10389// RISCV32: #define __STDC_UTF_16__ 1
10390// RISCV32: #define __STDC_UTF_32__ 1
10391// RISCV32: #define __STDC_VERSION__ 201112L
10392// RISCV32: #define __STDC__ 1
10393// RISCV32: #define __UINT16_C_SUFFIX__
10394// RISCV32: #define __UINT16_MAX__ 65535
10395// RISCV32: #define __UINT16_TYPE__ unsigned short
10396// RISCV32: #define __UINT32_C_SUFFIX__ U
10397// RISCV32: #define __UINT32_MAX__ 4294967295U
10398// RISCV32: #define __UINT32_TYPE__ unsigned int
10399// RISCV32: #define __UINT64_C_SUFFIX__ ULL
10400// RISCV32: #define __UINT64_MAX__ 18446744073709551615ULL
10401// RISCV32: #define __UINT64_TYPE__ long long unsigned int
10402// RISCV32: #define __UINT8_C_SUFFIX__
10403// RISCV32: #define __UINT8_MAX__ 255
10404// RISCV32: #define __UINT8_TYPE__ unsigned char
10405// RISCV32: #define __UINTMAX_C_SUFFIX__ ULL
10406// RISCV32: #define __UINTMAX_MAX__ 18446744073709551615ULL
10407// RISCV32: #define __UINTMAX_TYPE__ long long unsigned int
10408// RISCV32: #define __UINTMAX_WIDTH__ 64
10409// RISCV32: #define __UINTPTR_MAX__ 4294967295U
10410// RISCV32: #define __UINTPTR_TYPE__ unsigned int
10411// RISCV32: #define __UINTPTR_WIDTH__ 32
10412// TODO: RISC-V GCC defines UINT_FAST16 to be unsigned int
10413// RISCV32: #define __UINT_FAST16_MAX__ 65535
10414// RISCV32: #define __UINT_FAST16_TYPE__ unsigned short
10415// RISCV32: #define __UINT_FAST32_MAX__ 4294967295U
10416// RISCV32: #define __UINT_FAST32_TYPE__ unsigned int
10417// RISCV32: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
10418// RISCV32: #define __UINT_FAST64_TYPE__ long long unsigned int
10419// TODO: RISC-V GCC defines UINT_FAST8 to be unsigned int
10420// RISCV32: #define __UINT_FAST8_MAX__ 255
10421// RISCV32: #define __UINT_FAST8_TYPE__ unsigned char
10422// RISCV32: #define __UINT_LEAST16_MAX__ 65535
10423// RISCV32: #define __UINT_LEAST16_TYPE__ unsigned short
10424// RISCV32: #define __UINT_LEAST32_MAX__ 4294967295U
10425// RISCV32: #define __UINT_LEAST32_TYPE__ unsigned int
10426// RISCV32: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
10427// RISCV32: #define __UINT_LEAST64_TYPE__ long long unsigned int
10428// RISCV32: #define __UINT_LEAST8_MAX__ 255
10429// RISCV32: #define __UINT_LEAST8_TYPE__ unsigned char
10430// RISCV32: #define __USER_LABEL_PREFIX__
10431// RISCV32: #define __WCHAR_MAX__ 2147483647
10432// RISCV32: #define __WCHAR_TYPE__ int
10433// RISCV32: #define __WCHAR_WIDTH__ 32
10434// RISCV32: #define __WINT_TYPE__ unsigned int
10435// RISCV32: #define __WINT_UNSIGNED__ 1
10436// RISCV32: #define __WINT_WIDTH__ 32
10437// RISCV32-LINUX: #define __gnu_linux__ 1
10438// RISCV32-LINUX: #define __linux 1
10439// RISCV32-LINUX: #define __linux__ 1
10440// RISCV32: #define __riscv 1
10441// RISCV32: #define __riscv_cmodel_medlow 1
10442// RISCV32: #define __riscv_float_abi_soft 1
10443// RISCV32: #define __riscv_xlen 32
10444// RISCV32-LINUX: #define __unix 1
10445// RISCV32-LINUX: #define __unix__ 1
10446// RISCV32-LINUX: #define linux 1
10447// RISCV32-LINUX: #define unix 1
10448
10449// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv64 < /dev/null \
10450// RUN:   | FileCheck -match-full-lines -check-prefix=RISCV64 %s
10451// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv64-unknown-linux < /dev/null \
10452// RUN:   | FileCheck -match-full-lines -check-prefixes=RISCV64,RISCV64-LINUX %s
10453// RISCV64: #define _LP64 1
10454// RISCV64: #define __ATOMIC_ACQUIRE 2
10455// RISCV64: #define __ATOMIC_ACQ_REL 4
10456// RISCV64: #define __ATOMIC_CONSUME 1
10457// RISCV64: #define __ATOMIC_RELAXED 0
10458// RISCV64: #define __ATOMIC_RELEASE 3
10459// RISCV64: #define __ATOMIC_SEQ_CST 5
10460// RISCV64: #define __BIGGEST_ALIGNMENT__ 16
10461// RISCV64: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
10462// RISCV64: #define __CHAR16_TYPE__ unsigned short
10463// RISCV64: #define __CHAR32_TYPE__ unsigned int
10464// RISCV64: #define __CHAR_BIT__ 8
10465// RISCV64: #define __DBL_DECIMAL_DIG__ 17
10466// RISCV64: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
10467// RISCV64: #define __DBL_DIG__ 15
10468// RISCV64: #define __DBL_EPSILON__ 2.2204460492503131e-16
10469// RISCV64: #define __DBL_HAS_DENORM__ 1
10470// RISCV64: #define __DBL_HAS_INFINITY__ 1
10471// RISCV64: #define __DBL_HAS_QUIET_NAN__ 1
10472// RISCV64: #define __DBL_MANT_DIG__ 53
10473// RISCV64: #define __DBL_MAX_10_EXP__ 308
10474// RISCV64: #define __DBL_MAX_EXP__ 1024
10475// RISCV64: #define __DBL_MAX__ 1.7976931348623157e+308
10476// RISCV64: #define __DBL_MIN_10_EXP__ (-307)
10477// RISCV64: #define __DBL_MIN_EXP__ (-1021)
10478// RISCV64: #define __DBL_MIN__ 2.2250738585072014e-308
10479// RISCV64: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
10480// RISCV64: #define __ELF__ 1
10481// RISCV64: #define __FINITE_MATH_ONLY__ 0
10482// RISCV64: #define __FLT_DECIMAL_DIG__ 9
10483// RISCV64: #define __FLT_DENORM_MIN__ 1.40129846e-45F
10484// RISCV64: #define __FLT_DIG__ 6
10485// RISCV64: #define __FLT_EPSILON__ 1.19209290e-7F
10486// RISCV64: #define __FLT_EVAL_METHOD__ 0
10487// RISCV64: #define __FLT_HAS_DENORM__ 1
10488// RISCV64: #define __FLT_HAS_INFINITY__ 1
10489// RISCV64: #define __FLT_HAS_QUIET_NAN__ 1
10490// RISCV64: #define __FLT_MANT_DIG__ 24
10491// RISCV64: #define __FLT_MAX_10_EXP__ 38
10492// RISCV64: #define __FLT_MAX_EXP__ 128
10493// RISCV64: #define __FLT_MAX__ 3.40282347e+38F
10494// RISCV64: #define __FLT_MIN_10_EXP__ (-37)
10495// RISCV64: #define __FLT_MIN_EXP__ (-125)
10496// RISCV64: #define __FLT_MIN__ 1.17549435e-38F
10497// RISCV64: #define __FLT_RADIX__ 2
10498// RISCV64: #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
10499// RISCV64: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
10500// RISCV64: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
10501// RISCV64: #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
10502// RISCV64: #define __GCC_ATOMIC_INT_LOCK_FREE 1
10503// RISCV64: #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
10504// RISCV64: #define __GCC_ATOMIC_LONG_LOCK_FREE 1
10505// RISCV64: #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
10506// RISCV64: #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
10507// RISCV64: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
10508// RISCV64: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
10509// RISCV64: #define __GNUC_MINOR__ {{.*}}
10510// RISCV64: #define __GNUC_PATCHLEVEL__ {{.*}}
10511// RISCV64: #define __GNUC_STDC_INLINE__ 1
10512// RISCV64: #define __GNUC__ {{.*}}
10513// RISCV64: #define __GXX_ABI_VERSION {{.*}}
10514// RISCV64: #define __INT16_C_SUFFIX__
10515// RISCV64: #define __INT16_MAX__ 32767
10516// RISCV64: #define __INT16_TYPE__ short
10517// RISCV64: #define __INT32_C_SUFFIX__
10518// RISCV64: #define __INT32_MAX__ 2147483647
10519// RISCV64: #define __INT32_TYPE__ int
10520// RISCV64: #define __INT64_C_SUFFIX__ L
10521// RISCV64: #define __INT64_MAX__ 9223372036854775807L
10522// RISCV64: #define __INT64_TYPE__ long int
10523// RISCV64: #define __INT8_C_SUFFIX__
10524// RISCV64: #define __INT8_MAX__ 127
10525// RISCV64: #define __INT8_TYPE__ signed char
10526// RISCV64: #define __INTMAX_C_SUFFIX__ L
10527// RISCV64: #define __INTMAX_MAX__ 9223372036854775807L
10528// RISCV64: #define __INTMAX_TYPE__ long int
10529// RISCV64: #define __INTMAX_WIDTH__ 64
10530// RISCV64: #define __INTPTR_MAX__ 9223372036854775807L
10531// RISCV64: #define __INTPTR_TYPE__ long int
10532// RISCV64: #define __INTPTR_WIDTH__ 64
10533// TODO: RISC-V GCC defines INT_FAST16 as int
10534// RISCV64: #define __INT_FAST16_MAX__ 32767
10535// RISCV64: #define __INT_FAST16_TYPE__ short
10536// RISCV64: #define __INT_FAST32_MAX__ 2147483647
10537// RISCV64: #define __INT_FAST32_TYPE__ int
10538// RISCV64: #define __INT_FAST64_MAX__ 9223372036854775807L
10539// RISCV64: #define __INT_FAST64_TYPE__ long int
10540// TODO: RISC-V GCC defines INT_FAST8 as int
10541// RISCV64: #define __INT_FAST8_MAX__ 127
10542// RISCV64: #define __INT_FAST8_TYPE__ signed char
10543// RISCV64: #define __INT_LEAST16_MAX__ 32767
10544// RISCV64: #define __INT_LEAST16_TYPE__ short
10545// RISCV64: #define __INT_LEAST32_MAX__ 2147483647
10546// RISCV64: #define __INT_LEAST32_TYPE__ int
10547// RISCV64: #define __INT_LEAST64_MAX__ 9223372036854775807L
10548// RISCV64: #define __INT_LEAST64_TYPE__ long int
10549// RISCV64: #define __INT_LEAST8_MAX__ 127
10550// RISCV64: #define __INT_LEAST8_TYPE__ signed char
10551// RISCV64: #define __INT_MAX__ 2147483647
10552// RISCV64: #define __LDBL_DECIMAL_DIG__ 36
10553// RISCV64: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
10554// RISCV64: #define __LDBL_DIG__ 33
10555// RISCV64: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
10556// RISCV64: #define __LDBL_HAS_DENORM__ 1
10557// RISCV64: #define __LDBL_HAS_INFINITY__ 1
10558// RISCV64: #define __LDBL_HAS_QUIET_NAN__ 1
10559// RISCV64: #define __LDBL_MANT_DIG__ 113
10560// RISCV64: #define __LDBL_MAX_10_EXP__ 4932
10561// RISCV64: #define __LDBL_MAX_EXP__ 16384
10562// RISCV64: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
10563// RISCV64: #define __LDBL_MIN_10_EXP__ (-4931)
10564// RISCV64: #define __LDBL_MIN_EXP__ (-16381)
10565// RISCV64: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
10566// RISCV64: #define __LITTLE_ENDIAN__ 1
10567// RISCV64: #define __LONG_LONG_MAX__ 9223372036854775807LL
10568// RISCV64: #define __LONG_MAX__ 9223372036854775807L
10569// RISCV64: #define __LP64__ 1
10570// RISCV64: #define __NO_INLINE__ 1
10571// RISCV64: #define __POINTER_WIDTH__ 64
10572// RISCV64: #define __PRAGMA_REDEFINE_EXTNAME 1
10573// RISCV64: #define __PTRDIFF_MAX__ 9223372036854775807L
10574// RISCV64: #define __PTRDIFF_TYPE__ long int
10575// RISCV64: #define __PTRDIFF_WIDTH__ 64
10576// RISCV64: #define __SCHAR_MAX__ 127
10577// RISCV64: #define __SHRT_MAX__ 32767
10578// RISCV64: #define __SIG_ATOMIC_MAX__ 2147483647
10579// RISCV64: #define __SIG_ATOMIC_WIDTH__ 32
10580// RISCV64: #define __SIZEOF_DOUBLE__ 8
10581// RISCV64: #define __SIZEOF_FLOAT__ 4
10582// RISCV64: #define __SIZEOF_INT__ 4
10583// RISCV64: #define __SIZEOF_LONG_DOUBLE__ 16
10584// RISCV64: #define __SIZEOF_LONG_LONG__ 8
10585// RISCV64: #define __SIZEOF_LONG__ 8
10586// RISCV64: #define __SIZEOF_POINTER__ 8
10587// RISCV64: #define __SIZEOF_PTRDIFF_T__ 8
10588// RISCV64: #define __SIZEOF_SHORT__ 2
10589// RISCV64: #define __SIZEOF_SIZE_T__ 8
10590// RISCV64: #define __SIZEOF_WCHAR_T__ 4
10591// RISCV64: #define __SIZEOF_WINT_T__ 4
10592// RISCV64: #define __SIZE_MAX__ 18446744073709551615UL
10593// RISCV64: #define __SIZE_TYPE__ long unsigned int
10594// RISCV64: #define __SIZE_WIDTH__ 64
10595// RISCV64: #define __STDC_HOSTED__ 0
10596// RISCV64: #define __STDC_UTF_16__ 1
10597// RISCV64: #define __STDC_UTF_32__ 1
10598// RISCV64: #define __STDC_VERSION__ 201112L
10599// RISCV64: #define __STDC__ 1
10600// RISCV64: #define __UINT16_C_SUFFIX__
10601// RISCV64: #define __UINT16_MAX__ 65535
10602// RISCV64: #define __UINT16_TYPE__ unsigned short
10603// RISCV64: #define __UINT32_C_SUFFIX__ U
10604// RISCV64: #define __UINT32_MAX__ 4294967295U
10605// RISCV64: #define __UINT32_TYPE__ unsigned int
10606// RISCV64: #define __UINT64_C_SUFFIX__ UL
10607// RISCV64: #define __UINT64_MAX__ 18446744073709551615UL
10608// RISCV64: #define __UINT64_TYPE__ long unsigned int
10609// RISCV64: #define __UINT8_C_SUFFIX__
10610// RISCV64: #define __UINT8_MAX__ 255
10611// RISCV64: #define __UINT8_TYPE__ unsigned char
10612// RISCV64: #define __UINTMAX_C_SUFFIX__ UL
10613// RISCV64: #define __UINTMAX_MAX__ 18446744073709551615UL
10614// RISCV64: #define __UINTMAX_TYPE__ long unsigned int
10615// RISCV64: #define __UINTMAX_WIDTH__ 64
10616// RISCV64: #define __UINTPTR_MAX__ 18446744073709551615UL
10617// RISCV64: #define __UINTPTR_TYPE__ long unsigned int
10618// RISCV64: #define __UINTPTR_WIDTH__ 64
10619// TODO: RISC-V GCC defines UINT_FAST16 to be unsigned int
10620// RISCV64: #define __UINT_FAST16_MAX__ 65535
10621// RISCV64: #define __UINT_FAST16_TYPE__ unsigned short
10622// RISCV64: #define __UINT_FAST32_MAX__ 4294967295U
10623// RISCV64: #define __UINT_FAST32_TYPE__ unsigned int
10624// RISCV64: #define __UINT_FAST64_MAX__ 18446744073709551615UL
10625// RISCV64: #define __UINT_FAST64_TYPE__ long unsigned int
10626// TODO: RISC-V GCC defines UINT_FAST8 to be unsigned int
10627// RISCV64: #define __UINT_FAST8_MAX__ 255
10628// RISCV64: #define __UINT_FAST8_TYPE__ unsigned char
10629// RISCV64: #define __UINT_LEAST16_MAX__ 65535
10630// RISCV64: #define __UINT_LEAST16_TYPE__ unsigned short
10631// RISCV64: #define __UINT_LEAST32_MAX__ 4294967295U
10632// RISCV64: #define __UINT_LEAST32_TYPE__ unsigned int
10633// RISCV64: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
10634// RISCV64: #define __UINT_LEAST64_TYPE__ long unsigned int
10635// RISCV64: #define __UINT_LEAST8_MAX__ 255
10636// RISCV64: #define __UINT_LEAST8_TYPE__ unsigned char
10637// RISCV64: #define __USER_LABEL_PREFIX__
10638// RISCV64: #define __WCHAR_MAX__ 2147483647
10639// RISCV64: #define __WCHAR_TYPE__ int
10640// RISCV64: #define __WCHAR_WIDTH__ 32
10641// RISCV64: #define __WINT_TYPE__ unsigned int
10642// RISCV64: #define __WINT_UNSIGNED__ 1
10643// RISCV64: #define __WINT_WIDTH__ 32
10644// RISCV64-LINUX: #define __gnu_linux__ 1
10645// RISCV64-LINUX: #define __linux 1
10646// RISCV64-LINUX: #define __linux__ 1
10647// RISCV64: #define __riscv 1
10648// RISCV64: #define __riscv_cmodel_medlow 1
10649// RISCV64: #define __riscv_float_abi_soft 1
10650// RISCV64: #define __riscv_xlen 64
10651// RISCV64-LINUX: #define __unix 1
10652// RISCV64-LINUX: #define __unix__ 1
10653// RISCV64-LINUX: #define linux 1
10654// RISCV64-LINUX: #define unix 1
10655