blob: 73590f703570a0664f56c2820c3889776b964203 [file] [log] [blame]
Daniel Dunbara5728872009-12-15 20:14:24 +00001// RUN: %clang_cc1 -E -dM -x assembler-with-cpp < /dev/null | FileCheck -check-prefix ASM %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00002//
3// ASM:#define __ASSEMBLER__ 1
4//
5//
Daniel Dunbara5728872009-12-15 20:14:24 +00006// RUN: %clang_cc1 -fblocks -E -dM < /dev/null | FileCheck -check-prefix BLOCKS %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00007//
8// BLOCKS:#define __BLOCKS__ 1
9// BLOCKS:#define __block __attribute__((__blocks__(byref)))
10//
11//
Richard Smith4e24f0f2013-01-02 12:01:23 +000012// RUN: %clang_cc1 -x c++ -std=c++11 -E -dM < /dev/null | FileCheck -check-prefix CXX11 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000013//
Richard Smith4e24f0f2013-01-02 12:01:23 +000014// CXX11:#define __GNUG__
15// CXX11:#define __GXX_EXPERIMENTAL_CXX0X__ 1
16// CXX11:#define __GXX_RTTI 1
17// CXX11:#define __GXX_WEAK__ 1
18// CXX11:#define __cplusplus 201103L
19// CXX11:#define __private_extern__ extern
Chris Lattnerbceaf862009-10-29 04:55:36 +000020//
21//
Daniel Dunbara5728872009-12-15 20:14:24 +000022// RUN: %clang_cc1 -x c++ -std=c++98 -E -dM < /dev/null | FileCheck -check-prefix CXX98 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000023//
Chris Lattnerbceaf862009-10-29 04:55:36 +000024// CXX98:#define __GNUG__
Dan Gohmancfeac342010-05-28 00:27:15 +000025// CXX98:#define __GXX_RTTI 1
Chris Lattnerbceaf862009-10-29 04:55:36 +000026// CXX98:#define __GXX_WEAK__ 1
27// CXX98:#define __cplusplus 199711L
28// CXX98:#define __private_extern__ extern
29//
30//
Chandler Carruthf8c247d2011-04-23 19:48:40 +000031// RUN: %clang_cc1 -fdeprecated-macro -E -dM < /dev/null | FileCheck -check-prefix DEPRECATED %s
32//
33// DEPRECATED:#define __DEPRECATED 1
34//
35//
Daniel Dunbara5728872009-12-15 20:14:24 +000036// RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -check-prefix C99 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000037//
38// C99:#define __STDC_VERSION__ 199901L
39// C99:#define __STRICT_ANSI__ 1
40//
41//
Daniel Dunbara5728872009-12-15 20:14:24 +000042// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix COMMON %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000043//
44// COMMON:#define __CONSTANT_CFSTRINGS__ 1
45// COMMON:#define __FINITE_MATH_ONLY__ 0
46// COMMON:#define __GNUC_MINOR__
47// COMMON:#define __GNUC_PATCHLEVEL__
48// COMMON:#define __GNUC_STDC_INLINE__ 1
49// COMMON:#define __GNUC__
50// COMMON:#define __GXX_ABI_VERSION
Dylan Noblesmith3b198a92012-07-27 18:34:31 +000051// COMMON:#define __ORDER_BIG_ENDIAN__ 4321
52// COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234
53// COMMON:#define __ORDER_PDP_ENDIAN__ 3412
Chris Lattnerbceaf862009-10-29 04:55:36 +000054// COMMON:#define __STDC_HOSTED__ 1
55// COMMON:#define __STDC_VERSION__
56// COMMON:#define __STDC__ 1
57// COMMON:#define __VERSION__
58// COMMON:#define __clang__ 1
Daniel Dunbarc4b8e922010-06-25 23:34:47 +000059// COMMON:#define __clang_major__ {{[0-9]+}}
60// COMMON:#define __clang_minor__ {{[0-9]+}}
61// COMMON:#define __clang_patchlevel__ {{[0-9]+}}
Douglas Gregorcf00ac82010-04-30 03:07:23 +000062// COMMON:#define __clang_version__
Chris Lattnerbceaf862009-10-29 04:55:36 +000063// COMMON:#define __llvm__ 1
64//
65//
Daniel Dunbara5728872009-12-15 20:14:24 +000066// RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -check-prefix FREESTANDING %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000067// FREESTANDING:#define __STDC_HOSTED__ 0
Richard Smith05134482012-05-03 22:18:20 +000068//
69//
70// RUN: %clang_cc1 -x c++ -std=gnu++11 -E -dM < /dev/null | FileCheck -check-prefix GXX11 %s
71//
72// GXX11:#define __GNUG__
73// GXX11:#define __GXX_WEAK__ 1
74// GXX11:#define __cplusplus 201103L
75// GXX11:#define __private_extern__ extern
76//
77//
Daniel Dunbara5728872009-12-15 20:14:24 +000078// RUN: %clang_cc1 -x c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -check-prefix GXX98 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000079//
Chris Lattnerbceaf862009-10-29 04:55:36 +000080// GXX98:#define __GNUG__
81// GXX98:#define __GXX_WEAK__ 1
Richard Smith05134482012-05-03 22:18:20 +000082// GXX98:#define __cplusplus 199711L
Chris Lattnerbceaf862009-10-29 04:55:36 +000083// GXX98:#define __private_extern__ extern
84//
85//
Daniel Dunbara5728872009-12-15 20:14:24 +000086// RUN: %clang_cc1 -std=iso9899:199409 -E -dM < /dev/null | FileCheck -check-prefix C94 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000087//
88// C94:#define __STDC_VERSION__ 199409L
89//
90//
David Chisnall11d3f4c2012-07-03 20:49:52 +000091// RUN: %clang_cc1 -fms-extensions -triple i686-pc-win32 -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -check-prefix MSEXT %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000092//
93// MSEXT-NOT:#define __STDC__
Douglas Gregor72283802010-08-06 12:37:52 +000094// MSEXT:#define _INTEGRAL_MAX_BITS 64
Chris Lattnerbceaf862009-10-29 04:55:36 +000095//
96//
Daniel Dunbara5728872009-12-15 20:14:24 +000097// RUN: %clang_cc1 -x objective-c -E -dM < /dev/null | FileCheck -check-prefix OBJC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000098//
99// OBJC:#define OBJC_NEW_PROPERTIES 1
Daniel Dunbarc5a97ec2009-11-17 07:07:28 +0000100// OBJC:#define __NEXT_RUNTIME__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +0000101// OBJC:#define __OBJC__ 1
102//
Daniel Dunbarc5a97ec2009-11-17 07:07:28 +0000103//
Daniel Dunbara5728872009-12-15 20:14:24 +0000104// RUN: %clang_cc1 -x objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -check-prefix OBJCGC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000105//
106// OBJCGC:#define __OBJC_GC__ 1
107//
108//
John McCalld1e40d52011-10-02 01:16:38 +0000109// RUN: %clang_cc1 -x objective-c -fobjc-exceptions -E -dM < /dev/null | FileCheck -check-prefix NONFRAGILE %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000110//
111// NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
112// NONFRAGILE:#define __OBJC2__ 1
113//
Dylan Noblesmithf23e8d22012-08-08 16:09:15 +0000114//
115// RUN: %clang_cc1 -O0 -E -dM < /dev/null | FileCheck -check-prefix O0 %s
116//
117// O0:#define __NO_INLINE__ 1
118// O0-NOT:#define __OPTIMIZE_SIZE__
119// O0-NOT:#define __OPTIMIZE__
120//
121//
122// RUN: %clang_cc1 -fno-inline -O3 -E -dM < /dev/null | FileCheck -check-prefix NO_INLINE %s
123//
124// NO_INLINE:#define __NO_INLINE__ 1
125// NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
126// NO_INLINE:#define __OPTIMIZE__
127//
128//
Daniel Dunbara5728872009-12-15 20:14:24 +0000129// RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -check-prefix O1 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000130//
Dylan Noblesmithf23e8d22012-08-08 16:09:15 +0000131// O1-NOT:#define __OPTIMIZE_SIZE__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000132// O1:#define __OPTIMIZE__ 1
133//
Dylan Noblesmithf23e8d22012-08-08 16:09:15 +0000134//
135// RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -check-prefix Os %s
136//
137// Os:#define __OPTIMIZE_SIZE__ 1
138// Os:#define __OPTIMIZE__ 1
139//
140//
141// RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -check-prefix Oz %s
142//
143// Oz:#define __OPTIMIZE_SIZE__ 1
144// Oz:#define __OPTIMIZE__ 1
145//
146//
Daniel Dunbara5728872009-12-15 20:14:24 +0000147// RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -check-prefix PASCAL %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000148//
149// PASCAL:#define __PASCAL_STRINGS__ 1
150//
151//
Daniel Dunbara5728872009-12-15 20:14:24 +0000152// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix SCHAR %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000153//
154// SCHAR:#define __STDC__ 1
155// SCHAR-NOT:#define __UNSIGNED_CHAR__
156// SCHAR:#define __clang__ 1
157//
Eli Friedman1d832432010-08-03 17:34:19 +0000158// RUN: %clang_cc1 -E -dM -fshort-wchar < /dev/null | FileCheck -check-prefix SHORTWCHAR %s
159//
160// SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
161// SHORTWCHAR: #define __WCHAR_MAX__ 65535U
162// SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
163// SHORTWCHAR: #define __WCHAR_WIDTH__ 16
164//
Daniel Dunbara5728872009-12-15 20:14:24 +0000165// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -check-prefix ARM %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000166//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000167// ARM-NOT:#define _LP64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000168// ARM:#define __APCS_32__ 1
169// ARM:#define __ARMEL__ 1
Daniel Dunbareac7c532009-12-18 18:42:37 +0000170// ARM:#define __ARM_ARCH_6J__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000171// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +0000172// ARM:#define __CHAR16_TYPE__ unsigned short
173// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000174// ARM:#define __CHAR_BIT__ 8
175// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
176// ARM:#define __DBL_DIG__ 15
177// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
178// ARM:#define __DBL_HAS_DENORM__ 1
179// ARM:#define __DBL_HAS_INFINITY__ 1
180// ARM:#define __DBL_HAS_QUIET_NAN__ 1
181// ARM:#define __DBL_MANT_DIG__ 53
182// ARM:#define __DBL_MAX_10_EXP__ 308
183// ARM:#define __DBL_MAX_EXP__ 1024
184// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
185// ARM:#define __DBL_MIN_10_EXP__ (-307)
186// ARM:#define __DBL_MIN_EXP__ (-1021)
187// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
188// ARM:#define __DECIMAL_DIG__ 17
189// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
190// ARM:#define __FLT_DIG__ 6
191// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
192// ARM:#define __FLT_EVAL_METHOD__ 0
193// ARM:#define __FLT_HAS_DENORM__ 1
194// ARM:#define __FLT_HAS_INFINITY__ 1
195// ARM:#define __FLT_HAS_QUIET_NAN__ 1
196// ARM:#define __FLT_MANT_DIG__ 24
197// ARM:#define __FLT_MAX_10_EXP__ 38
198// ARM:#define __FLT_MAX_EXP__ 128
199// ARM:#define __FLT_MAX__ 3.40282347e+38F
200// ARM:#define __FLT_MIN_10_EXP__ (-37)
201// ARM:#define __FLT_MIN_EXP__ (-125)
202// ARM:#define __FLT_MIN__ 1.17549435e-38F
203// ARM:#define __FLT_RADIX__ 2
204// ARM:#define __INT16_TYPE__ short
205// ARM:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000206// ARM:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000207// ARM:#define __INT64_TYPE__ long long int
208// ARM:#define __INT8_TYPE__ char
209// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000210// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000211// ARM:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000212// ARM:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000213// ARM:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000214// ARM:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +0000215// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +0000216// ARM:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +0000217// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnerbceaf862009-10-29 04:55:36 +0000218// ARM:#define __LDBL_HAS_DENORM__ 1
219// ARM:#define __LDBL_HAS_INFINITY__ 1
220// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
221// ARM:#define __LDBL_MANT_DIG__ 53
222// ARM:#define __LDBL_MAX_10_EXP__ 308
223// ARM:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +0000224// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnerbceaf862009-10-29 04:55:36 +0000225// ARM:#define __LDBL_MIN_10_EXP__ (-307)
226// ARM:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +0000227// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnerbceaf862009-10-29 04:55:36 +0000228// ARM:#define __LITTLE_ENDIAN__ 1
229// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
230// ARM:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000231// ARM-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000232// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000233// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000234// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +0000235// ARM:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000236// ARM:#define __SCHAR_MAX__ 127
237// ARM:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000238// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000239// ARM:#define __SIZEOF_DOUBLE__ 8
240// ARM:#define __SIZEOF_FLOAT__ 4
241// ARM:#define __SIZEOF_INT__ 4
242// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
243// ARM:#define __SIZEOF_LONG_LONG__ 8
244// ARM:#define __SIZEOF_LONG__ 4
245// ARM:#define __SIZEOF_POINTER__ 4
246// ARM:#define __SIZEOF_PTRDIFF_T__ 4
247// ARM:#define __SIZEOF_SHORT__ 2
248// ARM:#define __SIZEOF_SIZE_T__ 4
249// ARM:#define __SIZEOF_WCHAR_T__ 4
250// ARM:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000251// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000252// ARM:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000253// ARM:#define __THUMB_INTERWORK__ 1
Ken Dyck8241d732009-11-19 13:18:59 +0000254// ARM:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000255// ARM:#define __USER_LABEL_PREFIX__ _
James Molloya6d81f92011-11-23 13:35:08 +0000256// ARM:#define __WCHAR_MAX__ 4294967295U
257// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck63e65612009-11-19 15:47:58 +0000258// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000259// ARM:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000260// ARM:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000261// ARM:#define __arm 1
262// ARM:#define __arm__ 1
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000263
264// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi -target-feature +soft-float -target-feature +soft-float-abi < /dev/null | FileCheck -check-prefix ARMEABISOFTFP %s
265//
266// ARM-NOT:#define _LP64
267// ARMEABISOFTFP:#define __APCS_32__ 1
268// ARMEABISOFTFP:#define __ARMEL__ 1
269// ARMEABISOFTFP:#define __ARM_ARCH 6
270// ARMEABISOFTFP:#define __ARM_ARCH_6J__ 1
271// ARMEABISOFTFP:#define __ARM_EABI__ 1
272// ARMEABISOFTFP:#define __ARM_PCS 1
273// ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
274// ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
275// ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
276// ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
277// ARMEABISOFTFP:#define __CHAR_BIT__ 8
278// ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
279// ARMEABISOFTFP:#define __DBL_DIG__ 15
280// ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
281// ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
282// ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
283// ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
284// ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
285// ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
286// ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
287// ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
288// ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
289// ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
290// ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
291// ARMEABISOFTFP:#define __DECIMAL_DIG__ 17
292// ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
293// ARMEABISOFTFP:#define __FLT_DIG__ 6
294// ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
295// ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
296// ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
297// ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
298// ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
299// ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
300// ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
301// ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
302// ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
303// ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
304// ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
305// ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
306// ARMEABISOFTFP:#define __FLT_RADIX__ 2
307// ARMEABISOFTFP:#define __INT16_TYPE__ short
308// ARMEABISOFTFP:#define __INT32_TYPE__ int
309// ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
310// ARMEABISOFTFP:#define __INT64_TYPE__ long long int
311// ARMEABISOFTFP:#define __INT8_TYPE__ char
312// ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
313// ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
314// ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
315// ARMEABISOFTFP:#define __INTPTR_TYPE__ long int
316// ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
317// ARMEABISOFTFP:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +0000318// ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000319// ARMEABISOFTFP:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +0000320// ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000321// ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
322// ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
323// ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
324// ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
325// ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
326// ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +0000327// ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000328// ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
329// ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +0000330// ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000331// ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
332// ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
333// ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
334// ARMEABISOFTFP-NOT:#define __LP64__
335// ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
336// ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
337// ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
338// ARMEABISOFTFP:#define __REGISTER_PREFIX__
339// ARMEABISOFTFP:#define __SCHAR_MAX__ 127
340// ARMEABISOFTFP:#define __SHRT_MAX__ 32767
341// ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
342// ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
343// ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
344// ARMEABISOFTFP:#define __SIZEOF_INT__ 4
345// ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
346// ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
347// ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
348// ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
349// ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
350// ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
351// ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
352// ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
353// ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
354// ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
355// ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
356// ARMEABISOFTFP:#define __SOFTFP__ 1
357// ARMEABISOFTFP:#define __THUMB_INTERWORK__ 1
358// ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
359// ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
360// ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
361// ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
362// ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
363// ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
364// ARMEABISOFTFP:#define __WINT_WIDTH__ 32
365// ARMEABISOFTFP:#define __arm 1
366// ARMEABISOFTFP:#define __arm__ 1
367
368// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi < /dev/null | FileCheck -check-prefix ARMEABIHARDFP %s
369//
370// ARM-NOT:#define _LP64
371// ARMEABIHARDFP:#define __APCS_32__ 1
372// ARMEABIHARDFP:#define __ARMEL__ 1
373// ARMEABIHARDFP:#define __ARM_ARCH 6
374// ARMEABIHARDFP:#define __ARM_ARCH_6J__ 1
375// ARMEABIHARDFP:#define __ARM_EABI__ 1
376// ARMEABIHARDFP:#define __ARM_PCS 1
377// ARMEABIHARDFP:#define __ARM_PCS_VFP 1
378// ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
379// ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
380// ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
381// ARMEABIHARDFP:#define __CHAR_BIT__ 8
382// ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
383// ARMEABIHARDFP:#define __DBL_DIG__ 15
384// ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
385// ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
386// ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
387// ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
388// ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
389// ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
390// ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
391// ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
392// ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
393// ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
394// ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
395// ARMEABIHARDFP:#define __DECIMAL_DIG__ 17
396// ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
397// ARMEABIHARDFP:#define __FLT_DIG__ 6
398// ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
399// ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
400// ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
401// ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
402// ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
403// ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
404// ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
405// ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
406// ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
407// ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
408// ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
409// ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
410// ARMEABIHARDFP:#define __FLT_RADIX__ 2
411// ARMEABIHARDFP:#define __INT16_TYPE__ short
412// ARMEABIHARDFP:#define __INT32_TYPE__ int
413// ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
414// ARMEABIHARDFP:#define __INT64_TYPE__ long long int
415// ARMEABIHARDFP:#define __INT8_TYPE__ char
416// ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
417// ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
418// ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
419// ARMEABIHARDFP:#define __INTPTR_TYPE__ long int
420// ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
421// ARMEABIHARDFP:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +0000422// ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000423// ARMEABIHARDFP:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +0000424// ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000425// ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
426// ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
427// ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
428// ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
429// ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
430// ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +0000431// ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000432// ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
433// ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +0000434// ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikov3c7f5382012-09-08 08:45:10 +0000435// ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
436// ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
437// ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
438// ARMEABIHARDFP-NOT:#define __LP64__
439// ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
440// ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
441// ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
442// ARMEABIHARDFP:#define __REGISTER_PREFIX__
443// ARMEABIHARDFP:#define __SCHAR_MAX__ 127
444// ARMEABIHARDFP:#define __SHRT_MAX__ 32767
445// ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
446// ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
447// ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
448// ARMEABIHARDFP:#define __SIZEOF_INT__ 4
449// ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
450// ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
451// ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
452// ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
453// ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
454// ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
455// ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
456// ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
457// ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
458// ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
459// ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
460// ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
461// ARMEABIHARDFP:#define __THUMB_INTERWORK__ 1
462// ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
463// ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
464// ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
465// ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
466// ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
467// ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
468// ARMEABIHARDFP:#define __WINT_WIDTH__ 32
469// ARMEABIHARDFP:#define __arm 1
470// ARMEABIHARDFP:#define __arm__ 1
471
Chris Lattnerbceaf862009-10-29 04:55:36 +0000472//
Daniel Dunbara5728872009-12-15 20:14:24 +0000473// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -check-prefix I386 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000474//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000475// I386-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000476// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +0000477// I386:#define __CHAR16_TYPE__ unsigned short
478// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000479// I386:#define __CHAR_BIT__ 8
480// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
481// I386:#define __DBL_DIG__ 15
482// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
483// I386:#define __DBL_HAS_DENORM__ 1
484// I386:#define __DBL_HAS_INFINITY__ 1
485// I386:#define __DBL_HAS_QUIET_NAN__ 1
486// I386:#define __DBL_MANT_DIG__ 53
487// I386:#define __DBL_MAX_10_EXP__ 308
488// I386:#define __DBL_MAX_EXP__ 1024
489// I386:#define __DBL_MAX__ 1.7976931348623157e+308
490// I386:#define __DBL_MIN_10_EXP__ (-307)
491// I386:#define __DBL_MIN_EXP__ (-1021)
492// I386:#define __DBL_MIN__ 2.2250738585072014e-308
493// I386:#define __DECIMAL_DIG__ 21
494// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
495// I386:#define __FLT_DIG__ 6
496// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramerb4066692011-12-28 15:47:06 +0000497// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +0000498// I386:#define __FLT_HAS_DENORM__ 1
499// I386:#define __FLT_HAS_INFINITY__ 1
500// I386:#define __FLT_HAS_QUIET_NAN__ 1
501// I386:#define __FLT_MANT_DIG__ 24
502// I386:#define __FLT_MAX_10_EXP__ 38
503// I386:#define __FLT_MAX_EXP__ 128
504// I386:#define __FLT_MAX__ 3.40282347e+38F
505// I386:#define __FLT_MIN_10_EXP__ (-37)
506// I386:#define __FLT_MIN_EXP__ (-125)
507// I386:#define __FLT_MIN__ 1.17549435e-38F
508// I386:#define __FLT_RADIX__ 2
509// I386:#define __INT16_TYPE__ short
510// I386:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000511// I386:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000512// I386:#define __INT64_TYPE__ long long int
513// I386:#define __INT8_TYPE__ char
514// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000515// I386:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000516// I386:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000517// I386:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000518// I386:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000519// I386:#define __INT_MAX__ 2147483647
520// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
521// I386:#define __LDBL_DIG__ 18
522// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
523// I386:#define __LDBL_HAS_DENORM__ 1
524// I386:#define __LDBL_HAS_INFINITY__ 1
525// I386:#define __LDBL_HAS_QUIET_NAN__ 1
526// I386:#define __LDBL_MANT_DIG__ 64
527// I386:#define __LDBL_MAX_10_EXP__ 4932
528// I386:#define __LDBL_MAX_EXP__ 16384
529// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
530// I386:#define __LDBL_MIN_10_EXP__ (-4931)
531// I386:#define __LDBL_MIN_EXP__ (-16381)
532// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
533// I386:#define __LITTLE_ENDIAN__ 1
534// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
535// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000536// I386-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000537// I386:#define __NO_MATH_INLINES 1
538// I386:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000539// I386:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000540// I386:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000541// I386:#define __REGISTER_PREFIX__
542// I386:#define __SCHAR_MAX__ 127
543// I386:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000544// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000545// I386:#define __SIZEOF_DOUBLE__ 8
546// I386:#define __SIZEOF_FLOAT__ 4
547// I386:#define __SIZEOF_INT__ 4
548// I386:#define __SIZEOF_LONG_DOUBLE__ 12
549// I386:#define __SIZEOF_LONG_LONG__ 8
550// I386:#define __SIZEOF_LONG__ 4
551// I386:#define __SIZEOF_POINTER__ 4
552// I386:#define __SIZEOF_PTRDIFF_T__ 4
553// I386:#define __SIZEOF_SHORT__ 2
554// I386:#define __SIZEOF_SIZE_T__ 4
555// I386:#define __SIZEOF_WCHAR_T__ 4
556// I386:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000557// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000558// I386:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000559// I386:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000560// I386:#define __USER_LABEL_PREFIX__ _
561// I386:#define __WCHAR_MAX__ 2147483647
562// I386:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000563// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000564// I386:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000565// I386:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000566// I386:#define __i386 1
567// I386:#define __i386__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +0000568// I386:#define i386 1
569//
Benjamin Kramerb4066692011-12-28 15:47:06 +0000570// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -check-prefix I386-LINUX %s
Douglas Gregor12e84642011-01-12 21:19:25 +0000571//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000572// I386-LINUX-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000573// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregor12e84642011-01-12 21:19:25 +0000574// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
575// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
576// I386-LINUX:#define __CHAR_BIT__ 8
577// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
578// I386-LINUX:#define __DBL_DIG__ 15
579// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
580// I386-LINUX:#define __DBL_HAS_DENORM__ 1
581// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
582// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
583// I386-LINUX:#define __DBL_MANT_DIG__ 53
584// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
585// I386-LINUX:#define __DBL_MAX_EXP__ 1024
586// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
587// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
588// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
589// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
590// I386-LINUX:#define __DECIMAL_DIG__ 21
591// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
592// I386-LINUX:#define __FLT_DIG__ 6
593// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
594// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
595// I386-LINUX:#define __FLT_HAS_DENORM__ 1
596// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
597// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
598// I386-LINUX:#define __FLT_MANT_DIG__ 24
599// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
600// I386-LINUX:#define __FLT_MAX_EXP__ 128
601// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
602// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
603// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
604// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
605// I386-LINUX:#define __FLT_RADIX__ 2
606// I386-LINUX:#define __INT16_TYPE__ short
607// I386-LINUX:#define __INT32_TYPE__ int
608// I386-LINUX:#define __INT64_C_SUFFIX__ LL
609// I386-LINUX:#define __INT64_TYPE__ long long int
610// I386-LINUX:#define __INT8_TYPE__ char
611// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
612// I386-LINUX:#define __INTMAX_TYPE__ long long int
613// I386-LINUX:#define __INTMAX_WIDTH__ 64
614// I386-LINUX:#define __INTPTR_TYPE__ int
615// I386-LINUX:#define __INTPTR_WIDTH__ 32
616// I386-LINUX:#define __INT_MAX__ 2147483647
617// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
618// I386-LINUX:#define __LDBL_DIG__ 18
619// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
620// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
621// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
622// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
623// I386-LINUX:#define __LDBL_MANT_DIG__ 64
624// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
625// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
626// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
627// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
628// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
629// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
630// I386-LINUX:#define __LITTLE_ENDIAN__ 1
631// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
632// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000633// I386-LINUX-NOT:#define __LP64__
Douglas Gregor12e84642011-01-12 21:19:25 +0000634// I386-LINUX:#define __NO_MATH_INLINES 1
635// I386-LINUX:#define __POINTER_WIDTH__ 32
636// I386-LINUX:#define __PTRDIFF_TYPE__ int
637// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
638// I386-LINUX:#define __REGISTER_PREFIX__
639// I386-LINUX:#define __SCHAR_MAX__ 127
640// I386-LINUX:#define __SHRT_MAX__ 32767
641// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
642// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
643// I386-LINUX:#define __SIZEOF_FLOAT__ 4
644// I386-LINUX:#define __SIZEOF_INT__ 4
645// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
646// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
647// I386-LINUX:#define __SIZEOF_LONG__ 4
648// I386-LINUX:#define __SIZEOF_POINTER__ 4
649// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
650// I386-LINUX:#define __SIZEOF_SHORT__ 2
651// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
652// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
653// I386-LINUX:#define __SIZEOF_WINT_T__ 4
654// I386-LINUX:#define __SIZE_TYPE__ unsigned int
655// I386-LINUX:#define __SIZE_WIDTH__ 32
656// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
657// I386-LINUX:#define __USER_LABEL_PREFIX__
658// I386-LINUX:#define __WCHAR_MAX__ 2147483647
659// I386-LINUX:#define __WCHAR_TYPE__ int
660// I386-LINUX:#define __WCHAR_WIDTH__ 32
661// I386-LINUX:#define __WINT_TYPE__ unsigned int
662// I386-LINUX:#define __WINT_WIDTH__ 32
663// I386-LINUX:#define __i386 1
664// I386-LINUX:#define __i386__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +0000665// I386-LINUX:#define i386 1
666//
Simon Atanasyan7a521802012-04-06 08:37:24 +0000667// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -check-prefix MIPS32BE %s
668//
669// MIPS32BE:#define MIPSEB 1
670// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000671// MIPS32BE-NOT:#define _LP64
Simon Atanasyan7a521802012-04-06 08:37:24 +0000672// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan260e5062012-08-29 15:17:29 +0000673// MIPS32BE:#define _MIPS_ARCH "mips32"
674// MIPS32BE:#define _MIPS_ARCH_MIPS32 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000675// MIPS32BE:#define _MIPS_SIM _ABIO32
676// MIPS32BE:#define _MIPS_SZINT 32
677// MIPS32BE:#define _MIPS_SZLONG 32
678// MIPS32BE:#define _MIPS_SZPTR 32
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000679// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000680// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
681// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
682// MIPS32BE:#define __CHAR_BIT__ 8
683// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
684// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
685// MIPS32BE:#define __DBL_DIG__ 15
686// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
687// MIPS32BE:#define __DBL_HAS_DENORM__ 1
688// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
689// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
690// MIPS32BE:#define __DBL_MANT_DIG__ 53
691// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
692// MIPS32BE:#define __DBL_MAX_EXP__ 1024
693// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
694// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
695// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
696// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
697// MIPS32BE:#define __DECIMAL_DIG__ 17
698// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
699// MIPS32BE:#define __FLT_DIG__ 6
700// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
701// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
702// MIPS32BE:#define __FLT_HAS_DENORM__ 1
703// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
704// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
705// MIPS32BE:#define __FLT_MANT_DIG__ 24
706// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
707// MIPS32BE:#define __FLT_MAX_EXP__ 128
708// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
709// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
710// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
711// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
712// MIPS32BE:#define __FLT_RADIX__ 2
713// MIPS32BE:#define __INT16_TYPE__ short
714// MIPS32BE:#define __INT32_TYPE__ int
715// MIPS32BE:#define __INT64_C_SUFFIX__ LL
716// MIPS32BE:#define __INT64_TYPE__ long long int
717// MIPS32BE:#define __INT8_TYPE__ char
718// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
719// MIPS32BE:#define __INTMAX_TYPE__ long long int
720// MIPS32BE:#define __INTMAX_WIDTH__ 64
721// MIPS32BE:#define __INTPTR_TYPE__ long int
722// MIPS32BE:#define __INTPTR_WIDTH__ 32
723// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +0000724// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyan7a521802012-04-06 08:37:24 +0000725// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +0000726// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyan7a521802012-04-06 08:37:24 +0000727// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
728// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
729// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
730// MIPS32BE:#define __LDBL_MANT_DIG__ 53
731// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
732// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +0000733// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyan7a521802012-04-06 08:37:24 +0000734// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
735// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +0000736// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyan7a521802012-04-06 08:37:24 +0000737// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
738// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000739// MIPS32BE-NOT:#define __LP64__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000740// MIPS32BE:#define __MIPSEB 1
741// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000742// MIPS32BE:#define __POINTER_WIDTH__ 32
743// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
744// MIPS32BE:#define __PTRDIFF_TYPE__ int
745// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
746// MIPS32BE:#define __REGISTER_PREFIX__
747// MIPS32BE:#define __SCHAR_MAX__ 127
748// MIPS32BE:#define __SHRT_MAX__ 32767
749// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
750// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
751// MIPS32BE:#define __SIZEOF_FLOAT__ 4
752// MIPS32BE:#define __SIZEOF_INT__ 4
753// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
754// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
755// MIPS32BE:#define __SIZEOF_LONG__ 4
756// MIPS32BE:#define __SIZEOF_POINTER__ 4
757// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
758// MIPS32BE:#define __SIZEOF_SHORT__ 2
759// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
760// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
761// MIPS32BE:#define __SIZEOF_WINT_T__ 4
762// MIPS32BE:#define __SIZE_TYPE__ unsigned int
763// MIPS32BE:#define __SIZE_WIDTH__ 32
764// MIPS32BE:#define __STDC_HOSTED__ 0
765// MIPS32BE:#define __STDC_VERSION__ 199901L
766// MIPS32BE:#define __STDC__ 1
767// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
768// MIPS32BE:#define __USER_LABEL_PREFIX__ _
769// MIPS32BE:#define __WCHAR_MAX__ 2147483647
770// MIPS32BE:#define __WCHAR_TYPE__ int
771// MIPS32BE:#define __WCHAR_WIDTH__ 32
772// MIPS32BE:#define __WINT_TYPE__ int
773// MIPS32BE:#define __WINT_WIDTH__ 32
774// MIPS32BE:#define __clang__ 1
775// MIPS32BE:#define __llvm__ 1
776// MIPS32BE:#define __mips 1
777// MIPS32BE:#define __mips__ 1
778// MIPS32BE:#define __mips_hard_float 1
779// MIPS32BE:#define __mips_o32 1
780// MIPS32BE:#define _mips 1
781// MIPS32BE:#define mips 1
782//
783// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mipsel-none-none < /dev/null | FileCheck -check-prefix MIPS32EL %s
784//
785// MIPS32EL:#define MIPSEL 1
786// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000787// MIPS32EL-NOT:#define _LP64
Simon Atanasyan7a521802012-04-06 08:37:24 +0000788// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan260e5062012-08-29 15:17:29 +0000789// MIPS32EL:#define _MIPS_ARCH "mips32"
790// MIPS32EL:#define _MIPS_ARCH_MIPS32 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000791// MIPS32EL:#define _MIPS_SIM _ABIO32
792// MIPS32EL:#define _MIPS_SZINT 32
793// MIPS32EL:#define _MIPS_SZLONG 32
794// MIPS32EL:#define _MIPS_SZPTR 32
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000795// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000796// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
797// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
798// MIPS32EL:#define __CHAR_BIT__ 8
799// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
800// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
801// MIPS32EL:#define __DBL_DIG__ 15
802// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
803// MIPS32EL:#define __DBL_HAS_DENORM__ 1
804// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
805// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
806// MIPS32EL:#define __DBL_MANT_DIG__ 53
807// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
808// MIPS32EL:#define __DBL_MAX_EXP__ 1024
809// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
810// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
811// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
812// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
813// MIPS32EL:#define __DECIMAL_DIG__ 17
814// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
815// MIPS32EL:#define __FLT_DIG__ 6
816// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
817// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
818// MIPS32EL:#define __FLT_HAS_DENORM__ 1
819// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
820// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
821// MIPS32EL:#define __FLT_MANT_DIG__ 24
822// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
823// MIPS32EL:#define __FLT_MAX_EXP__ 128
824// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
825// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
826// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
827// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
828// MIPS32EL:#define __FLT_RADIX__ 2
829// MIPS32EL:#define __INT16_TYPE__ short
830// MIPS32EL:#define __INT32_TYPE__ int
831// MIPS32EL:#define __INT64_C_SUFFIX__ LL
832// MIPS32EL:#define __INT64_TYPE__ long long int
833// MIPS32EL:#define __INT8_TYPE__ char
834// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
835// MIPS32EL:#define __INTMAX_TYPE__ long long int
836// MIPS32EL:#define __INTMAX_WIDTH__ 64
837// MIPS32EL:#define __INTPTR_TYPE__ long int
838// MIPS32EL:#define __INTPTR_WIDTH__ 32
839// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +0000840// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyan7a521802012-04-06 08:37:24 +0000841// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +0000842// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyan7a521802012-04-06 08:37:24 +0000843// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
844// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
845// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
846// MIPS32EL:#define __LDBL_MANT_DIG__ 53
847// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
848// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +0000849// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyan7a521802012-04-06 08:37:24 +0000850// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
851// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +0000852// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyan7a521802012-04-06 08:37:24 +0000853// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
854// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000855// MIPS32EL-NOT:#define __LP64__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000856// MIPS32EL:#define __MIPSEL 1
857// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000858// MIPS32EL:#define __POINTER_WIDTH__ 32
859// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
860// MIPS32EL:#define __PTRDIFF_TYPE__ int
861// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
862// MIPS32EL:#define __REGISTER_PREFIX__
863// MIPS32EL:#define __SCHAR_MAX__ 127
864// MIPS32EL:#define __SHRT_MAX__ 32767
865// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
866// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
867// MIPS32EL:#define __SIZEOF_FLOAT__ 4
868// MIPS32EL:#define __SIZEOF_INT__ 4
869// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
870// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
871// MIPS32EL:#define __SIZEOF_LONG__ 4
872// MIPS32EL:#define __SIZEOF_POINTER__ 4
873// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
874// MIPS32EL:#define __SIZEOF_SHORT__ 2
875// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
876// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
877// MIPS32EL:#define __SIZEOF_WINT_T__ 4
878// MIPS32EL:#define __SIZE_TYPE__ unsigned int
879// MIPS32EL:#define __SIZE_WIDTH__ 32
880// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
881// MIPS32EL:#define __USER_LABEL_PREFIX__ _
882// MIPS32EL:#define __WCHAR_MAX__ 2147483647
883// MIPS32EL:#define __WCHAR_TYPE__ int
884// MIPS32EL:#define __WCHAR_WIDTH__ 32
885// MIPS32EL:#define __WINT_TYPE__ int
886// MIPS32EL:#define __WINT_WIDTH__ 32
887// MIPS32EL:#define __clang__ 1
888// MIPS32EL:#define __llvm__ 1
889// MIPS32EL:#define __mips 1
890// MIPS32EL:#define __mips__ 1
891// MIPS32EL:#define __mips_hard_float 1
892// MIPS32EL:#define __mips_o32 1
893// MIPS32EL:#define _mips 1
894// MIPS32EL:#define mips 1
895//
896// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -check-prefix MIPS64BE %s
897//
898// MIPS64BE:#define MIPSEB 1
899// MIPS64BE:#define _ABI64 3
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000900// MIPS64BE:#define _LP64 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000901// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan260e5062012-08-29 15:17:29 +0000902// MIPS64BE:#define _MIPS_ARCH "mips64"
903// MIPS64BE:#define _MIPS_ARCH_MIPS64 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000904// MIPS64BE:#define _MIPS_SIM _ABI64
905// MIPS64BE:#define _MIPS_SZINT 32
906// MIPS64BE:#define _MIPS_SZLONG 64
907// MIPS64BE:#define _MIPS_SZPTR 64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000908// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000909// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
910// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
911// MIPS64BE:#define __CHAR_BIT__ 8
912// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
913// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
914// MIPS64BE:#define __DBL_DIG__ 15
915// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
916// MIPS64BE:#define __DBL_HAS_DENORM__ 1
917// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
918// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
919// MIPS64BE:#define __DBL_MANT_DIG__ 53
920// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
921// MIPS64BE:#define __DBL_MAX_EXP__ 1024
922// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
923// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
924// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
925// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
926// MIPS64BE:#define __DECIMAL_DIG__ 36
927// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
928// MIPS64BE:#define __FLT_DIG__ 6
929// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
930// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
931// MIPS64BE:#define __FLT_HAS_DENORM__ 1
932// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
933// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
934// MIPS64BE:#define __FLT_MANT_DIG__ 24
935// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
936// MIPS64BE:#define __FLT_MAX_EXP__ 128
937// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
938// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
939// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
940// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
941// MIPS64BE:#define __FLT_RADIX__ 2
942// MIPS64BE:#define __INT16_TYPE__ short
943// MIPS64BE:#define __INT32_TYPE__ int
944// MIPS64BE:#define __INT64_C_SUFFIX__ LL
945// MIPS64BE:#define __INT64_TYPE__ long long int
946// MIPS64BE:#define __INT8_TYPE__ char
947// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807LL
948// MIPS64BE:#define __INTMAX_TYPE__ long long int
949// MIPS64BE:#define __INTMAX_WIDTH__ 64
950// MIPS64BE:#define __INTPTR_TYPE__ long int
951// MIPS64BE:#define __INTPTR_WIDTH__ 64
952// MIPS64BE:#define __INT_MAX__ 2147483647
953// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
954// MIPS64BE:#define __LDBL_DIG__ 33
955// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
956// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
957// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
958// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
959// MIPS64BE:#define __LDBL_MANT_DIG__ 113
960// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
961// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
962// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
963// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
964// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
965// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
966// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
967// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000968// MIPS64BE:#define __LP64__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000969// MIPS64BE:#define __MIPSEB 1
970// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000971// MIPS64BE:#define __POINTER_WIDTH__ 64
972// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
973// MIPS64BE:#define __PTRDIFF_TYPE__ long int
974// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
975// MIPS64BE:#define __REGISTER_PREFIX__
976// MIPS64BE:#define __SCHAR_MAX__ 127
977// MIPS64BE:#define __SHRT_MAX__ 32767
978// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
979// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
980// MIPS64BE:#define __SIZEOF_FLOAT__ 4
981// MIPS64BE:#define __SIZEOF_INT__ 4
982// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
983// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
984// MIPS64BE:#define __SIZEOF_LONG__ 8
985// MIPS64BE:#define __SIZEOF_POINTER__ 8
986// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
987// MIPS64BE:#define __SIZEOF_SHORT__ 2
988// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
989// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
990// MIPS64BE:#define __SIZEOF_WINT_T__ 4
991// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
992// MIPS64BE:#define __SIZE_WIDTH__ 64
993// MIPS64BE:#define __UINTMAX_TYPE__ long long unsigned int
994// MIPS64BE:#define __USER_LABEL_PREFIX__ _
995// MIPS64BE:#define __WCHAR_MAX__ 2147483647
996// MIPS64BE:#define __WCHAR_TYPE__ int
997// MIPS64BE:#define __WCHAR_WIDTH__ 32
998// MIPS64BE:#define __WINT_TYPE__ int
999// MIPS64BE:#define __WINT_WIDTH__ 32
1000// MIPS64BE:#define __clang__ 1
1001// MIPS64BE:#define __llvm__ 1
1002// MIPS64BE:#define __mips 1
Simon Atanasyan600a5132012-08-29 20:50:11 +00001003// MIPS64BE:#define __mips64 1
1004// MIPS64BE:#define __mips64__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +00001005// MIPS64BE:#define __mips__ 1
1006// MIPS64BE:#define __mips_hard_float 1
1007// MIPS64BE:#define __mips_n64 1
1008// MIPS64BE:#define _mips 1
1009// MIPS64BE:#define mips 1
1010//
1011// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-none-none < /dev/null | FileCheck -check-prefix MIPS64EL %s
1012//
1013// MIPS64EL:#define MIPSEL 1
1014// MIPS64EL:#define _ABI64 3
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001015// MIPS64EL:#define _LP64 1
Simon Atanasyan7a521802012-04-06 08:37:24 +00001016// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan260e5062012-08-29 15:17:29 +00001017// MIPS64EL:#define _MIPS_ARCH "mips64"
1018// MIPS64EL:#define _MIPS_ARCH_MIPS64 1
Simon Atanasyan7a521802012-04-06 08:37:24 +00001019// MIPS64EL:#define _MIPS_SIM _ABI64
1020// MIPS64EL:#define _MIPS_SZINT 32
1021// MIPS64EL:#define _MIPS_SZLONG 64
1022// MIPS64EL:#define _MIPS_SZPTR 64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001023// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +00001024// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
1025// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
1026// MIPS64EL:#define __CHAR_BIT__ 8
1027// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
1028// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1029// MIPS64EL:#define __DBL_DIG__ 15
1030// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
1031// MIPS64EL:#define __DBL_HAS_DENORM__ 1
1032// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
1033// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
1034// MIPS64EL:#define __DBL_MANT_DIG__ 53
1035// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
1036// MIPS64EL:#define __DBL_MAX_EXP__ 1024
1037// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
1038// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
1039// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
1040// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
1041// MIPS64EL:#define __DECIMAL_DIG__ 36
1042// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1043// MIPS64EL:#define __FLT_DIG__ 6
1044// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
1045// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
1046// MIPS64EL:#define __FLT_HAS_DENORM__ 1
1047// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
1048// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
1049// MIPS64EL:#define __FLT_MANT_DIG__ 24
1050// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
1051// MIPS64EL:#define __FLT_MAX_EXP__ 128
1052// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
1053// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
1054// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
1055// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
1056// MIPS64EL:#define __FLT_RADIX__ 2
1057// MIPS64EL:#define __INT16_TYPE__ short
1058// MIPS64EL:#define __INT32_TYPE__ int
1059// MIPS64EL:#define __INT64_C_SUFFIX__ LL
1060// MIPS64EL:#define __INT64_TYPE__ long long int
1061// MIPS64EL:#define __INT8_TYPE__ char
1062// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807LL
1063// MIPS64EL:#define __INTMAX_TYPE__ long long int
1064// MIPS64EL:#define __INTMAX_WIDTH__ 64
1065// MIPS64EL:#define __INTPTR_TYPE__ long int
1066// MIPS64EL:#define __INTPTR_WIDTH__ 64
1067// MIPS64EL:#define __INT_MAX__ 2147483647
1068// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1069// MIPS64EL:#define __LDBL_DIG__ 33
1070// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1071// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
1072// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
1073// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
1074// MIPS64EL:#define __LDBL_MANT_DIG__ 113
1075// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
1076// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
1077// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1078// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
1079// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
1080// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1081// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
1082// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001083// MIPS64EL:#define __LP64__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +00001084// MIPS64EL:#define __MIPSEL 1
1085// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +00001086// MIPS64EL:#define __POINTER_WIDTH__ 64
1087// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
1088// MIPS64EL:#define __PTRDIFF_TYPE__ long int
1089// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
1090// MIPS64EL:#define __REGISTER_PREFIX__
1091// MIPS64EL:#define __SCHAR_MAX__ 127
1092// MIPS64EL:#define __SHRT_MAX__ 32767
1093// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
1094// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
1095// MIPS64EL:#define __SIZEOF_FLOAT__ 4
1096// MIPS64EL:#define __SIZEOF_INT__ 4
1097// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
1098// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
1099// MIPS64EL:#define __SIZEOF_LONG__ 8
1100// MIPS64EL:#define __SIZEOF_POINTER__ 8
1101// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
1102// MIPS64EL:#define __SIZEOF_SHORT__ 2
1103// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
1104// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
1105// MIPS64EL:#define __SIZEOF_WINT_T__ 4
1106// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
1107// MIPS64EL:#define __SIZE_WIDTH__ 64
1108// MIPS64EL:#define __UINTMAX_TYPE__ long long unsigned int
1109// MIPS64EL:#define __USER_LABEL_PREFIX__ _
1110// MIPS64EL:#define __WCHAR_MAX__ 2147483647
1111// MIPS64EL:#define __WCHAR_TYPE__ int
1112// MIPS64EL:#define __WCHAR_WIDTH__ 32
1113// MIPS64EL:#define __WINT_TYPE__ int
1114// MIPS64EL:#define __WINT_WIDTH__ 32
1115// MIPS64EL:#define __clang__ 1
1116// MIPS64EL:#define __llvm__ 1
1117// MIPS64EL:#define __mips 1
Simon Atanasyan600a5132012-08-29 20:50:11 +00001118// MIPS64EL:#define __mips64 1
1119// MIPS64EL:#define __mips64__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +00001120// MIPS64EL:#define __mips__ 1
1121// MIPS64EL:#define __mips_hard_float 1
1122// MIPS64EL:#define __mips_n64 1
1123// MIPS64EL:#define _mips 1
1124// MIPS64EL:#define mips 1
1125//
Simon Atanasyanaba3f0f2012-04-06 17:51:49 +00001126// Check MIPS float ABI macros
1127//
1128// RUN: %clang_cc1 -E -dM -ffreestanding \
1129// RUN: -triple=mips-none-none < /dev/null \
1130// RUN: | FileCheck -check-prefix MIPS-FABI-HARD %s
1131// MIPS-FABI-HARD:#define __mips_hard_float 1
1132//
1133// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
1134// RUN: -triple=mips-none-none < /dev/null \
1135// RUN: | FileCheck -check-prefix MIPS-FABI-SOFT %s
1136// MIPS-FABI-SOFT:#define __mips_soft_float 1
1137//
1138// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
1139// RUN: -triple=mips-none-none < /dev/null \
1140// RUN: | FileCheck -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyan3dbcc882012-06-05 13:06:56 +00001141// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyanaba3f0f2012-04-06 17:51:49 +00001142// MIPS-FABI-SINGLE:#define __mips_single_float 1
1143//
Simon Atanasyan1176bcd2012-07-05 16:06:06 +00001144// Check MIPS features macros
1145//
1146// RUN: %clang_cc1 -target-feature +mips16 \
1147// RUN: -E -dM -triple=mips-none-none < /dev/null \
1148// RUN: | FileCheck -check-prefix MIPS16 %s
1149// MIPS16:#define __mips16 1
1150//
1151// RUN: %clang_cc1 -target-feature -mips16 \
1152// RUN: -E -dM -triple=mips-none-none < /dev/null \
1153// RUN: | FileCheck -check-prefix NOMIPS16 %s
1154// NOMIPS16-NOT:#define __mips16 1
1155//
Simon Atanasyana1b62272012-07-05 20:16:22 +00001156// RUN: %clang_cc1 -target-feature +dsp \
1157// RUN: -E -dM -triple=mips-none-none < /dev/null \
1158// RUN: | FileCheck -check-prefix MIPS-DSP %s
1159// MIPS-DSP:#define __mips_dsp 1
1160// MIPS-DSP:#define __mips_dsp_rev 1
1161// MIPS-DSP-NOT:#define __mips_dspr2 1
1162//
1163// RUN: %clang_cc1 -target-feature +dspr2 \
1164// RUN: -E -dM -triple=mips-none-none < /dev/null \
1165// RUN: | FileCheck -check-prefix MIPS-DSPR2 %s
1166// MIPS-DSPR2:#define __mips_dsp 1
1167// MIPS-DSPR2:#define __mips_dsp_rev 2
1168// MIPS-DSPR2:#define __mips_dspr2 1
1169//
Daniel Dunbara5728872009-12-15 20:14:24 +00001170// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -check-prefix MSP430 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001171//
1172// MSP430:#define MSP430 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001173// MSP430-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001174// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001175// MSP430:#define __CHAR16_TYPE__ unsigned short
1176// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001177// MSP430:#define __CHAR_BIT__ 8
1178// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1179// MSP430:#define __DBL_DIG__ 15
1180// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
1181// MSP430:#define __DBL_HAS_DENORM__ 1
1182// MSP430:#define __DBL_HAS_INFINITY__ 1
1183// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
1184// MSP430:#define __DBL_MANT_DIG__ 53
1185// MSP430:#define __DBL_MAX_10_EXP__ 308
1186// MSP430:#define __DBL_MAX_EXP__ 1024
1187// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
1188// MSP430:#define __DBL_MIN_10_EXP__ (-307)
1189// MSP430:#define __DBL_MIN_EXP__ (-1021)
1190// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
1191// MSP430:#define __DECIMAL_DIG__ 17
1192// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1193// MSP430:#define __FLT_DIG__ 6
1194// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
1195// MSP430:#define __FLT_EVAL_METHOD__ 0
1196// MSP430:#define __FLT_HAS_DENORM__ 1
1197// MSP430:#define __FLT_HAS_INFINITY__ 1
1198// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
1199// MSP430:#define __FLT_MANT_DIG__ 24
1200// MSP430:#define __FLT_MAX_10_EXP__ 38
1201// MSP430:#define __FLT_MAX_EXP__ 128
1202// MSP430:#define __FLT_MAX__ 3.40282347e+38F
1203// MSP430:#define __FLT_MIN_10_EXP__ (-37)
1204// MSP430:#define __FLT_MIN_EXP__ (-125)
1205// MSP430:#define __FLT_MIN__ 1.17549435e-38F
1206// MSP430:#define __FLT_RADIX__ 2
1207// MSP430:#define __INT16_TYPE__ short
Ken Dyckeef22ef2009-11-16 16:36:33 +00001208// MSP430:#define __INT32_C_SUFFIX__ L
Chris Lattnerdcdd2a02009-11-12 08:08:27 +00001209// MSP430:#define __INT32_TYPE__ long int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001210// MSP430:#define __INT8_TYPE__ char
1211// MSP430:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +00001212// MSP430:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001213// MSP430:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001214// MSP430:#define __INTPTR_TYPE__ short
Ken Dyckd896e1a2009-11-18 20:05:48 +00001215// MSP430:#define __INTPTR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001216// MSP430:#define __INT_MAX__ 32767
Eli Friedman75e8efe2012-11-10 00:20:38 +00001217// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001218// MSP430:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +00001219// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001220// MSP430:#define __LDBL_HAS_DENORM__ 1
1221// MSP430:#define __LDBL_HAS_INFINITY__ 1
1222// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
1223// MSP430:#define __LDBL_MANT_DIG__ 53
1224// MSP430:#define __LDBL_MAX_10_EXP__ 308
1225// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +00001226// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001227// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
1228// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +00001229// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikov79bff432010-01-14 21:36:52 +00001230// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnerbceaf862009-10-29 04:55:36 +00001231// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001232// MSP430-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +00001233// MSP430:#define __MSP430__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001234// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +00001235// MSP430:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +00001236// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001237// MSP430:#define __SCHAR_MAX__ 127
1238// MSP430:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001239// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001240// MSP430:#define __SIZEOF_DOUBLE__ 8
1241// MSP430:#define __SIZEOF_FLOAT__ 4
1242// MSP430:#define __SIZEOF_INT__ 2
1243// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
1244// MSP430:#define __SIZEOF_LONG_LONG__ 8
1245// MSP430:#define __SIZEOF_LONG__ 4
1246// MSP430:#define __SIZEOF_POINTER__ 2
1247// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
1248// MSP430:#define __SIZEOF_SHORT__ 2
1249// MSP430:#define __SIZEOF_SIZE_T__ 2
1250// MSP430:#define __SIZEOF_WCHAR_T__ 2
1251// MSP430:#define __SIZEOF_WINT_T__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +00001252// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001253// MSP430:#define __SIZE_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +00001254// MSP430:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001255// MSP430:#define __USER_LABEL_PREFIX__ _
Chris Lattner91846462009-11-12 08:04:33 +00001256// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnerbceaf862009-10-29 04:55:36 +00001257// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001258// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001259// MSP430:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001260// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001261// MSP430:#define __clang__ 1
1262//
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001263// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -check-prefix NVPTX32 %s
1264//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001265// NVPTX32-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001266// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001267// NVPTX32:#define __CHAR16_TYPE__ unsigned short
1268// NVPTX32:#define __CHAR32_TYPE__ unsigned int
1269// NVPTX32:#define __CHAR_BIT__ 8
1270// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
1271// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1272// NVPTX32:#define __DBL_DIG__ 15
1273// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
1274// NVPTX32:#define __DBL_HAS_DENORM__ 1
1275// NVPTX32:#define __DBL_HAS_INFINITY__ 1
1276// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
1277// NVPTX32:#define __DBL_MANT_DIG__ 53
1278// NVPTX32:#define __DBL_MAX_10_EXP__ 308
1279// NVPTX32:#define __DBL_MAX_EXP__ 1024
1280// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
1281// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
1282// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
1283// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
1284// NVPTX32:#define __DECIMAL_DIG__ 17
1285// NVPTX32:#define __FINITE_MATH_ONLY__ 0
1286// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1287// NVPTX32:#define __FLT_DIG__ 6
1288// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
1289// NVPTX32:#define __FLT_EVAL_METHOD__ 0
1290// NVPTX32:#define __FLT_HAS_DENORM__ 1
1291// NVPTX32:#define __FLT_HAS_INFINITY__ 1
1292// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
1293// NVPTX32:#define __FLT_MANT_DIG__ 24
1294// NVPTX32:#define __FLT_MAX_10_EXP__ 38
1295// NVPTX32:#define __FLT_MAX_EXP__ 128
1296// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
1297// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
1298// NVPTX32:#define __FLT_MIN_EXP__ (-125)
1299// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
1300// NVPTX32:#define __FLT_RADIX__ 2
1301// NVPTX32:#define __INT16_TYPE__ short
1302// NVPTX32:#define __INT32_TYPE__ int
1303// NVPTX32:#define __INT64_C_SUFFIX__ LL
1304// NVPTX32:#define __INT64_TYPE__ long long int
1305// NVPTX32:#define __INT8_TYPE__ char
1306// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
1307// NVPTX32:#define __INTMAX_TYPE__ long long int
1308// NVPTX32:#define __INTMAX_WIDTH__ 64
1309// NVPTX32:#define __INTPTR_TYPE__ unsigned int
1310// NVPTX32:#define __INTPTR_WIDTH__ 32
1311// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +00001312// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001313// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +00001314// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001315// NVPTX32:#define __LDBL_HAS_DENORM__ 1
1316// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
1317// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
1318// NVPTX32:#define __LDBL_MANT_DIG__ 53
1319// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
1320// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +00001321// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001322// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
1323// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +00001324// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001325// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
1326// NVPTX32:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001327// NVPTX32-NOT:#define __LP64__
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001328// NVPTX32:#define __NVPTX__ 1
1329// NVPTX32:#define __POINTER_WIDTH__ 32
1330// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
1331// NVPTX32:#define __PTRDIFF_TYPE__ unsigned int
1332// NVPTX32:#define __PTRDIFF_WIDTH__ 32
1333// NVPTX32:#define __PTX__ 1
1334// NVPTX32:#define __SCHAR_MAX__ 127
1335// NVPTX32:#define __SHRT_MAX__ 32767
1336// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
1337// NVPTX32:#define __SIZEOF_DOUBLE__ 8
1338// NVPTX32:#define __SIZEOF_FLOAT__ 4
1339// NVPTX32:#define __SIZEOF_INT__ 4
1340// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
1341// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
1342// NVPTX32:#define __SIZEOF_LONG__ 8
1343// NVPTX32:#define __SIZEOF_POINTER__ 4
1344// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
1345// NVPTX32:#define __SIZEOF_SHORT__ 2
1346// NVPTX32:#define __SIZEOF_SIZE_T__ 4
1347// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
1348// NVPTX32:#define __SIZEOF_WINT_T__ 4
1349// NVPTX32:#define __SIZE_TYPE__ unsigned int
1350// NVPTX32:#define __SIZE_WIDTH__ 32
1351// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
1352// NVPTX32:#define __USER_LABEL_PREFIX__ _
1353// NVPTX32:#define __WCHAR_MAX__ 2147483647
1354// NVPTX32:#define __WCHAR_TYPE__ int
1355// NVPTX32:#define __WCHAR_WIDTH__ 32
1356// NVPTX32:#define __WINT_TYPE__ int
1357// NVPTX32:#define __WINT_WIDTH__ 32
1358//
1359// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -check-prefix NVPTX64 %s
1360//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001361// NVPTX64:#define _LP64 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001362// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001363// NVPTX64:#define __CHAR16_TYPE__ unsigned short
1364// NVPTX64:#define __CHAR32_TYPE__ unsigned int
1365// NVPTX64:#define __CHAR_BIT__ 8
1366// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
1367// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1368// NVPTX64:#define __DBL_DIG__ 15
1369// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1370// NVPTX64:#define __DBL_HAS_DENORM__ 1
1371// NVPTX64:#define __DBL_HAS_INFINITY__ 1
1372// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
1373// NVPTX64:#define __DBL_MANT_DIG__ 53
1374// NVPTX64:#define __DBL_MAX_10_EXP__ 308
1375// NVPTX64:#define __DBL_MAX_EXP__ 1024
1376// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
1377// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
1378// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
1379// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
1380// NVPTX64:#define __DECIMAL_DIG__ 17
1381// NVPTX64:#define __FINITE_MATH_ONLY__ 0
1382// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1383// NVPTX64:#define __FLT_DIG__ 6
1384// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
1385// NVPTX64:#define __FLT_EVAL_METHOD__ 0
1386// NVPTX64:#define __FLT_HAS_DENORM__ 1
1387// NVPTX64:#define __FLT_HAS_INFINITY__ 1
1388// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
1389// NVPTX64:#define __FLT_MANT_DIG__ 24
1390// NVPTX64:#define __FLT_MAX_10_EXP__ 38
1391// NVPTX64:#define __FLT_MAX_EXP__ 128
1392// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
1393// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
1394// NVPTX64:#define __FLT_MIN_EXP__ (-125)
1395// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
1396// NVPTX64:#define __FLT_RADIX__ 2
1397// NVPTX64:#define __INT16_TYPE__ short
1398// NVPTX64:#define __INT32_TYPE__ int
1399// NVPTX64:#define __INT64_C_SUFFIX__ LL
1400// NVPTX64:#define __INT64_TYPE__ long long int
1401// NVPTX64:#define __INT8_TYPE__ char
1402// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
1403// NVPTX64:#define __INTMAX_TYPE__ long long int
1404// NVPTX64:#define __INTMAX_WIDTH__ 64
1405// NVPTX64:#define __INTPTR_TYPE__ long long unsigned int
1406// NVPTX64:#define __INTPTR_WIDTH__ 64
1407// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +00001408// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001409// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +00001410// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001411// NVPTX64:#define __LDBL_HAS_DENORM__ 1
1412// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
1413// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
1414// NVPTX64:#define __LDBL_MANT_DIG__ 53
1415// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
1416// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +00001417// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001418// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
1419// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +00001420// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001421// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1422// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001423// NVPTX64:#define __LP64__ 1
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001424// NVPTX64:#define __NVPTX__ 1
1425// NVPTX64:#define __POINTER_WIDTH__ 64
1426// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
1427// NVPTX64:#define __PTRDIFF_TYPE__ long long unsigned int
1428// NVPTX64:#define __PTRDIFF_WIDTH__ 64
1429// NVPTX64:#define __PTX__ 1
1430// NVPTX64:#define __SCHAR_MAX__ 127
1431// NVPTX64:#define __SHRT_MAX__ 32767
1432// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
1433// NVPTX64:#define __SIZEOF_DOUBLE__ 8
1434// NVPTX64:#define __SIZEOF_FLOAT__ 4
1435// NVPTX64:#define __SIZEOF_INT__ 4
1436// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
1437// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
1438// NVPTX64:#define __SIZEOF_LONG__ 8
1439// NVPTX64:#define __SIZEOF_POINTER__ 8
1440// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
1441// NVPTX64:#define __SIZEOF_SHORT__ 2
1442// NVPTX64:#define __SIZEOF_SIZE_T__ 8
1443// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
1444// NVPTX64:#define __SIZEOF_WINT_T__ 4
1445// NVPTX64:#define __SIZE_TYPE__ long long unsigned int
1446// NVPTX64:#define __SIZE_WIDTH__ 64
1447// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
1448// NVPTX64:#define __USER_LABEL_PREFIX__ _
1449// NVPTX64:#define __WCHAR_MAX__ 2147483647
1450// NVPTX64:#define __WCHAR_TYPE__ int
1451// NVPTX64:#define __WCHAR_WIDTH__ 32
1452// NVPTX64:#define __WINT_TYPE__ int
1453// NVPTX64:#define __WINT_WIDTH__ 32
1454//
Hal Finkel39d5fa12012-07-03 16:51:04 +00001455// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -check-prefix PPC603E %s
1456//
1457// PPC603E:#define _ARCH_603 1
1458// PPC603E:#define _ARCH_603E 1
1459// PPC603E:#define _ARCH_PPC 1
1460// PPC603E:#define _ARCH_PPCGR 1
1461// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001462// PPC603E-NOT:#define _LP64
Hal Finkel39d5fa12012-07-03 16:51:04 +00001463// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001464// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel39d5fa12012-07-03 16:51:04 +00001465// PPC603E:#define __CHAR16_TYPE__ unsigned short
1466// PPC603E:#define __CHAR32_TYPE__ unsigned int
1467// PPC603E:#define __CHAR_BIT__ 8
1468// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1469// PPC603E:#define __DBL_DIG__ 15
1470// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
1471// PPC603E:#define __DBL_HAS_DENORM__ 1
1472// PPC603E:#define __DBL_HAS_INFINITY__ 1
1473// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
1474// PPC603E:#define __DBL_MANT_DIG__ 53
1475// PPC603E:#define __DBL_MAX_10_EXP__ 308
1476// PPC603E:#define __DBL_MAX_EXP__ 1024
1477// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
1478// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
1479// PPC603E:#define __DBL_MIN_EXP__ (-1021)
1480// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
1481// PPC603E:#define __DECIMAL_DIG__ 33
1482// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1483// PPC603E:#define __FLT_DIG__ 6
1484// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
1485// PPC603E:#define __FLT_EVAL_METHOD__ 0
1486// PPC603E:#define __FLT_HAS_DENORM__ 1
1487// PPC603E:#define __FLT_HAS_INFINITY__ 1
1488// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
1489// PPC603E:#define __FLT_MANT_DIG__ 24
1490// PPC603E:#define __FLT_MAX_10_EXP__ 38
1491// PPC603E:#define __FLT_MAX_EXP__ 128
1492// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
1493// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
1494// PPC603E:#define __FLT_MIN_EXP__ (-125)
1495// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
1496// PPC603E:#define __FLT_RADIX__ 2
1497// PPC603E:#define __INT16_TYPE__ short
1498// PPC603E:#define __INT32_TYPE__ int
1499// PPC603E:#define __INT64_C_SUFFIX__ LL
1500// PPC603E:#define __INT64_TYPE__ long long int
1501// PPC603E:#define __INT8_TYPE__ char
1502// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
1503// PPC603E:#define __INTMAX_TYPE__ long long int
1504// PPC603E:#define __INTMAX_WIDTH__ 64
1505// PPC603E:#define __INTPTR_TYPE__ long int
1506// PPC603E:#define __INTPTR_WIDTH__ 32
1507// PPC603E:#define __INT_MAX__ 2147483647
1508// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1509// PPC603E:#define __LDBL_DIG__ 31
1510// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1511// PPC603E:#define __LDBL_HAS_DENORM__ 1
1512// PPC603E:#define __LDBL_HAS_INFINITY__ 1
1513// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
1514// PPC603E:#define __LDBL_MANT_DIG__ 106
1515// PPC603E:#define __LDBL_MAX_10_EXP__ 308
1516// PPC603E:#define __LDBL_MAX_EXP__ 1024
1517// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1518// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
1519// PPC603E:#define __LDBL_MIN_EXP__ (-968)
1520// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1521// PPC603E:#define __LONG_DOUBLE_128__ 1
1522// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
1523// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001524// PPC603E-NOT:#define __LP64__
Hal Finkel39d5fa12012-07-03 16:51:04 +00001525// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel39d5fa12012-07-03 16:51:04 +00001526// PPC603E:#define __POINTER_WIDTH__ 32
1527// PPC603E:#define __POWERPC__ 1
1528// PPC603E:#define __PTRDIFF_TYPE__ long int
1529// PPC603E:#define __PTRDIFF_WIDTH__ 32
1530// PPC603E:#define __REGISTER_PREFIX__
1531// PPC603E:#define __SCHAR_MAX__ 127
1532// PPC603E:#define __SHRT_MAX__ 32767
1533// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
1534// PPC603E:#define __SIZEOF_DOUBLE__ 8
1535// PPC603E:#define __SIZEOF_FLOAT__ 4
1536// PPC603E:#define __SIZEOF_INT__ 4
1537// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
1538// PPC603E:#define __SIZEOF_LONG_LONG__ 8
1539// PPC603E:#define __SIZEOF_LONG__ 4
1540// PPC603E:#define __SIZEOF_POINTER__ 4
1541// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
1542// PPC603E:#define __SIZEOF_SHORT__ 2
1543// PPC603E:#define __SIZEOF_SIZE_T__ 4
1544// PPC603E:#define __SIZEOF_WCHAR_T__ 4
1545// PPC603E:#define __SIZEOF_WINT_T__ 4
1546// PPC603E:#define __SIZE_TYPE__ long unsigned int
1547// PPC603E:#define __SIZE_WIDTH__ 32
1548// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
1549// PPC603E:#define __USER_LABEL_PREFIX__ _
1550// PPC603E:#define __WCHAR_MAX__ 2147483647
1551// PPC603E:#define __WCHAR_TYPE__ int
1552// PPC603E:#define __WCHAR_WIDTH__ 32
1553// PPC603E:#define __WINT_TYPE__ int
1554// PPC603E:#define __WINT_WIDTH__ 32
1555// PPC603E:#define __powerpc__ 1
1556// PPC603E:#define __ppc__ 1
1557//
Hal Finkel02a84272012-06-11 22:35:19 +00001558// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001559//
1560// PPC64:#define _ARCH_PPC 1
1561// PPC64:#define _ARCH_PPC64 1
Hal Finkel39d5fa12012-07-03 16:51:04 +00001562// PPC64:#define _ARCH_PPCGR 1
1563// PPC64:#define _ARCH_PPCSQ 1
1564// PPC64:#define _ARCH_PWR4 1
1565// PPC64:#define _ARCH_PWR5 1
1566// PPC64:#define _ARCH_PWR6 1
Hal Finkel02a84272012-06-11 22:35:19 +00001567// PPC64:#define _ARCH_PWR7 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001568// PPC64:#define _BIG_ENDIAN 1
1569// PPC64:#define _LP64 1
1570// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001571// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001572// PPC64:#define __CHAR16_TYPE__ unsigned short
1573// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001574// PPC64:#define __CHAR_BIT__ 8
1575// PPC64:#define __CHAR_UNSIGNED__ 1
1576// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1577// PPC64:#define __DBL_DIG__ 15
1578// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1579// PPC64:#define __DBL_HAS_DENORM__ 1
1580// PPC64:#define __DBL_HAS_INFINITY__ 1
1581// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
1582// PPC64:#define __DBL_MANT_DIG__ 53
1583// PPC64:#define __DBL_MAX_10_EXP__ 308
1584// PPC64:#define __DBL_MAX_EXP__ 1024
1585// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
1586// PPC64:#define __DBL_MIN_10_EXP__ (-307)
1587// PPC64:#define __DBL_MIN_EXP__ (-1021)
1588// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001589// PPC64:#define __DECIMAL_DIG__ 33
Chris Lattnerbceaf862009-10-29 04:55:36 +00001590// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1591// PPC64:#define __FLT_DIG__ 6
1592// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
1593// PPC64:#define __FLT_EVAL_METHOD__ 0
1594// PPC64:#define __FLT_HAS_DENORM__ 1
1595// PPC64:#define __FLT_HAS_INFINITY__ 1
1596// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
1597// PPC64:#define __FLT_MANT_DIG__ 24
1598// PPC64:#define __FLT_MAX_10_EXP__ 38
1599// PPC64:#define __FLT_MAX_EXP__ 128
1600// PPC64:#define __FLT_MAX__ 3.40282347e+38F
1601// PPC64:#define __FLT_MIN_10_EXP__ (-37)
1602// PPC64:#define __FLT_MIN_EXP__ (-125)
1603// PPC64:#define __FLT_MIN__ 1.17549435e-38F
1604// PPC64:#define __FLT_RADIX__ 2
1605// PPC64:#define __INT16_TYPE__ short
1606// PPC64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001607// PPC64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001608// PPC64:#define __INT64_TYPE__ long int
1609// PPC64:#define __INT8_TYPE__ char
1610// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +00001611// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001612// PPC64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001613// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001614// PPC64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001615// PPC64:#define __INT_MAX__ 2147483647
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001616// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1617// PPC64:#define __LDBL_DIG__ 31
1618// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001619// PPC64:#define __LDBL_HAS_DENORM__ 1
1620// PPC64:#define __LDBL_HAS_INFINITY__ 1
1621// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001622// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnerbceaf862009-10-29 04:55:36 +00001623// PPC64:#define __LDBL_MAX_10_EXP__ 308
1624// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001625// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1626// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
1627// PPC64:#define __LDBL_MIN_EXP__ (-968)
1628// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001629// PPC64:#define __LONG_DOUBLE_128__ 1
1630// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1631// PPC64:#define __LONG_MAX__ 9223372036854775807L
1632// PPC64:#define __LP64__ 1
1633// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001634// PPC64:#define __POINTER_WIDTH__ 64
1635// PPC64:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001636// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001637// PPC64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001638// PPC64:#define __REGISTER_PREFIX__
1639// PPC64:#define __SCHAR_MAX__ 127
1640// PPC64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001641// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001642// PPC64:#define __SIZEOF_DOUBLE__ 8
1643// PPC64:#define __SIZEOF_FLOAT__ 4
1644// PPC64:#define __SIZEOF_INT__ 4
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001645// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohmancfeac342010-05-28 00:27:15 +00001646// PPC64:#define __SIZEOF_LONG_LONG__ 8
1647// PPC64:#define __SIZEOF_LONG__ 8
1648// PPC64:#define __SIZEOF_POINTER__ 8
1649// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
1650// PPC64:#define __SIZEOF_SHORT__ 2
1651// PPC64:#define __SIZEOF_SIZE_T__ 8
1652// PPC64:#define __SIZEOF_WCHAR_T__ 4
1653// PPC64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001654// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001655// PPC64:#define __SIZE_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001656// PPC64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001657// PPC64:#define __USER_LABEL_PREFIX__ _
1658// PPC64:#define __WCHAR_MAX__ 2147483647
1659// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001660// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001661// PPC64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001662// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001663// PPC64:#define __ppc64__ 1
1664// PPC64:#define __ppc__ 1
1665//
Hal Finkel5ccd3d02013-02-01 05:53:33 +00001666// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu a2q -fno-signed-char < /dev/null | FileCheck -check-prefix PPCA2Q %s
1667//
1668// PPCA2Q:#define _ARCH_A2 1
1669// PPCA2Q:#define _ARCH_A2Q 1
1670// PPCA2Q:#define _ARCH_PPC 1
1671// PPCA2Q:#define _ARCH_PPC64 1
1672// PPCA2Q:#define _ARCH_QP 1
1673//
1674// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-bgq-linux -fno-signed-char < /dev/null | FileCheck -check-prefix PPCBGQ %s
1675//
1676// PPCBGQ:#define __THW_BLUEGENE__ 1
1677// PPCBGQ:#define __TOS_BGQ__ 1
1678// PPCBGQ:#define __bg__ 1
1679// PPCBGQ:#define __bgq__ 1
1680//
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001681// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64-LINUX %s
1682//
1683// PPC64-LINUX:#define _ARCH_PPC 1
1684// PPC64-LINUX:#define _ARCH_PPC64 1
1685// PPC64-LINUX:#define _BIG_ENDIAN 1
1686// PPC64-LINUX:#define _LP64 1
1687// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001688// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001689// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
1690// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
1691// PPC64-LINUX:#define __CHAR_BIT__ 8
1692// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
1693// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1694// PPC64-LINUX:#define __DBL_DIG__ 15
1695// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
1696// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
1697// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
1698// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
1699// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
1700// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
1701// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
1702// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
1703// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
1704// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
1705// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
1706// PPC64-LINUX:#define __DECIMAL_DIG__ 33
1707// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1708// PPC64-LINUX:#define __FLT_DIG__ 6
1709// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
1710// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
1711// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
1712// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
1713// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
1714// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
1715// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
1716// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
1717// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
1718// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
1719// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
1720// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
1721// PPC64-LINUX:#define __FLT_RADIX__ 2
1722// PPC64-LINUX:#define __INT16_TYPE__ short
1723// PPC64-LINUX:#define __INT32_TYPE__ int
1724// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
1725// PPC64-LINUX:#define __INT64_TYPE__ long int
1726// PPC64-LINUX:#define __INT8_TYPE__ char
1727// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
1728// PPC64-LINUX:#define __INTMAX_TYPE__ long int
1729// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
1730// PPC64-LINUX:#define __INTPTR_TYPE__ long int
1731// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
1732// PPC64-LINUX:#define __INT_MAX__ 2147483647
1733// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1734// PPC64-LINUX:#define __LDBL_DIG__ 31
1735// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1736// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
1737// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
1738// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
1739// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
1740// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
1741// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
1742// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1743// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
1744// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
1745// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1746// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
1747// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
1748// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
1749// PPC64-LINUX:#define __LP64__ 1
1750// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001751// PPC64-LINUX:#define __POINTER_WIDTH__ 64
1752// PPC64-LINUX:#define __POWERPC__ 1
1753// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
1754// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
1755// PPC64-LINUX:#define __REGISTER_PREFIX__
1756// PPC64-LINUX:#define __SCHAR_MAX__ 127
1757// PPC64-LINUX:#define __SHRT_MAX__ 32767
1758// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
1759// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
1760// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
1761// PPC64-LINUX:#define __SIZEOF_INT__ 4
1762// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
1763// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
1764// PPC64-LINUX:#define __SIZEOF_LONG__ 8
1765// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
1766// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
1767// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
1768// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
1769// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
1770// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
1771// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
1772// PPC64-LINUX:#define __SIZE_WIDTH__ 64
1773// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
1774// PPC64-LINUX:#define __USER_LABEL_PREFIX__
1775// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
1776// PPC64-LINUX:#define __WCHAR_TYPE__ int
1777// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
1778// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
1779// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
1780// PPC64-LINUX:#define __WINT_WIDTH__ 32
1781// PPC64-LINUX:#define __powerpc64__ 1
1782// PPC64-LINUX:#define __powerpc__ 1
1783// PPC64-LINUX:#define __ppc64__ 1
1784// PPC64-LINUX:#define __ppc__ 1
1785//
Daniel Dunbara5728872009-12-15 20:14:24 +00001786// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix PPC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001787//
1788// PPC:#define _ARCH_PPC 1
1789// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001790// PPC-NOT:#define _LP64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001791// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001792// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001793// PPC:#define __CHAR16_TYPE__ unsigned short
1794// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001795// PPC:#define __CHAR_BIT__ 8
1796// PPC:#define __CHAR_UNSIGNED__ 1
1797// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1798// PPC:#define __DBL_DIG__ 15
1799// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
1800// PPC:#define __DBL_HAS_DENORM__ 1
1801// PPC:#define __DBL_HAS_INFINITY__ 1
1802// PPC:#define __DBL_HAS_QUIET_NAN__ 1
1803// PPC:#define __DBL_MANT_DIG__ 53
1804// PPC:#define __DBL_MAX_10_EXP__ 308
1805// PPC:#define __DBL_MAX_EXP__ 1024
1806// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
1807// PPC:#define __DBL_MIN_10_EXP__ (-307)
1808// PPC:#define __DBL_MIN_EXP__ (-1021)
1809// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001810// PPC:#define __DECIMAL_DIG__ 33
Chris Lattnerbceaf862009-10-29 04:55:36 +00001811// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1812// PPC:#define __FLT_DIG__ 6
1813// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
1814// PPC:#define __FLT_EVAL_METHOD__ 0
1815// PPC:#define __FLT_HAS_DENORM__ 1
1816// PPC:#define __FLT_HAS_INFINITY__ 1
1817// PPC:#define __FLT_HAS_QUIET_NAN__ 1
1818// PPC:#define __FLT_MANT_DIG__ 24
1819// PPC:#define __FLT_MAX_10_EXP__ 38
1820// PPC:#define __FLT_MAX_EXP__ 128
1821// PPC:#define __FLT_MAX__ 3.40282347e+38F
1822// PPC:#define __FLT_MIN_10_EXP__ (-37)
1823// PPC:#define __FLT_MIN_EXP__ (-125)
1824// PPC:#define __FLT_MIN__ 1.17549435e-38F
1825// PPC:#define __FLT_RADIX__ 2
1826// PPC:#define __INT16_TYPE__ short
1827// PPC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001828// PPC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +00001829// PPC:#define __INT64_TYPE__ long long int
1830// PPC:#define __INT8_TYPE__ char
1831// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +00001832// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +00001833// PPC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001834// PPC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001835// PPC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001836// PPC:#define __INT_MAX__ 2147483647
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001837// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1838// PPC:#define __LDBL_DIG__ 31
1839// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001840// PPC:#define __LDBL_HAS_DENORM__ 1
1841// PPC:#define __LDBL_HAS_INFINITY__ 1
1842// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001843// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnerbceaf862009-10-29 04:55:36 +00001844// PPC:#define __LDBL_MAX_10_EXP__ 308
1845// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001846// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1847// PPC:#define __LDBL_MIN_10_EXP__ (-291)
1848// PPC:#define __LDBL_MIN_EXP__ (-968)
1849// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001850// PPC:#define __LONG_DOUBLE_128__ 1
1851// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
1852// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001853// PPC-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +00001854// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001855// PPC:#define __POINTER_WIDTH__ 32
1856// PPC:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001857// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001858// PPC:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001859// PPC:#define __REGISTER_PREFIX__
1860// PPC:#define __SCHAR_MAX__ 127
1861// PPC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001862// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001863// PPC:#define __SIZEOF_DOUBLE__ 8
1864// PPC:#define __SIZEOF_FLOAT__ 4
1865// PPC:#define __SIZEOF_INT__ 4
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001866// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohmancfeac342010-05-28 00:27:15 +00001867// PPC:#define __SIZEOF_LONG_LONG__ 8
1868// PPC:#define __SIZEOF_LONG__ 4
1869// PPC:#define __SIZEOF_POINTER__ 4
1870// PPC:#define __SIZEOF_PTRDIFF_T__ 4
1871// PPC:#define __SIZEOF_SHORT__ 2
1872// PPC:#define __SIZEOF_SIZE_T__ 4
1873// PPC:#define __SIZEOF_WCHAR_T__ 4
1874// PPC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001875// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001876// PPC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001877// PPC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001878// PPC:#define __USER_LABEL_PREFIX__ _
1879// PPC:#define __WCHAR_MAX__ 2147483647
1880// PPC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001881// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001882// PPC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001883// PPC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001884// PPC:#define __ppc__ 1
1885//
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001886// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-LINUX %s
1887//
1888// PPC-LINUX:#define _ARCH_PPC 1
1889// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001890// PPC-LINUX-NOT:#define _LP64
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001891// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001892// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001893// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
1894// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
1895// PPC-LINUX:#define __CHAR_BIT__ 8
1896// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
1897// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1898// PPC-LINUX:#define __DBL_DIG__ 15
1899// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
1900// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
1901// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
1902// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
1903// PPC-LINUX:#define __DBL_MANT_DIG__ 53
1904// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
1905// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
1906// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
1907// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
1908// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
1909// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
1910// PPC-LINUX:#define __DECIMAL_DIG__ 33
1911// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1912// PPC-LINUX:#define __FLT_DIG__ 6
1913// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
1914// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
1915// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
1916// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
1917// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
1918// PPC-LINUX:#define __FLT_MANT_DIG__ 24
1919// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
1920// PPC-LINUX:#define __FLT_MAX_EXP__ 128
1921// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
1922// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
1923// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
1924// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
1925// PPC-LINUX:#define __FLT_RADIX__ 2
1926// PPC-LINUX:#define __INT16_TYPE__ short
1927// PPC-LINUX:#define __INT32_TYPE__ int
1928// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
1929// PPC-LINUX:#define __INT64_TYPE__ long long int
1930// PPC-LINUX:#define __INT8_TYPE__ char
1931// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
1932// PPC-LINUX:#define __INTMAX_TYPE__ long long int
1933// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Hal Finkel178a9b82012-03-02 20:54:36 +00001934// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001935// PPC-LINUX:#define __INTPTR_WIDTH__ 32
1936// PPC-LINUX:#define __INT_MAX__ 2147483647
1937// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1938// PPC-LINUX:#define __LDBL_DIG__ 31
1939// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1940// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
1941// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
1942// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
1943// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
1944// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
1945// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
1946// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1947// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
1948// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
1949// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1950// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
1951// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
1952// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001953// PPC-LINUX-NOT:#define __LP64__
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001954// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001955// PPC-LINUX:#define __POINTER_WIDTH__ 32
1956// PPC-LINUX:#define __POWERPC__ 1
Hal Finkel178a9b82012-03-02 20:54:36 +00001957// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001958// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
1959// PPC-LINUX:#define __REGISTER_PREFIX__
1960// PPC-LINUX:#define __SCHAR_MAX__ 127
1961// PPC-LINUX:#define __SHRT_MAX__ 32767
1962// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
1963// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
1964// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
1965// PPC-LINUX:#define __SIZEOF_INT__ 4
1966// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
1967// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
1968// PPC-LINUX:#define __SIZEOF_LONG__ 4
1969// PPC-LINUX:#define __SIZEOF_POINTER__ 4
1970// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
1971// PPC-LINUX:#define __SIZEOF_SHORT__ 2
1972// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
1973// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
1974// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
1975// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
1976// PPC-LINUX:#define __SIZE_WIDTH__ 32
1977// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
1978// PPC-LINUX:#define __USER_LABEL_PREFIX__
1979// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
1980// PPC-LINUX:#define __WCHAR_TYPE__ int
1981// PPC-LINUX:#define __WCHAR_WIDTH__ 32
1982// PPC-LINUX:#define __WINT_TYPE__ unsigned int
1983// PPC-LINUX:#define __WINT_UNSIGNED__ 1
1984// PPC-LINUX:#define __WINT_WIDTH__ 32
1985// PPC-LINUX:#define __powerpc__ 1
1986// PPC-LINUX:#define __ppc__ 1
1987//
Daniel Dunbara5728872009-12-15 20:14:24 +00001988// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -check-prefix SPARC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001989//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001990// SPARC-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001991// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001992// SPARC:#define __CHAR16_TYPE__ unsigned short
1993// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001994// SPARC:#define __CHAR_BIT__ 8
1995// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1996// SPARC:#define __DBL_DIG__ 15
1997// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
1998// SPARC:#define __DBL_HAS_DENORM__ 1
1999// SPARC:#define __DBL_HAS_INFINITY__ 1
2000// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
2001// SPARC:#define __DBL_MANT_DIG__ 53
2002// SPARC:#define __DBL_MAX_10_EXP__ 308
2003// SPARC:#define __DBL_MAX_EXP__ 1024
2004// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
2005// SPARC:#define __DBL_MIN_10_EXP__ (-307)
2006// SPARC:#define __DBL_MIN_EXP__ (-1021)
2007// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
2008// SPARC:#define __DECIMAL_DIG__ 17
2009// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2010// SPARC:#define __FLT_DIG__ 6
2011// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
2012// SPARC:#define __FLT_EVAL_METHOD__ 0
2013// SPARC:#define __FLT_HAS_DENORM__ 1
2014// SPARC:#define __FLT_HAS_INFINITY__ 1
2015// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
2016// SPARC:#define __FLT_MANT_DIG__ 24
2017// SPARC:#define __FLT_MAX_10_EXP__ 38
2018// SPARC:#define __FLT_MAX_EXP__ 128
2019// SPARC:#define __FLT_MAX__ 3.40282347e+38F
2020// SPARC:#define __FLT_MIN_10_EXP__ (-37)
2021// SPARC:#define __FLT_MIN_EXP__ (-125)
2022// SPARC:#define __FLT_MIN__ 1.17549435e-38F
2023// SPARC:#define __FLT_RADIX__ 2
2024// SPARC:#define __INT16_TYPE__ short
2025// SPARC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00002026// SPARC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +00002027// SPARC:#define __INT64_TYPE__ long long int
2028// SPARC:#define __INT8_TYPE__ char
2029// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +00002030// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +00002031// SPARC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00002032// SPARC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00002033// SPARC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002034// SPARC:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +00002035// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002036// SPARC:#define __LDBL_DIG__ 15
Eli Friedman75e8efe2012-11-10 00:20:38 +00002037// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002038// SPARC:#define __LDBL_HAS_DENORM__ 1
2039// SPARC:#define __LDBL_HAS_INFINITY__ 1
2040// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
2041// SPARC:#define __LDBL_MANT_DIG__ 53
2042// SPARC:#define __LDBL_MAX_10_EXP__ 308
2043// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedman75e8efe2012-11-10 00:20:38 +00002044// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002045// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
2046// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedman75e8efe2012-11-10 00:20:38 +00002047// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002048// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
2049// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00002050// SPARC-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +00002051// SPARC:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00002052// SPARC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00002053// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +00002054// SPARC:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +00002055// SPARC:#define __SCHAR_MAX__ 127
2056// SPARC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00002057// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00002058// SPARC:#define __SIZEOF_DOUBLE__ 8
2059// SPARC:#define __SIZEOF_FLOAT__ 4
2060// SPARC:#define __SIZEOF_INT__ 4
2061// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
2062// SPARC:#define __SIZEOF_LONG_LONG__ 8
2063// SPARC:#define __SIZEOF_LONG__ 4
2064// SPARC:#define __SIZEOF_POINTER__ 4
2065// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
2066// SPARC:#define __SIZEOF_SHORT__ 2
2067// SPARC:#define __SIZEOF_SIZE_T__ 4
2068// SPARC:#define __SIZEOF_WCHAR_T__ 4
2069// SPARC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00002070// SPARC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00002071// SPARC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00002072// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00002073// SPARC:#define __USER_LABEL_PREFIX__ _
Daniel Dunbarad1a4c62011-03-31 00:53:51 +00002074// SPARC:#define __VERSION__ "4.2.1 Compatible
Chris Lattnerbceaf862009-10-29 04:55:36 +00002075// SPARC:#define __WCHAR_MAX__ 2147483647
2076// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00002077// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002078// SPARC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00002079// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002080// SPARC:#define __sparc 1
2081// SPARC:#define __sparc__ 1
2082// SPARC:#define __sparcv8 1
2083// SPARC:#define sparc 1
2084//
Daniel Dunbara5728872009-12-15 20:14:24 +00002085// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00002086//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00002087// TCE-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00002088// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00002089// TCE:#define __CHAR16_TYPE__ unsigned short
2090// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00002091// TCE:#define __CHAR_BIT__ 8
Eli Friedman75e8efe2012-11-10 00:20:38 +00002092// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnerbceaf862009-10-29 04:55:36 +00002093// TCE:#define __DBL_DIG__ 6
Eli Friedman75e8efe2012-11-10 00:20:38 +00002094// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnerbceaf862009-10-29 04:55:36 +00002095// TCE:#define __DBL_HAS_DENORM__ 1
2096// TCE:#define __DBL_HAS_INFINITY__ 1
2097// TCE:#define __DBL_HAS_QUIET_NAN__ 1
2098// TCE:#define __DBL_MANT_DIG__ 24
2099// TCE:#define __DBL_MAX_10_EXP__ 38
2100// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedman75e8efe2012-11-10 00:20:38 +00002101// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnerbceaf862009-10-29 04:55:36 +00002102// TCE:#define __DBL_MIN_10_EXP__ (-37)
2103// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedman75e8efe2012-11-10 00:20:38 +00002104// TCE:#define __DBL_MIN__ 1.17549435e-38
Chris Lattnerbceaf862009-10-29 04:55:36 +00002105// TCE:#define __DECIMAL_DIG__ -1
2106// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2107// TCE:#define __FLT_DIG__ 6
2108// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
2109// TCE:#define __FLT_EVAL_METHOD__ 0
2110// TCE:#define __FLT_HAS_DENORM__ 1
2111// TCE:#define __FLT_HAS_INFINITY__ 1
2112// TCE:#define __FLT_HAS_QUIET_NAN__ 1
2113// TCE:#define __FLT_MANT_DIG__ 24
2114// TCE:#define __FLT_MAX_10_EXP__ 38
2115// TCE:#define __FLT_MAX_EXP__ 128
2116// TCE:#define __FLT_MAX__ 3.40282347e+38F
2117// TCE:#define __FLT_MIN_10_EXP__ (-37)
2118// TCE:#define __FLT_MIN_EXP__ (-125)
2119// TCE:#define __FLT_MIN__ 1.17549435e-38F
2120// TCE:#define __FLT_RADIX__ 2
2121// TCE:#define __INT16_TYPE__ short
2122// TCE:#define __INT32_TYPE__ int
2123// TCE:#define __INT8_TYPE__ char
2124// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +00002125// TCE:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00002126// TCE:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00002127// TCE:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +00002128// TCE:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002129// TCE:#define __INT_MAX__ 2147483647
Eli Friedman75e8efe2012-11-10 00:20:38 +00002130// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002131// TCE:#define __LDBL_DIG__ 6
Eli Friedman75e8efe2012-11-10 00:20:38 +00002132// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002133// TCE:#define __LDBL_HAS_DENORM__ 1
2134// TCE:#define __LDBL_HAS_INFINITY__ 1
2135// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
2136// TCE:#define __LDBL_MANT_DIG__ 24
2137// TCE:#define __LDBL_MAX_10_EXP__ 38
2138// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedman75e8efe2012-11-10 00:20:38 +00002139// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002140// TCE:#define __LDBL_MIN_10_EXP__ (-37)
2141// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedman75e8efe2012-11-10 00:20:38 +00002142// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002143// TCE:#define __LONG_LONG_MAX__ 2147483647LL
2144// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00002145// TCE-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +00002146// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00002147// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +00002148// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002149// TCE:#define __SCHAR_MAX__ 127
2150// TCE:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00002151// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00002152// TCE:#define __SIZEOF_DOUBLE__ 4
2153// TCE:#define __SIZEOF_FLOAT__ 4
2154// TCE:#define __SIZEOF_INT__ 4
2155// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
2156// TCE:#define __SIZEOF_LONG_LONG__ 4
2157// TCE:#define __SIZEOF_LONG__ 4
2158// TCE:#define __SIZEOF_POINTER__ 4
2159// TCE:#define __SIZEOF_PTRDIFF_T__ 4
2160// TCE:#define __SIZEOF_SHORT__ 2
2161// TCE:#define __SIZEOF_SIZE_T__ 4
2162// TCE:#define __SIZEOF_WCHAR_T__ 4
2163// TCE:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00002164// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00002165// TCE:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002166// TCE:#define __TCE_V1__ 1
2167// TCE:#define __TCE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00002168// TCE:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00002169// TCE:#define __USER_LABEL_PREFIX__ _
2170// TCE:#define __WCHAR_MAX__ 2147483647
2171// TCE:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00002172// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002173// TCE:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00002174// TCE:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002175// TCE:#define __tce 1
2176// TCE:#define __tce__ 1
2177// TCE:#define tce 1
2178//
Daniel Dunbara5728872009-12-15 20:14:24 +00002179// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -check-prefix X86_64 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00002180//
2181// X86_64:#define _LP64 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00002182// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00002183// X86_64:#define __CHAR16_TYPE__ unsigned short
2184// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00002185// X86_64:#define __CHAR_BIT__ 8
2186// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2187// X86_64:#define __DBL_DIG__ 15
2188// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
2189// X86_64:#define __DBL_HAS_DENORM__ 1
2190// X86_64:#define __DBL_HAS_INFINITY__ 1
2191// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
2192// X86_64:#define __DBL_MANT_DIG__ 53
2193// X86_64:#define __DBL_MAX_10_EXP__ 308
2194// X86_64:#define __DBL_MAX_EXP__ 1024
2195// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
2196// X86_64:#define __DBL_MIN_10_EXP__ (-307)
2197// X86_64:#define __DBL_MIN_EXP__ (-1021)
2198// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
2199// X86_64:#define __DECIMAL_DIG__ 21
2200// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2201// X86_64:#define __FLT_DIG__ 6
2202// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
2203// X86_64:#define __FLT_EVAL_METHOD__ 0
2204// X86_64:#define __FLT_HAS_DENORM__ 1
2205// X86_64:#define __FLT_HAS_INFINITY__ 1
2206// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
2207// X86_64:#define __FLT_MANT_DIG__ 24
2208// X86_64:#define __FLT_MAX_10_EXP__ 38
2209// X86_64:#define __FLT_MAX_EXP__ 128
2210// X86_64:#define __FLT_MAX__ 3.40282347e+38F
2211// X86_64:#define __FLT_MIN_10_EXP__ (-37)
2212// X86_64:#define __FLT_MIN_EXP__ (-125)
2213// X86_64:#define __FLT_MIN__ 1.17549435e-38F
2214// X86_64:#define __FLT_RADIX__ 2
2215// X86_64:#define __INT16_TYPE__ short
2216// X86_64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00002217// X86_64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +00002218// X86_64:#define __INT64_TYPE__ long int
2219// X86_64:#define __INT8_TYPE__ char
2220// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +00002221// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00002222// X86_64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00002223// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00002224// X86_64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00002225// X86_64:#define __INT_MAX__ 2147483647
2226// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2227// X86_64:#define __LDBL_DIG__ 18
2228// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2229// X86_64:#define __LDBL_HAS_DENORM__ 1
2230// X86_64:#define __LDBL_HAS_INFINITY__ 1
2231// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
2232// X86_64:#define __LDBL_MANT_DIG__ 64
2233// X86_64:#define __LDBL_MAX_10_EXP__ 4932
2234// X86_64:#define __LDBL_MAX_EXP__ 16384
2235// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2236// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
2237// X86_64:#define __LDBL_MIN_EXP__ (-16381)
2238// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2239// X86_64:#define __LITTLE_ENDIAN__ 1
2240// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
2241// X86_64:#define __LONG_MAX__ 9223372036854775807L
2242// X86_64:#define __LP64__ 1
2243// X86_64:#define __MMX__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00002244// X86_64:#define __NO_MATH_INLINES 1
2245// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00002246// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00002247// X86_64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00002248// X86_64:#define __REGISTER_PREFIX__
2249// X86_64:#define __SCHAR_MAX__ 127
2250// X86_64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00002251// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00002252// X86_64:#define __SIZEOF_DOUBLE__ 8
2253// X86_64:#define __SIZEOF_FLOAT__ 4
2254// X86_64:#define __SIZEOF_INT__ 4
2255// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
2256// X86_64:#define __SIZEOF_LONG_LONG__ 8
2257// X86_64:#define __SIZEOF_LONG__ 8
2258// X86_64:#define __SIZEOF_POINTER__ 8
2259// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
2260// X86_64:#define __SIZEOF_SHORT__ 2
2261// X86_64:#define __SIZEOF_SIZE_T__ 8
2262// X86_64:#define __SIZEOF_WCHAR_T__ 4
2263// X86_64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00002264// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00002265// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00002266// X86_64:#define __SSE2_MATH__ 1
2267// X86_64:#define __SSE2__ 1
2268// X86_64:#define __SSE_MATH__ 1
2269// X86_64:#define __SSE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00002270// X86_64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00002271// X86_64:#define __USER_LABEL_PREFIX__ _
2272// X86_64:#define __WCHAR_MAX__ 2147483647
2273// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00002274// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002275// X86_64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00002276// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002277// X86_64:#define __amd64 1
2278// X86_64:#define __amd64__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00002279// X86_64:#define __x86_64 1
2280// X86_64:#define __x86_64__ 1
2281//
Douglas Gregor12e84642011-01-12 21:19:25 +00002282// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -check-prefix X86_64-LINUX %s
2283//
2284// X86_64-LINUX:#define _LP64 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00002285// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregor12e84642011-01-12 21:19:25 +00002286// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
2287// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
2288// X86_64-LINUX:#define __CHAR_BIT__ 8
2289// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2290// X86_64-LINUX:#define __DBL_DIG__ 15
2291// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2292// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
2293// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
2294// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2295// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
2296// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
2297// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
2298// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2299// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2300// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
2301// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
2302// X86_64-LINUX:#define __DECIMAL_DIG__ 21
2303// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2304// X86_64-LINUX:#define __FLT_DIG__ 6
2305// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2306// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
2307// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
2308// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
2309// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2310// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
2311// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
2312// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
2313// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2314// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2315// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
2316// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2317// X86_64-LINUX:#define __FLT_RADIX__ 2
2318// X86_64-LINUX:#define __INT16_TYPE__ short
2319// X86_64-LINUX:#define __INT32_TYPE__ int
2320// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
2321// X86_64-LINUX:#define __INT64_TYPE__ long int
2322// X86_64-LINUX:#define __INT8_TYPE__ char
2323// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
2324// X86_64-LINUX:#define __INTMAX_TYPE__ long int
2325// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
2326// X86_64-LINUX:#define __INTPTR_TYPE__ long int
2327// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
2328// X86_64-LINUX:#define __INT_MAX__ 2147483647
2329// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2330// X86_64-LINUX:#define __LDBL_DIG__ 18
2331// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2332// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
2333// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
2334// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2335// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
2336// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2337// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
2338// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2339// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2340// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2341// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2342// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
2343// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2344// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
2345// X86_64-LINUX:#define __LP64__ 1
2346// X86_64-LINUX:#define __MMX__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +00002347// X86_64-LINUX:#define __NO_MATH_INLINES 1
2348// X86_64-LINUX:#define __POINTER_WIDTH__ 64
2349// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
2350// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
2351// X86_64-LINUX:#define __REGISTER_PREFIX__
2352// X86_64-LINUX:#define __SCHAR_MAX__ 127
2353// X86_64-LINUX:#define __SHRT_MAX__ 32767
2354// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2355// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
2356// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
2357// X86_64-LINUX:#define __SIZEOF_INT__ 4
2358// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
2359// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
2360// X86_64-LINUX:#define __SIZEOF_LONG__ 8
2361// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
2362// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
2363// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
2364// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
2365// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
2366// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
2367// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
2368// X86_64-LINUX:#define __SIZE_WIDTH__ 64
2369// X86_64-LINUX:#define __SSE2_MATH__ 1
2370// X86_64-LINUX:#define __SSE2__ 1
2371// X86_64-LINUX:#define __SSE_MATH__ 1
2372// X86_64-LINUX:#define __SSE__ 1
2373// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
2374// X86_64-LINUX:#define __USER_LABEL_PREFIX__
2375// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
2376// X86_64-LINUX:#define __WCHAR_TYPE__ int
2377// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
2378// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
2379// X86_64-LINUX:#define __WINT_WIDTH__ 32
2380// X86_64-LINUX:#define __amd64 1
2381// X86_64-LINUX:#define __amd64__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +00002382// X86_64-LINUX:#define __x86_64 1
2383// X86_64-LINUX:#define __x86_64__ 1
2384//
David Chisnall11d3f4c2012-07-03 20:49:52 +00002385// RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -check-prefix GNUSOURCE %s
Douglas Gregor66791df2010-04-16 06:31:05 +00002386// GNUSOURCE:#define _GNU_SOURCE 1
2387//
Dan Gohmancfeac342010-05-28 00:27:15 +00002388// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -check-prefix NORTTI %s
2389// NORTTI: __GXX_ABI_VERSION
2390// NORTTI-NOT:#define __GXX_RTTI
2391// NORTTI: __STDC__
Evgeniy Stepanov32064032012-04-26 12:08:09 +00002392//
2393// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -check-prefix ANDROID %s
2394// ANDROID: __ANDROID__ 1