blob: eaf08ca87d0190bdd779968b3fc7a2228898fe2a [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 Smith762bb9d2011-10-13 22:29:44 +000012// RUN: %clang_cc1 -x c++ -std=c++11 -E -dM < /dev/null | FileCheck -check-prefix CXX0X %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000013//
Chris Lattnerbceaf862009-10-29 04:55:36 +000014// CXX0X:#define __GNUG__
15// CXX0X:#define __GXX_EXPERIMENTAL_CXX0X__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +000016// CXX0X:#define __GXX_RTTI 1
Chris Lattnerbceaf862009-10-29 04:55:36 +000017// CXX0X:#define __GXX_WEAK__ 1
Douglas Gregor06788992011-06-20 15:00:58 +000018// CXX0X:#define __cplusplus 201103L
Chris Lattnerbceaf862009-10-29 04:55:36 +000019// CXX0X:#define __private_extern__ extern
20//
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
215// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
216// ARM:#define __LDBL_DIG__ 15
217// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16
218// 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
224// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308
225// ARM:#define __LDBL_MIN_10_EXP__ (-307)
226// ARM:#define __LDBL_MIN_EXP__ (-1021)
227// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308
228// 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
263//
Daniel Dunbara5728872009-12-15 20:14:24 +0000264// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -check-prefix I386 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000265//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000266// I386-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000267// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +0000268// I386:#define __CHAR16_TYPE__ unsigned short
269// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000270// I386:#define __CHAR_BIT__ 8
271// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
272// I386:#define __DBL_DIG__ 15
273// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
274// I386:#define __DBL_HAS_DENORM__ 1
275// I386:#define __DBL_HAS_INFINITY__ 1
276// I386:#define __DBL_HAS_QUIET_NAN__ 1
277// I386:#define __DBL_MANT_DIG__ 53
278// I386:#define __DBL_MAX_10_EXP__ 308
279// I386:#define __DBL_MAX_EXP__ 1024
280// I386:#define __DBL_MAX__ 1.7976931348623157e+308
281// I386:#define __DBL_MIN_10_EXP__ (-307)
282// I386:#define __DBL_MIN_EXP__ (-1021)
283// I386:#define __DBL_MIN__ 2.2250738585072014e-308
284// I386:#define __DECIMAL_DIG__ 21
285// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
286// I386:#define __FLT_DIG__ 6
287// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramerb4066692011-12-28 15:47:06 +0000288// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +0000289// I386:#define __FLT_HAS_DENORM__ 1
290// I386:#define __FLT_HAS_INFINITY__ 1
291// I386:#define __FLT_HAS_QUIET_NAN__ 1
292// I386:#define __FLT_MANT_DIG__ 24
293// I386:#define __FLT_MAX_10_EXP__ 38
294// I386:#define __FLT_MAX_EXP__ 128
295// I386:#define __FLT_MAX__ 3.40282347e+38F
296// I386:#define __FLT_MIN_10_EXP__ (-37)
297// I386:#define __FLT_MIN_EXP__ (-125)
298// I386:#define __FLT_MIN__ 1.17549435e-38F
299// I386:#define __FLT_RADIX__ 2
300// I386:#define __INT16_TYPE__ short
301// I386:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000302// I386:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000303// I386:#define __INT64_TYPE__ long long int
304// I386:#define __INT8_TYPE__ char
305// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000306// I386:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000307// I386:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000308// I386:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000309// I386:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000310// I386:#define __INT_MAX__ 2147483647
311// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
312// I386:#define __LDBL_DIG__ 18
313// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
314// I386:#define __LDBL_HAS_DENORM__ 1
315// I386:#define __LDBL_HAS_INFINITY__ 1
316// I386:#define __LDBL_HAS_QUIET_NAN__ 1
317// I386:#define __LDBL_MANT_DIG__ 64
318// I386:#define __LDBL_MAX_10_EXP__ 4932
319// I386:#define __LDBL_MAX_EXP__ 16384
320// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
321// I386:#define __LDBL_MIN_10_EXP__ (-4931)
322// I386:#define __LDBL_MIN_EXP__ (-16381)
323// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
324// I386:#define __LITTLE_ENDIAN__ 1
325// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
326// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000327// I386-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000328// I386:#define __NO_MATH_INLINES 1
329// I386:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000330// I386:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000331// I386:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000332// I386:#define __REGISTER_PREFIX__
333// I386:#define __SCHAR_MAX__ 127
334// I386:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000335// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000336// I386:#define __SIZEOF_DOUBLE__ 8
337// I386:#define __SIZEOF_FLOAT__ 4
338// I386:#define __SIZEOF_INT__ 4
339// I386:#define __SIZEOF_LONG_DOUBLE__ 12
340// I386:#define __SIZEOF_LONG_LONG__ 8
341// I386:#define __SIZEOF_LONG__ 4
342// I386:#define __SIZEOF_POINTER__ 4
343// I386:#define __SIZEOF_PTRDIFF_T__ 4
344// I386:#define __SIZEOF_SHORT__ 2
345// I386:#define __SIZEOF_SIZE_T__ 4
346// I386:#define __SIZEOF_WCHAR_T__ 4
347// I386:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000348// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000349// I386:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000350// I386:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000351// I386:#define __USER_LABEL_PREFIX__ _
352// I386:#define __WCHAR_MAX__ 2147483647
353// I386:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000354// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000355// I386:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000356// I386:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000357// I386:#define __i386 1
358// I386:#define __i386__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +0000359// I386:#define i386 1
360//
Benjamin Kramerb4066692011-12-28 15:47:06 +0000361// 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 +0000362//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000363// I386-LINUX-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000364// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregor12e84642011-01-12 21:19:25 +0000365// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
366// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
367// I386-LINUX:#define __CHAR_BIT__ 8
368// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
369// I386-LINUX:#define __DBL_DIG__ 15
370// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
371// I386-LINUX:#define __DBL_HAS_DENORM__ 1
372// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
373// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
374// I386-LINUX:#define __DBL_MANT_DIG__ 53
375// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
376// I386-LINUX:#define __DBL_MAX_EXP__ 1024
377// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
378// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
379// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
380// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
381// I386-LINUX:#define __DECIMAL_DIG__ 21
382// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
383// I386-LINUX:#define __FLT_DIG__ 6
384// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
385// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
386// I386-LINUX:#define __FLT_HAS_DENORM__ 1
387// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
388// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
389// I386-LINUX:#define __FLT_MANT_DIG__ 24
390// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
391// I386-LINUX:#define __FLT_MAX_EXP__ 128
392// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
393// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
394// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
395// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
396// I386-LINUX:#define __FLT_RADIX__ 2
397// I386-LINUX:#define __INT16_TYPE__ short
398// I386-LINUX:#define __INT32_TYPE__ int
399// I386-LINUX:#define __INT64_C_SUFFIX__ LL
400// I386-LINUX:#define __INT64_TYPE__ long long int
401// I386-LINUX:#define __INT8_TYPE__ char
402// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
403// I386-LINUX:#define __INTMAX_TYPE__ long long int
404// I386-LINUX:#define __INTMAX_WIDTH__ 64
405// I386-LINUX:#define __INTPTR_TYPE__ int
406// I386-LINUX:#define __INTPTR_WIDTH__ 32
407// I386-LINUX:#define __INT_MAX__ 2147483647
408// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
409// I386-LINUX:#define __LDBL_DIG__ 18
410// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
411// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
412// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
413// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
414// I386-LINUX:#define __LDBL_MANT_DIG__ 64
415// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
416// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
417// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
418// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
419// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
420// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
421// I386-LINUX:#define __LITTLE_ENDIAN__ 1
422// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
423// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000424// I386-LINUX-NOT:#define __LP64__
Douglas Gregor12e84642011-01-12 21:19:25 +0000425// I386-LINUX:#define __NO_MATH_INLINES 1
426// I386-LINUX:#define __POINTER_WIDTH__ 32
427// I386-LINUX:#define __PTRDIFF_TYPE__ int
428// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
429// I386-LINUX:#define __REGISTER_PREFIX__
430// I386-LINUX:#define __SCHAR_MAX__ 127
431// I386-LINUX:#define __SHRT_MAX__ 32767
432// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
433// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
434// I386-LINUX:#define __SIZEOF_FLOAT__ 4
435// I386-LINUX:#define __SIZEOF_INT__ 4
436// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
437// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
438// I386-LINUX:#define __SIZEOF_LONG__ 4
439// I386-LINUX:#define __SIZEOF_POINTER__ 4
440// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
441// I386-LINUX:#define __SIZEOF_SHORT__ 2
442// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
443// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
444// I386-LINUX:#define __SIZEOF_WINT_T__ 4
445// I386-LINUX:#define __SIZE_TYPE__ unsigned int
446// I386-LINUX:#define __SIZE_WIDTH__ 32
447// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
448// I386-LINUX:#define __USER_LABEL_PREFIX__
449// I386-LINUX:#define __WCHAR_MAX__ 2147483647
450// I386-LINUX:#define __WCHAR_TYPE__ int
451// I386-LINUX:#define __WCHAR_WIDTH__ 32
452// I386-LINUX:#define __WINT_TYPE__ unsigned int
453// I386-LINUX:#define __WINT_WIDTH__ 32
454// I386-LINUX:#define __i386 1
455// I386-LINUX:#define __i386__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +0000456// I386-LINUX:#define i386 1
457//
Simon Atanasyan7a521802012-04-06 08:37:24 +0000458// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -check-prefix MIPS32BE %s
459//
460// MIPS32BE:#define MIPSEB 1
461// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000462// MIPS32BE-NOT:#define _LP64
Simon Atanasyan7a521802012-04-06 08:37:24 +0000463// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan260e5062012-08-29 15:17:29 +0000464// MIPS32BE:#define _MIPS_ARCH "mips32"
465// MIPS32BE:#define _MIPS_ARCH_MIPS32 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000466// MIPS32BE:#define _MIPS_SIM _ABIO32
467// MIPS32BE:#define _MIPS_SZINT 32
468// MIPS32BE:#define _MIPS_SZLONG 32
469// MIPS32BE:#define _MIPS_SZPTR 32
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000470// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000471// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
472// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
473// MIPS32BE:#define __CHAR_BIT__ 8
474// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
475// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
476// MIPS32BE:#define __DBL_DIG__ 15
477// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
478// MIPS32BE:#define __DBL_HAS_DENORM__ 1
479// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
480// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
481// MIPS32BE:#define __DBL_MANT_DIG__ 53
482// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
483// MIPS32BE:#define __DBL_MAX_EXP__ 1024
484// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
485// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
486// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
487// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
488// MIPS32BE:#define __DECIMAL_DIG__ 17
489// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
490// MIPS32BE:#define __FLT_DIG__ 6
491// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
492// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
493// MIPS32BE:#define __FLT_HAS_DENORM__ 1
494// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
495// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
496// MIPS32BE:#define __FLT_MANT_DIG__ 24
497// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
498// MIPS32BE:#define __FLT_MAX_EXP__ 128
499// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
500// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
501// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
502// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
503// MIPS32BE:#define __FLT_RADIX__ 2
504// MIPS32BE:#define __INT16_TYPE__ short
505// MIPS32BE:#define __INT32_TYPE__ int
506// MIPS32BE:#define __INT64_C_SUFFIX__ LL
507// MIPS32BE:#define __INT64_TYPE__ long long int
508// MIPS32BE:#define __INT8_TYPE__ char
509// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
510// MIPS32BE:#define __INTMAX_TYPE__ long long int
511// MIPS32BE:#define __INTMAX_WIDTH__ 64
512// MIPS32BE:#define __INTPTR_TYPE__ long int
513// MIPS32BE:#define __INTPTR_WIDTH__ 32
514// MIPS32BE:#define __INT_MAX__ 2147483647
515// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
516// MIPS32BE:#define __LDBL_DIG__ 15
517// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16
518// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
519// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
520// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
521// MIPS32BE:#define __LDBL_MANT_DIG__ 53
522// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
523// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
524// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308
525// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
526// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
527// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308
528// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
529// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000530// MIPS32BE-NOT:#define __LP64__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000531// MIPS32BE:#define __MIPSEB 1
532// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000533// MIPS32BE:#define __POINTER_WIDTH__ 32
534// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
535// MIPS32BE:#define __PTRDIFF_TYPE__ int
536// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
537// MIPS32BE:#define __REGISTER_PREFIX__
538// MIPS32BE:#define __SCHAR_MAX__ 127
539// MIPS32BE:#define __SHRT_MAX__ 32767
540// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
541// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
542// MIPS32BE:#define __SIZEOF_FLOAT__ 4
543// MIPS32BE:#define __SIZEOF_INT__ 4
544// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
545// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
546// MIPS32BE:#define __SIZEOF_LONG__ 4
547// MIPS32BE:#define __SIZEOF_POINTER__ 4
548// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
549// MIPS32BE:#define __SIZEOF_SHORT__ 2
550// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
551// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
552// MIPS32BE:#define __SIZEOF_WINT_T__ 4
553// MIPS32BE:#define __SIZE_TYPE__ unsigned int
554// MIPS32BE:#define __SIZE_WIDTH__ 32
555// MIPS32BE:#define __STDC_HOSTED__ 0
556// MIPS32BE:#define __STDC_VERSION__ 199901L
557// MIPS32BE:#define __STDC__ 1
558// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
559// MIPS32BE:#define __USER_LABEL_PREFIX__ _
560// MIPS32BE:#define __WCHAR_MAX__ 2147483647
561// MIPS32BE:#define __WCHAR_TYPE__ int
562// MIPS32BE:#define __WCHAR_WIDTH__ 32
563// MIPS32BE:#define __WINT_TYPE__ int
564// MIPS32BE:#define __WINT_WIDTH__ 32
565// MIPS32BE:#define __clang__ 1
566// MIPS32BE:#define __llvm__ 1
567// MIPS32BE:#define __mips 1
568// MIPS32BE:#define __mips__ 1
569// MIPS32BE:#define __mips_hard_float 1
570// MIPS32BE:#define __mips_o32 1
571// MIPS32BE:#define _mips 1
572// MIPS32BE:#define mips 1
573//
574// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mipsel-none-none < /dev/null | FileCheck -check-prefix MIPS32EL %s
575//
576// MIPS32EL:#define MIPSEL 1
577// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000578// MIPS32EL-NOT:#define _LP64
Simon Atanasyan7a521802012-04-06 08:37:24 +0000579// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan260e5062012-08-29 15:17:29 +0000580// MIPS32EL:#define _MIPS_ARCH "mips32"
581// MIPS32EL:#define _MIPS_ARCH_MIPS32 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000582// MIPS32EL:#define _MIPS_SIM _ABIO32
583// MIPS32EL:#define _MIPS_SZINT 32
584// MIPS32EL:#define _MIPS_SZLONG 32
585// MIPS32EL:#define _MIPS_SZPTR 32
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000586// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000587// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
588// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
589// MIPS32EL:#define __CHAR_BIT__ 8
590// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
591// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
592// MIPS32EL:#define __DBL_DIG__ 15
593// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
594// MIPS32EL:#define __DBL_HAS_DENORM__ 1
595// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
596// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
597// MIPS32EL:#define __DBL_MANT_DIG__ 53
598// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
599// MIPS32EL:#define __DBL_MAX_EXP__ 1024
600// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
601// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
602// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
603// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
604// MIPS32EL:#define __DECIMAL_DIG__ 17
605// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
606// MIPS32EL:#define __FLT_DIG__ 6
607// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
608// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
609// MIPS32EL:#define __FLT_HAS_DENORM__ 1
610// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
611// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
612// MIPS32EL:#define __FLT_MANT_DIG__ 24
613// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
614// MIPS32EL:#define __FLT_MAX_EXP__ 128
615// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
616// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
617// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
618// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
619// MIPS32EL:#define __FLT_RADIX__ 2
620// MIPS32EL:#define __INT16_TYPE__ short
621// MIPS32EL:#define __INT32_TYPE__ int
622// MIPS32EL:#define __INT64_C_SUFFIX__ LL
623// MIPS32EL:#define __INT64_TYPE__ long long int
624// MIPS32EL:#define __INT8_TYPE__ char
625// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
626// MIPS32EL:#define __INTMAX_TYPE__ long long int
627// MIPS32EL:#define __INTMAX_WIDTH__ 64
628// MIPS32EL:#define __INTPTR_TYPE__ long int
629// MIPS32EL:#define __INTPTR_WIDTH__ 32
630// MIPS32EL:#define __INT_MAX__ 2147483647
631// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
632// MIPS32EL:#define __LDBL_DIG__ 15
633// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16
634// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
635// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
636// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
637// MIPS32EL:#define __LDBL_MANT_DIG__ 53
638// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
639// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
640// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308
641// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
642// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
643// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308
644// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
645// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000646// MIPS32EL-NOT:#define __LP64__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000647// MIPS32EL:#define __MIPSEL 1
648// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000649// MIPS32EL:#define __POINTER_WIDTH__ 32
650// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
651// MIPS32EL:#define __PTRDIFF_TYPE__ int
652// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
653// MIPS32EL:#define __REGISTER_PREFIX__
654// MIPS32EL:#define __SCHAR_MAX__ 127
655// MIPS32EL:#define __SHRT_MAX__ 32767
656// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
657// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
658// MIPS32EL:#define __SIZEOF_FLOAT__ 4
659// MIPS32EL:#define __SIZEOF_INT__ 4
660// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
661// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
662// MIPS32EL:#define __SIZEOF_LONG__ 4
663// MIPS32EL:#define __SIZEOF_POINTER__ 4
664// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
665// MIPS32EL:#define __SIZEOF_SHORT__ 2
666// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
667// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
668// MIPS32EL:#define __SIZEOF_WINT_T__ 4
669// MIPS32EL:#define __SIZE_TYPE__ unsigned int
670// MIPS32EL:#define __SIZE_WIDTH__ 32
671// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
672// MIPS32EL:#define __USER_LABEL_PREFIX__ _
673// MIPS32EL:#define __WCHAR_MAX__ 2147483647
674// MIPS32EL:#define __WCHAR_TYPE__ int
675// MIPS32EL:#define __WCHAR_WIDTH__ 32
676// MIPS32EL:#define __WINT_TYPE__ int
677// MIPS32EL:#define __WINT_WIDTH__ 32
678// MIPS32EL:#define __clang__ 1
679// MIPS32EL:#define __llvm__ 1
680// MIPS32EL:#define __mips 1
681// MIPS32EL:#define __mips__ 1
682// MIPS32EL:#define __mips_hard_float 1
683// MIPS32EL:#define __mips_o32 1
684// MIPS32EL:#define _mips 1
685// MIPS32EL:#define mips 1
686//
687// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -check-prefix MIPS64BE %s
688//
689// MIPS64BE:#define MIPSEB 1
690// MIPS64BE:#define _ABI64 3
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000691// MIPS64BE:#define _LP64 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000692// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan260e5062012-08-29 15:17:29 +0000693// MIPS64BE:#define _MIPS_ARCH "mips64"
694// MIPS64BE:#define _MIPS_ARCH_MIPS64 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000695// MIPS64BE:#define _MIPS_SIM _ABI64
696// MIPS64BE:#define _MIPS_SZINT 32
697// MIPS64BE:#define _MIPS_SZLONG 64
698// MIPS64BE:#define _MIPS_SZPTR 64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000699// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000700// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
701// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
702// MIPS64BE:#define __CHAR_BIT__ 8
703// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
704// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
705// MIPS64BE:#define __DBL_DIG__ 15
706// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
707// MIPS64BE:#define __DBL_HAS_DENORM__ 1
708// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
709// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
710// MIPS64BE:#define __DBL_MANT_DIG__ 53
711// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
712// MIPS64BE:#define __DBL_MAX_EXP__ 1024
713// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
714// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
715// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
716// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
717// MIPS64BE:#define __DECIMAL_DIG__ 36
718// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
719// MIPS64BE:#define __FLT_DIG__ 6
720// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
721// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
722// MIPS64BE:#define __FLT_HAS_DENORM__ 1
723// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
724// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
725// MIPS64BE:#define __FLT_MANT_DIG__ 24
726// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
727// MIPS64BE:#define __FLT_MAX_EXP__ 128
728// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
729// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
730// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
731// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
732// MIPS64BE:#define __FLT_RADIX__ 2
733// MIPS64BE:#define __INT16_TYPE__ short
734// MIPS64BE:#define __INT32_TYPE__ int
735// MIPS64BE:#define __INT64_C_SUFFIX__ LL
736// MIPS64BE:#define __INT64_TYPE__ long long int
737// MIPS64BE:#define __INT8_TYPE__ char
738// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807LL
739// MIPS64BE:#define __INTMAX_TYPE__ long long int
740// MIPS64BE:#define __INTMAX_WIDTH__ 64
741// MIPS64BE:#define __INTPTR_TYPE__ long int
742// MIPS64BE:#define __INTPTR_WIDTH__ 64
743// MIPS64BE:#define __INT_MAX__ 2147483647
744// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
745// MIPS64BE:#define __LDBL_DIG__ 33
746// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
747// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
748// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
749// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
750// MIPS64BE:#define __LDBL_MANT_DIG__ 113
751// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
752// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
753// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
754// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
755// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
756// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
757// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
758// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000759// MIPS64BE:#define __LP64__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000760// MIPS64BE:#define __MIPSEB 1
761// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000762// MIPS64BE:#define __POINTER_WIDTH__ 64
763// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
764// MIPS64BE:#define __PTRDIFF_TYPE__ long int
765// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
766// MIPS64BE:#define __REGISTER_PREFIX__
767// MIPS64BE:#define __SCHAR_MAX__ 127
768// MIPS64BE:#define __SHRT_MAX__ 32767
769// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
770// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
771// MIPS64BE:#define __SIZEOF_FLOAT__ 4
772// MIPS64BE:#define __SIZEOF_INT__ 4
773// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
774// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
775// MIPS64BE:#define __SIZEOF_LONG__ 8
776// MIPS64BE:#define __SIZEOF_POINTER__ 8
777// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
778// MIPS64BE:#define __SIZEOF_SHORT__ 2
779// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
780// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
781// MIPS64BE:#define __SIZEOF_WINT_T__ 4
782// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
783// MIPS64BE:#define __SIZE_WIDTH__ 64
784// MIPS64BE:#define __UINTMAX_TYPE__ long long unsigned int
785// MIPS64BE:#define __USER_LABEL_PREFIX__ _
786// MIPS64BE:#define __WCHAR_MAX__ 2147483647
787// MIPS64BE:#define __WCHAR_TYPE__ int
788// MIPS64BE:#define __WCHAR_WIDTH__ 32
789// MIPS64BE:#define __WINT_TYPE__ int
790// MIPS64BE:#define __WINT_WIDTH__ 32
791// MIPS64BE:#define __clang__ 1
792// MIPS64BE:#define __llvm__ 1
793// MIPS64BE:#define __mips 1
Simon Atanasyan600a5132012-08-29 20:50:11 +0000794// MIPS64BE:#define __mips64 1
795// MIPS64BE:#define __mips64__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000796// MIPS64BE:#define __mips__ 1
797// MIPS64BE:#define __mips_hard_float 1
798// MIPS64BE:#define __mips_n64 1
799// MIPS64BE:#define _mips 1
800// MIPS64BE:#define mips 1
801//
802// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-none-none < /dev/null | FileCheck -check-prefix MIPS64EL %s
803//
804// MIPS64EL:#define MIPSEL 1
805// MIPS64EL:#define _ABI64 3
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000806// MIPS64EL:#define _LP64 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000807// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan260e5062012-08-29 15:17:29 +0000808// MIPS64EL:#define _MIPS_ARCH "mips64"
809// MIPS64EL:#define _MIPS_ARCH_MIPS64 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000810// MIPS64EL:#define _MIPS_SIM _ABI64
811// MIPS64EL:#define _MIPS_SZINT 32
812// MIPS64EL:#define _MIPS_SZLONG 64
813// MIPS64EL:#define _MIPS_SZPTR 64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000814// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000815// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
816// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
817// MIPS64EL:#define __CHAR_BIT__ 8
818// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
819// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
820// MIPS64EL:#define __DBL_DIG__ 15
821// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
822// MIPS64EL:#define __DBL_HAS_DENORM__ 1
823// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
824// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
825// MIPS64EL:#define __DBL_MANT_DIG__ 53
826// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
827// MIPS64EL:#define __DBL_MAX_EXP__ 1024
828// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
829// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
830// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
831// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
832// MIPS64EL:#define __DECIMAL_DIG__ 36
833// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
834// MIPS64EL:#define __FLT_DIG__ 6
835// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
836// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
837// MIPS64EL:#define __FLT_HAS_DENORM__ 1
838// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
839// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
840// MIPS64EL:#define __FLT_MANT_DIG__ 24
841// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
842// MIPS64EL:#define __FLT_MAX_EXP__ 128
843// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
844// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
845// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
846// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
847// MIPS64EL:#define __FLT_RADIX__ 2
848// MIPS64EL:#define __INT16_TYPE__ short
849// MIPS64EL:#define __INT32_TYPE__ int
850// MIPS64EL:#define __INT64_C_SUFFIX__ LL
851// MIPS64EL:#define __INT64_TYPE__ long long int
852// MIPS64EL:#define __INT8_TYPE__ char
853// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807LL
854// MIPS64EL:#define __INTMAX_TYPE__ long long int
855// MIPS64EL:#define __INTMAX_WIDTH__ 64
856// MIPS64EL:#define __INTPTR_TYPE__ long int
857// MIPS64EL:#define __INTPTR_WIDTH__ 64
858// MIPS64EL:#define __INT_MAX__ 2147483647
859// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
860// MIPS64EL:#define __LDBL_DIG__ 33
861// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
862// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
863// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
864// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
865// MIPS64EL:#define __LDBL_MANT_DIG__ 113
866// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
867// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
868// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
869// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
870// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
871// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
872// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
873// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000874// MIPS64EL:#define __LP64__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000875// MIPS64EL:#define __MIPSEL 1
876// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000877// MIPS64EL:#define __POINTER_WIDTH__ 64
878// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
879// MIPS64EL:#define __PTRDIFF_TYPE__ long int
880// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
881// MIPS64EL:#define __REGISTER_PREFIX__
882// MIPS64EL:#define __SCHAR_MAX__ 127
883// MIPS64EL:#define __SHRT_MAX__ 32767
884// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
885// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
886// MIPS64EL:#define __SIZEOF_FLOAT__ 4
887// MIPS64EL:#define __SIZEOF_INT__ 4
888// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
889// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
890// MIPS64EL:#define __SIZEOF_LONG__ 8
891// MIPS64EL:#define __SIZEOF_POINTER__ 8
892// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
893// MIPS64EL:#define __SIZEOF_SHORT__ 2
894// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
895// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
896// MIPS64EL:#define __SIZEOF_WINT_T__ 4
897// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
898// MIPS64EL:#define __SIZE_WIDTH__ 64
899// MIPS64EL:#define __UINTMAX_TYPE__ long long unsigned int
900// MIPS64EL:#define __USER_LABEL_PREFIX__ _
901// MIPS64EL:#define __WCHAR_MAX__ 2147483647
902// MIPS64EL:#define __WCHAR_TYPE__ int
903// MIPS64EL:#define __WCHAR_WIDTH__ 32
904// MIPS64EL:#define __WINT_TYPE__ int
905// MIPS64EL:#define __WINT_WIDTH__ 32
906// MIPS64EL:#define __clang__ 1
907// MIPS64EL:#define __llvm__ 1
908// MIPS64EL:#define __mips 1
Simon Atanasyan600a5132012-08-29 20:50:11 +0000909// MIPS64EL:#define __mips64 1
910// MIPS64EL:#define __mips64__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000911// MIPS64EL:#define __mips__ 1
912// MIPS64EL:#define __mips_hard_float 1
913// MIPS64EL:#define __mips_n64 1
914// MIPS64EL:#define _mips 1
915// MIPS64EL:#define mips 1
916//
Simon Atanasyanaba3f0f2012-04-06 17:51:49 +0000917// Check MIPS float ABI macros
918//
919// RUN: %clang_cc1 -E -dM -ffreestanding \
920// RUN: -triple=mips-none-none < /dev/null \
921// RUN: | FileCheck -check-prefix MIPS-FABI-HARD %s
922// MIPS-FABI-HARD:#define __mips_hard_float 1
923//
924// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
925// RUN: -triple=mips-none-none < /dev/null \
926// RUN: | FileCheck -check-prefix MIPS-FABI-SOFT %s
927// MIPS-FABI-SOFT:#define __mips_soft_float 1
928//
929// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
930// RUN: -triple=mips-none-none < /dev/null \
931// RUN: | FileCheck -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyan3dbcc882012-06-05 13:06:56 +0000932// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyanaba3f0f2012-04-06 17:51:49 +0000933// MIPS-FABI-SINGLE:#define __mips_single_float 1
934//
Simon Atanasyan1176bcd2012-07-05 16:06:06 +0000935// Check MIPS features macros
936//
937// RUN: %clang_cc1 -target-feature +mips16 \
938// RUN: -E -dM -triple=mips-none-none < /dev/null \
939// RUN: | FileCheck -check-prefix MIPS16 %s
940// MIPS16:#define __mips16 1
941//
942// RUN: %clang_cc1 -target-feature -mips16 \
943// RUN: -E -dM -triple=mips-none-none < /dev/null \
944// RUN: | FileCheck -check-prefix NOMIPS16 %s
945// NOMIPS16-NOT:#define __mips16 1
946//
Simon Atanasyana1b62272012-07-05 20:16:22 +0000947// RUN: %clang_cc1 -target-feature +dsp \
948// RUN: -E -dM -triple=mips-none-none < /dev/null \
949// RUN: | FileCheck -check-prefix MIPS-DSP %s
950// MIPS-DSP:#define __mips_dsp 1
951// MIPS-DSP:#define __mips_dsp_rev 1
952// MIPS-DSP-NOT:#define __mips_dspr2 1
953//
954// RUN: %clang_cc1 -target-feature +dspr2 \
955// RUN: -E -dM -triple=mips-none-none < /dev/null \
956// RUN: | FileCheck -check-prefix MIPS-DSPR2 %s
957// MIPS-DSPR2:#define __mips_dsp 1
958// MIPS-DSPR2:#define __mips_dsp_rev 2
959// MIPS-DSPR2:#define __mips_dspr2 1
960//
Daniel Dunbara5728872009-12-15 20:14:24 +0000961// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -check-prefix MSP430 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000962//
963// MSP430:#define MSP430 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +0000964// MSP430-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000965// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +0000966// MSP430:#define __CHAR16_TYPE__ unsigned short
967// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000968// MSP430:#define __CHAR_BIT__ 8
969// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
970// MSP430:#define __DBL_DIG__ 15
971// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
972// MSP430:#define __DBL_HAS_DENORM__ 1
973// MSP430:#define __DBL_HAS_INFINITY__ 1
974// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
975// MSP430:#define __DBL_MANT_DIG__ 53
976// MSP430:#define __DBL_MAX_10_EXP__ 308
977// MSP430:#define __DBL_MAX_EXP__ 1024
978// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
979// MSP430:#define __DBL_MIN_10_EXP__ (-307)
980// MSP430:#define __DBL_MIN_EXP__ (-1021)
981// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
982// MSP430:#define __DECIMAL_DIG__ 17
983// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
984// MSP430:#define __FLT_DIG__ 6
985// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
986// MSP430:#define __FLT_EVAL_METHOD__ 0
987// MSP430:#define __FLT_HAS_DENORM__ 1
988// MSP430:#define __FLT_HAS_INFINITY__ 1
989// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
990// MSP430:#define __FLT_MANT_DIG__ 24
991// MSP430:#define __FLT_MAX_10_EXP__ 38
992// MSP430:#define __FLT_MAX_EXP__ 128
993// MSP430:#define __FLT_MAX__ 3.40282347e+38F
994// MSP430:#define __FLT_MIN_10_EXP__ (-37)
995// MSP430:#define __FLT_MIN_EXP__ (-125)
996// MSP430:#define __FLT_MIN__ 1.17549435e-38F
997// MSP430:#define __FLT_RADIX__ 2
998// MSP430:#define __INT16_TYPE__ short
Ken Dyckeef22ef2009-11-16 16:36:33 +0000999// MSP430:#define __INT32_C_SUFFIX__ L
Chris Lattnerdcdd2a02009-11-12 08:08:27 +00001000// MSP430:#define __INT32_TYPE__ long int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001001// MSP430:#define __INT8_TYPE__ char
1002// MSP430:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +00001003// MSP430:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001004// MSP430:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001005// MSP430:#define __INTPTR_TYPE__ short
Ken Dyckd896e1a2009-11-18 20:05:48 +00001006// MSP430:#define __INTPTR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001007// MSP430:#define __INT_MAX__ 32767
1008// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
1009// MSP430:#define __LDBL_DIG__ 15
1010// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16
1011// MSP430:#define __LDBL_HAS_DENORM__ 1
1012// MSP430:#define __LDBL_HAS_INFINITY__ 1
1013// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
1014// MSP430:#define __LDBL_MANT_DIG__ 53
1015// MSP430:#define __LDBL_MAX_10_EXP__ 308
1016// MSP430:#define __LDBL_MAX_EXP__ 1024
1017// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308
1018// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
1019// MSP430:#define __LDBL_MIN_EXP__ (-1021)
1020// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308
Anton Korobeynikov79bff432010-01-14 21:36:52 +00001021// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnerbceaf862009-10-29 04:55:36 +00001022// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001023// MSP430-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +00001024// MSP430:#define __MSP430__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001025// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +00001026// MSP430:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +00001027// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001028// MSP430:#define __SCHAR_MAX__ 127
1029// MSP430:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001030// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001031// MSP430:#define __SIZEOF_DOUBLE__ 8
1032// MSP430:#define __SIZEOF_FLOAT__ 4
1033// MSP430:#define __SIZEOF_INT__ 2
1034// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
1035// MSP430:#define __SIZEOF_LONG_LONG__ 8
1036// MSP430:#define __SIZEOF_LONG__ 4
1037// MSP430:#define __SIZEOF_POINTER__ 2
1038// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
1039// MSP430:#define __SIZEOF_SHORT__ 2
1040// MSP430:#define __SIZEOF_SIZE_T__ 2
1041// MSP430:#define __SIZEOF_WCHAR_T__ 2
1042// MSP430:#define __SIZEOF_WINT_T__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +00001043// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001044// MSP430:#define __SIZE_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +00001045// MSP430:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001046// MSP430:#define __USER_LABEL_PREFIX__ _
Chris Lattner91846462009-11-12 08:04:33 +00001047// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnerbceaf862009-10-29 04:55:36 +00001048// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001049// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001050// MSP430:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001051// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001052// MSP430:#define __clang__ 1
1053//
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001054// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -check-prefix NVPTX32 %s
1055//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001056// NVPTX32-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001057// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001058// NVPTX32:#define __CHAR16_TYPE__ unsigned short
1059// NVPTX32:#define __CHAR32_TYPE__ unsigned int
1060// NVPTX32:#define __CHAR_BIT__ 8
1061// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
1062// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1063// NVPTX32:#define __DBL_DIG__ 15
1064// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
1065// NVPTX32:#define __DBL_HAS_DENORM__ 1
1066// NVPTX32:#define __DBL_HAS_INFINITY__ 1
1067// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
1068// NVPTX32:#define __DBL_MANT_DIG__ 53
1069// NVPTX32:#define __DBL_MAX_10_EXP__ 308
1070// NVPTX32:#define __DBL_MAX_EXP__ 1024
1071// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
1072// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
1073// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
1074// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
1075// NVPTX32:#define __DECIMAL_DIG__ 17
1076// NVPTX32:#define __FINITE_MATH_ONLY__ 0
1077// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1078// NVPTX32:#define __FLT_DIG__ 6
1079// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
1080// NVPTX32:#define __FLT_EVAL_METHOD__ 0
1081// NVPTX32:#define __FLT_HAS_DENORM__ 1
1082// NVPTX32:#define __FLT_HAS_INFINITY__ 1
1083// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
1084// NVPTX32:#define __FLT_MANT_DIG__ 24
1085// NVPTX32:#define __FLT_MAX_10_EXP__ 38
1086// NVPTX32:#define __FLT_MAX_EXP__ 128
1087// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
1088// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
1089// NVPTX32:#define __FLT_MIN_EXP__ (-125)
1090// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
1091// NVPTX32:#define __FLT_RADIX__ 2
1092// NVPTX32:#define __INT16_TYPE__ short
1093// NVPTX32:#define __INT32_TYPE__ int
1094// NVPTX32:#define __INT64_C_SUFFIX__ LL
1095// NVPTX32:#define __INT64_TYPE__ long long int
1096// NVPTX32:#define __INT8_TYPE__ char
1097// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
1098// NVPTX32:#define __INTMAX_TYPE__ long long int
1099// NVPTX32:#define __INTMAX_WIDTH__ 64
1100// NVPTX32:#define __INTPTR_TYPE__ unsigned int
1101// NVPTX32:#define __INTPTR_WIDTH__ 32
1102// NVPTX32:#define __INT_MAX__ 2147483647
1103// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
1104// NVPTX32:#define __LDBL_DIG__ 15
1105// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16
1106// NVPTX32:#define __LDBL_HAS_DENORM__ 1
1107// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
1108// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
1109// NVPTX32:#define __LDBL_MANT_DIG__ 53
1110// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
1111// NVPTX32:#define __LDBL_MAX_EXP__ 1024
1112// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308
1113// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
1114// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
1115// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308
1116// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
1117// NVPTX32:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001118// NVPTX32-NOT:#define __LP64__
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001119// NVPTX32:#define __NVPTX__ 1
1120// NVPTX32:#define __POINTER_WIDTH__ 32
1121// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
1122// NVPTX32:#define __PTRDIFF_TYPE__ unsigned int
1123// NVPTX32:#define __PTRDIFF_WIDTH__ 32
1124// NVPTX32:#define __PTX__ 1
1125// NVPTX32:#define __SCHAR_MAX__ 127
1126// NVPTX32:#define __SHRT_MAX__ 32767
1127// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
1128// NVPTX32:#define __SIZEOF_DOUBLE__ 8
1129// NVPTX32:#define __SIZEOF_FLOAT__ 4
1130// NVPTX32:#define __SIZEOF_INT__ 4
1131// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
1132// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
1133// NVPTX32:#define __SIZEOF_LONG__ 8
1134// NVPTX32:#define __SIZEOF_POINTER__ 4
1135// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
1136// NVPTX32:#define __SIZEOF_SHORT__ 2
1137// NVPTX32:#define __SIZEOF_SIZE_T__ 4
1138// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
1139// NVPTX32:#define __SIZEOF_WINT_T__ 4
1140// NVPTX32:#define __SIZE_TYPE__ unsigned int
1141// NVPTX32:#define __SIZE_WIDTH__ 32
1142// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
1143// NVPTX32:#define __USER_LABEL_PREFIX__ _
1144// NVPTX32:#define __WCHAR_MAX__ 2147483647
1145// NVPTX32:#define __WCHAR_TYPE__ int
1146// NVPTX32:#define __WCHAR_WIDTH__ 32
1147// NVPTX32:#define __WINT_TYPE__ int
1148// NVPTX32:#define __WINT_WIDTH__ 32
1149//
1150// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -check-prefix NVPTX64 %s
1151//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001152// NVPTX64:#define _LP64 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001153// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001154// NVPTX64:#define __CHAR16_TYPE__ unsigned short
1155// NVPTX64:#define __CHAR32_TYPE__ unsigned int
1156// NVPTX64:#define __CHAR_BIT__ 8
1157// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
1158// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1159// NVPTX64:#define __DBL_DIG__ 15
1160// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1161// NVPTX64:#define __DBL_HAS_DENORM__ 1
1162// NVPTX64:#define __DBL_HAS_INFINITY__ 1
1163// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
1164// NVPTX64:#define __DBL_MANT_DIG__ 53
1165// NVPTX64:#define __DBL_MAX_10_EXP__ 308
1166// NVPTX64:#define __DBL_MAX_EXP__ 1024
1167// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
1168// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
1169// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
1170// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
1171// NVPTX64:#define __DECIMAL_DIG__ 17
1172// NVPTX64:#define __FINITE_MATH_ONLY__ 0
1173// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1174// NVPTX64:#define __FLT_DIG__ 6
1175// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
1176// NVPTX64:#define __FLT_EVAL_METHOD__ 0
1177// NVPTX64:#define __FLT_HAS_DENORM__ 1
1178// NVPTX64:#define __FLT_HAS_INFINITY__ 1
1179// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
1180// NVPTX64:#define __FLT_MANT_DIG__ 24
1181// NVPTX64:#define __FLT_MAX_10_EXP__ 38
1182// NVPTX64:#define __FLT_MAX_EXP__ 128
1183// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
1184// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
1185// NVPTX64:#define __FLT_MIN_EXP__ (-125)
1186// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
1187// NVPTX64:#define __FLT_RADIX__ 2
1188// NVPTX64:#define __INT16_TYPE__ short
1189// NVPTX64:#define __INT32_TYPE__ int
1190// NVPTX64:#define __INT64_C_SUFFIX__ LL
1191// NVPTX64:#define __INT64_TYPE__ long long int
1192// NVPTX64:#define __INT8_TYPE__ char
1193// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
1194// NVPTX64:#define __INTMAX_TYPE__ long long int
1195// NVPTX64:#define __INTMAX_WIDTH__ 64
1196// NVPTX64:#define __INTPTR_TYPE__ long long unsigned int
1197// NVPTX64:#define __INTPTR_WIDTH__ 64
1198// NVPTX64:#define __INT_MAX__ 2147483647
1199// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
1200// NVPTX64:#define __LDBL_DIG__ 15
1201// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16
1202// NVPTX64:#define __LDBL_HAS_DENORM__ 1
1203// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
1204// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
1205// NVPTX64:#define __LDBL_MANT_DIG__ 53
1206// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
1207// NVPTX64:#define __LDBL_MAX_EXP__ 1024
1208// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308
1209// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
1210// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
1211// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308
1212// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1213// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001214// NVPTX64:#define __LP64__ 1
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001215// NVPTX64:#define __NVPTX__ 1
1216// NVPTX64:#define __POINTER_WIDTH__ 64
1217// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
1218// NVPTX64:#define __PTRDIFF_TYPE__ long long unsigned int
1219// NVPTX64:#define __PTRDIFF_WIDTH__ 64
1220// NVPTX64:#define __PTX__ 1
1221// NVPTX64:#define __SCHAR_MAX__ 127
1222// NVPTX64:#define __SHRT_MAX__ 32767
1223// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
1224// NVPTX64:#define __SIZEOF_DOUBLE__ 8
1225// NVPTX64:#define __SIZEOF_FLOAT__ 4
1226// NVPTX64:#define __SIZEOF_INT__ 4
1227// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
1228// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
1229// NVPTX64:#define __SIZEOF_LONG__ 8
1230// NVPTX64:#define __SIZEOF_POINTER__ 8
1231// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
1232// NVPTX64:#define __SIZEOF_SHORT__ 2
1233// NVPTX64:#define __SIZEOF_SIZE_T__ 8
1234// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
1235// NVPTX64:#define __SIZEOF_WINT_T__ 4
1236// NVPTX64:#define __SIZE_TYPE__ long long unsigned int
1237// NVPTX64:#define __SIZE_WIDTH__ 64
1238// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
1239// NVPTX64:#define __USER_LABEL_PREFIX__ _
1240// NVPTX64:#define __WCHAR_MAX__ 2147483647
1241// NVPTX64:#define __WCHAR_TYPE__ int
1242// NVPTX64:#define __WCHAR_WIDTH__ 32
1243// NVPTX64:#define __WINT_TYPE__ int
1244// NVPTX64:#define __WINT_WIDTH__ 32
1245//
Hal Finkel39d5fa12012-07-03 16:51:04 +00001246// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -check-prefix PPC603E %s
1247//
1248// PPC603E:#define _ARCH_603 1
1249// PPC603E:#define _ARCH_603E 1
1250// PPC603E:#define _ARCH_PPC 1
1251// PPC603E:#define _ARCH_PPCGR 1
1252// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001253// PPC603E-NOT:#define _LP64
Hal Finkel39d5fa12012-07-03 16:51:04 +00001254// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001255// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel39d5fa12012-07-03 16:51:04 +00001256// PPC603E:#define __CHAR16_TYPE__ unsigned short
1257// PPC603E:#define __CHAR32_TYPE__ unsigned int
1258// PPC603E:#define __CHAR_BIT__ 8
1259// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1260// PPC603E:#define __DBL_DIG__ 15
1261// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
1262// PPC603E:#define __DBL_HAS_DENORM__ 1
1263// PPC603E:#define __DBL_HAS_INFINITY__ 1
1264// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
1265// PPC603E:#define __DBL_MANT_DIG__ 53
1266// PPC603E:#define __DBL_MAX_10_EXP__ 308
1267// PPC603E:#define __DBL_MAX_EXP__ 1024
1268// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
1269// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
1270// PPC603E:#define __DBL_MIN_EXP__ (-1021)
1271// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
1272// PPC603E:#define __DECIMAL_DIG__ 33
1273// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1274// PPC603E:#define __FLT_DIG__ 6
1275// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
1276// PPC603E:#define __FLT_EVAL_METHOD__ 0
1277// PPC603E:#define __FLT_HAS_DENORM__ 1
1278// PPC603E:#define __FLT_HAS_INFINITY__ 1
1279// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
1280// PPC603E:#define __FLT_MANT_DIG__ 24
1281// PPC603E:#define __FLT_MAX_10_EXP__ 38
1282// PPC603E:#define __FLT_MAX_EXP__ 128
1283// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
1284// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
1285// PPC603E:#define __FLT_MIN_EXP__ (-125)
1286// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
1287// PPC603E:#define __FLT_RADIX__ 2
1288// PPC603E:#define __INT16_TYPE__ short
1289// PPC603E:#define __INT32_TYPE__ int
1290// PPC603E:#define __INT64_C_SUFFIX__ LL
1291// PPC603E:#define __INT64_TYPE__ long long int
1292// PPC603E:#define __INT8_TYPE__ char
1293// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
1294// PPC603E:#define __INTMAX_TYPE__ long long int
1295// PPC603E:#define __INTMAX_WIDTH__ 64
1296// PPC603E:#define __INTPTR_TYPE__ long int
1297// PPC603E:#define __INTPTR_WIDTH__ 32
1298// PPC603E:#define __INT_MAX__ 2147483647
1299// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1300// PPC603E:#define __LDBL_DIG__ 31
1301// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1302// PPC603E:#define __LDBL_HAS_DENORM__ 1
1303// PPC603E:#define __LDBL_HAS_INFINITY__ 1
1304// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
1305// PPC603E:#define __LDBL_MANT_DIG__ 106
1306// PPC603E:#define __LDBL_MAX_10_EXP__ 308
1307// PPC603E:#define __LDBL_MAX_EXP__ 1024
1308// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1309// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
1310// PPC603E:#define __LDBL_MIN_EXP__ (-968)
1311// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1312// PPC603E:#define __LONG_DOUBLE_128__ 1
1313// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
1314// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001315// PPC603E-NOT:#define __LP64__
Hal Finkel39d5fa12012-07-03 16:51:04 +00001316// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel39d5fa12012-07-03 16:51:04 +00001317// PPC603E:#define __POINTER_WIDTH__ 32
1318// PPC603E:#define __POWERPC__ 1
1319// PPC603E:#define __PTRDIFF_TYPE__ long int
1320// PPC603E:#define __PTRDIFF_WIDTH__ 32
1321// PPC603E:#define __REGISTER_PREFIX__
1322// PPC603E:#define __SCHAR_MAX__ 127
1323// PPC603E:#define __SHRT_MAX__ 32767
1324// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
1325// PPC603E:#define __SIZEOF_DOUBLE__ 8
1326// PPC603E:#define __SIZEOF_FLOAT__ 4
1327// PPC603E:#define __SIZEOF_INT__ 4
1328// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
1329// PPC603E:#define __SIZEOF_LONG_LONG__ 8
1330// PPC603E:#define __SIZEOF_LONG__ 4
1331// PPC603E:#define __SIZEOF_POINTER__ 4
1332// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
1333// PPC603E:#define __SIZEOF_SHORT__ 2
1334// PPC603E:#define __SIZEOF_SIZE_T__ 4
1335// PPC603E:#define __SIZEOF_WCHAR_T__ 4
1336// PPC603E:#define __SIZEOF_WINT_T__ 4
1337// PPC603E:#define __SIZE_TYPE__ long unsigned int
1338// PPC603E:#define __SIZE_WIDTH__ 32
1339// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
1340// PPC603E:#define __USER_LABEL_PREFIX__ _
1341// PPC603E:#define __WCHAR_MAX__ 2147483647
1342// PPC603E:#define __WCHAR_TYPE__ int
1343// PPC603E:#define __WCHAR_WIDTH__ 32
1344// PPC603E:#define __WINT_TYPE__ int
1345// PPC603E:#define __WINT_WIDTH__ 32
1346// PPC603E:#define __powerpc__ 1
1347// PPC603E:#define __ppc__ 1
1348//
Hal Finkel02a84272012-06-11 22:35:19 +00001349// 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 +00001350//
1351// PPC64:#define _ARCH_PPC 1
1352// PPC64:#define _ARCH_PPC64 1
Hal Finkel39d5fa12012-07-03 16:51:04 +00001353// PPC64:#define _ARCH_PPCGR 1
1354// PPC64:#define _ARCH_PPCSQ 1
1355// PPC64:#define _ARCH_PWR4 1
1356// PPC64:#define _ARCH_PWR5 1
1357// PPC64:#define _ARCH_PWR6 1
Hal Finkel02a84272012-06-11 22:35:19 +00001358// PPC64:#define _ARCH_PWR7 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001359// PPC64:#define _BIG_ENDIAN 1
1360// PPC64:#define _LP64 1
1361// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001362// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001363// PPC64:#define __CHAR16_TYPE__ unsigned short
1364// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001365// PPC64:#define __CHAR_BIT__ 8
1366// PPC64:#define __CHAR_UNSIGNED__ 1
1367// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1368// PPC64:#define __DBL_DIG__ 15
1369// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1370// PPC64:#define __DBL_HAS_DENORM__ 1
1371// PPC64:#define __DBL_HAS_INFINITY__ 1
1372// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
1373// PPC64:#define __DBL_MANT_DIG__ 53
1374// PPC64:#define __DBL_MAX_10_EXP__ 308
1375// PPC64:#define __DBL_MAX_EXP__ 1024
1376// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
1377// PPC64:#define __DBL_MIN_10_EXP__ (-307)
1378// PPC64:#define __DBL_MIN_EXP__ (-1021)
1379// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001380// PPC64:#define __DECIMAL_DIG__ 33
Chris Lattnerbceaf862009-10-29 04:55:36 +00001381// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1382// PPC64:#define __FLT_DIG__ 6
1383// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
1384// PPC64:#define __FLT_EVAL_METHOD__ 0
1385// PPC64:#define __FLT_HAS_DENORM__ 1
1386// PPC64:#define __FLT_HAS_INFINITY__ 1
1387// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
1388// PPC64:#define __FLT_MANT_DIG__ 24
1389// PPC64:#define __FLT_MAX_10_EXP__ 38
1390// PPC64:#define __FLT_MAX_EXP__ 128
1391// PPC64:#define __FLT_MAX__ 3.40282347e+38F
1392// PPC64:#define __FLT_MIN_10_EXP__ (-37)
1393// PPC64:#define __FLT_MIN_EXP__ (-125)
1394// PPC64:#define __FLT_MIN__ 1.17549435e-38F
1395// PPC64:#define __FLT_RADIX__ 2
1396// PPC64:#define __INT16_TYPE__ short
1397// PPC64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001398// PPC64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001399// PPC64:#define __INT64_TYPE__ long int
1400// PPC64:#define __INT8_TYPE__ char
1401// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +00001402// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001403// PPC64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001404// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001405// PPC64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001406// PPC64:#define __INT_MAX__ 2147483647
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001407// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1408// PPC64:#define __LDBL_DIG__ 31
1409// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001410// PPC64:#define __LDBL_HAS_DENORM__ 1
1411// PPC64:#define __LDBL_HAS_INFINITY__ 1
1412// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001413// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnerbceaf862009-10-29 04:55:36 +00001414// PPC64:#define __LDBL_MAX_10_EXP__ 308
1415// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001416// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1417// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
1418// PPC64:#define __LDBL_MIN_EXP__ (-968)
1419// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001420// PPC64:#define __LONG_DOUBLE_128__ 1
1421// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1422// PPC64:#define __LONG_MAX__ 9223372036854775807L
1423// PPC64:#define __LP64__ 1
1424// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001425// PPC64:#define __POINTER_WIDTH__ 64
1426// PPC64:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001427// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001428// PPC64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001429// PPC64:#define __REGISTER_PREFIX__
1430// PPC64:#define __SCHAR_MAX__ 127
1431// PPC64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001432// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001433// PPC64:#define __SIZEOF_DOUBLE__ 8
1434// PPC64:#define __SIZEOF_FLOAT__ 4
1435// PPC64:#define __SIZEOF_INT__ 4
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001436// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohmancfeac342010-05-28 00:27:15 +00001437// PPC64:#define __SIZEOF_LONG_LONG__ 8
1438// PPC64:#define __SIZEOF_LONG__ 8
1439// PPC64:#define __SIZEOF_POINTER__ 8
1440// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
1441// PPC64:#define __SIZEOF_SHORT__ 2
1442// PPC64:#define __SIZEOF_SIZE_T__ 8
1443// PPC64:#define __SIZEOF_WCHAR_T__ 4
1444// PPC64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001445// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001446// PPC64:#define __SIZE_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001447// PPC64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001448// PPC64:#define __USER_LABEL_PREFIX__ _
1449// PPC64:#define __WCHAR_MAX__ 2147483647
1450// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001451// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001452// PPC64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001453// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001454// PPC64:#define __ppc64__ 1
1455// PPC64:#define __ppc__ 1
1456//
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001457// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64-LINUX %s
1458//
1459// PPC64-LINUX:#define _ARCH_PPC 1
1460// PPC64-LINUX:#define _ARCH_PPC64 1
1461// PPC64-LINUX:#define _BIG_ENDIAN 1
1462// PPC64-LINUX:#define _LP64 1
1463// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001464// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001465// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
1466// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
1467// PPC64-LINUX:#define __CHAR_BIT__ 8
1468// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
1469// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1470// PPC64-LINUX:#define __DBL_DIG__ 15
1471// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
1472// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
1473// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
1474// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
1475// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
1476// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
1477// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
1478// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
1479// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
1480// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
1481// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
1482// PPC64-LINUX:#define __DECIMAL_DIG__ 33
1483// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1484// PPC64-LINUX:#define __FLT_DIG__ 6
1485// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
1486// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
1487// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
1488// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
1489// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
1490// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
1491// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
1492// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
1493// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
1494// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
1495// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
1496// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
1497// PPC64-LINUX:#define __FLT_RADIX__ 2
1498// PPC64-LINUX:#define __INT16_TYPE__ short
1499// PPC64-LINUX:#define __INT32_TYPE__ int
1500// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
1501// PPC64-LINUX:#define __INT64_TYPE__ long int
1502// PPC64-LINUX:#define __INT8_TYPE__ char
1503// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
1504// PPC64-LINUX:#define __INTMAX_TYPE__ long int
1505// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
1506// PPC64-LINUX:#define __INTPTR_TYPE__ long int
1507// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
1508// PPC64-LINUX:#define __INT_MAX__ 2147483647
1509// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1510// PPC64-LINUX:#define __LDBL_DIG__ 31
1511// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1512// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
1513// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
1514// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
1515// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
1516// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
1517// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
1518// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1519// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
1520// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
1521// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1522// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
1523// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
1524// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
1525// PPC64-LINUX:#define __LP64__ 1
1526// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001527// PPC64-LINUX:#define __POINTER_WIDTH__ 64
1528// PPC64-LINUX:#define __POWERPC__ 1
1529// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
1530// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
1531// PPC64-LINUX:#define __REGISTER_PREFIX__
1532// PPC64-LINUX:#define __SCHAR_MAX__ 127
1533// PPC64-LINUX:#define __SHRT_MAX__ 32767
1534// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
1535// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
1536// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
1537// PPC64-LINUX:#define __SIZEOF_INT__ 4
1538// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
1539// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
1540// PPC64-LINUX:#define __SIZEOF_LONG__ 8
1541// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
1542// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
1543// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
1544// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
1545// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
1546// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
1547// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
1548// PPC64-LINUX:#define __SIZE_WIDTH__ 64
1549// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
1550// PPC64-LINUX:#define __USER_LABEL_PREFIX__
1551// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
1552// PPC64-LINUX:#define __WCHAR_TYPE__ int
1553// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
1554// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
1555// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
1556// PPC64-LINUX:#define __WINT_WIDTH__ 32
1557// PPC64-LINUX:#define __powerpc64__ 1
1558// PPC64-LINUX:#define __powerpc__ 1
1559// PPC64-LINUX:#define __ppc64__ 1
1560// PPC64-LINUX:#define __ppc__ 1
1561//
Daniel Dunbara5728872009-12-15 20:14:24 +00001562// 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 +00001563//
1564// PPC:#define _ARCH_PPC 1
1565// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001566// PPC-NOT:#define _LP64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001567// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001568// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001569// PPC:#define __CHAR16_TYPE__ unsigned short
1570// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001571// PPC:#define __CHAR_BIT__ 8
1572// PPC:#define __CHAR_UNSIGNED__ 1
1573// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1574// PPC:#define __DBL_DIG__ 15
1575// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
1576// PPC:#define __DBL_HAS_DENORM__ 1
1577// PPC:#define __DBL_HAS_INFINITY__ 1
1578// PPC:#define __DBL_HAS_QUIET_NAN__ 1
1579// PPC:#define __DBL_MANT_DIG__ 53
1580// PPC:#define __DBL_MAX_10_EXP__ 308
1581// PPC:#define __DBL_MAX_EXP__ 1024
1582// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
1583// PPC:#define __DBL_MIN_10_EXP__ (-307)
1584// PPC:#define __DBL_MIN_EXP__ (-1021)
1585// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001586// PPC:#define __DECIMAL_DIG__ 33
Chris Lattnerbceaf862009-10-29 04:55:36 +00001587// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1588// PPC:#define __FLT_DIG__ 6
1589// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
1590// PPC:#define __FLT_EVAL_METHOD__ 0
1591// PPC:#define __FLT_HAS_DENORM__ 1
1592// PPC:#define __FLT_HAS_INFINITY__ 1
1593// PPC:#define __FLT_HAS_QUIET_NAN__ 1
1594// PPC:#define __FLT_MANT_DIG__ 24
1595// PPC:#define __FLT_MAX_10_EXP__ 38
1596// PPC:#define __FLT_MAX_EXP__ 128
1597// PPC:#define __FLT_MAX__ 3.40282347e+38F
1598// PPC:#define __FLT_MIN_10_EXP__ (-37)
1599// PPC:#define __FLT_MIN_EXP__ (-125)
1600// PPC:#define __FLT_MIN__ 1.17549435e-38F
1601// PPC:#define __FLT_RADIX__ 2
1602// PPC:#define __INT16_TYPE__ short
1603// PPC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001604// PPC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +00001605// PPC:#define __INT64_TYPE__ long long int
1606// PPC:#define __INT8_TYPE__ char
1607// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +00001608// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +00001609// PPC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001610// PPC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001611// PPC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001612// PPC:#define __INT_MAX__ 2147483647
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001613// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1614// PPC:#define __LDBL_DIG__ 31
1615// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001616// PPC:#define __LDBL_HAS_DENORM__ 1
1617// PPC:#define __LDBL_HAS_INFINITY__ 1
1618// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001619// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnerbceaf862009-10-29 04:55:36 +00001620// PPC:#define __LDBL_MAX_10_EXP__ 308
1621// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001622// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1623// PPC:#define __LDBL_MIN_10_EXP__ (-291)
1624// PPC:#define __LDBL_MIN_EXP__ (-968)
1625// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001626// PPC:#define __LONG_DOUBLE_128__ 1
1627// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
1628// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001629// PPC-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +00001630// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001631// PPC:#define __POINTER_WIDTH__ 32
1632// PPC:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001633// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001634// PPC:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001635// PPC:#define __REGISTER_PREFIX__
1636// PPC:#define __SCHAR_MAX__ 127
1637// PPC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001638// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001639// PPC:#define __SIZEOF_DOUBLE__ 8
1640// PPC:#define __SIZEOF_FLOAT__ 4
1641// PPC:#define __SIZEOF_INT__ 4
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001642// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohmancfeac342010-05-28 00:27:15 +00001643// PPC:#define __SIZEOF_LONG_LONG__ 8
1644// PPC:#define __SIZEOF_LONG__ 4
1645// PPC:#define __SIZEOF_POINTER__ 4
1646// PPC:#define __SIZEOF_PTRDIFF_T__ 4
1647// PPC:#define __SIZEOF_SHORT__ 2
1648// PPC:#define __SIZEOF_SIZE_T__ 4
1649// PPC:#define __SIZEOF_WCHAR_T__ 4
1650// PPC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001651// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001652// PPC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001653// PPC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001654// PPC:#define __USER_LABEL_PREFIX__ _
1655// PPC:#define __WCHAR_MAX__ 2147483647
1656// PPC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001657// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001658// PPC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001659// PPC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001660// PPC:#define __ppc__ 1
1661//
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001662// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-LINUX %s
1663//
1664// PPC-LINUX:#define _ARCH_PPC 1
1665// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001666// PPC-LINUX-NOT:#define _LP64
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001667// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001668// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001669// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
1670// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
1671// PPC-LINUX:#define __CHAR_BIT__ 8
1672// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
1673// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1674// PPC-LINUX:#define __DBL_DIG__ 15
1675// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
1676// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
1677// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
1678// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
1679// PPC-LINUX:#define __DBL_MANT_DIG__ 53
1680// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
1681// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
1682// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
1683// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
1684// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
1685// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
1686// PPC-LINUX:#define __DECIMAL_DIG__ 33
1687// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1688// PPC-LINUX:#define __FLT_DIG__ 6
1689// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
1690// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
1691// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
1692// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
1693// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
1694// PPC-LINUX:#define __FLT_MANT_DIG__ 24
1695// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
1696// PPC-LINUX:#define __FLT_MAX_EXP__ 128
1697// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
1698// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
1699// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
1700// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
1701// PPC-LINUX:#define __FLT_RADIX__ 2
1702// PPC-LINUX:#define __INT16_TYPE__ short
1703// PPC-LINUX:#define __INT32_TYPE__ int
1704// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
1705// PPC-LINUX:#define __INT64_TYPE__ long long int
1706// PPC-LINUX:#define __INT8_TYPE__ char
1707// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
1708// PPC-LINUX:#define __INTMAX_TYPE__ long long int
1709// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Hal Finkel178a9b82012-03-02 20:54:36 +00001710// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001711// PPC-LINUX:#define __INTPTR_WIDTH__ 32
1712// PPC-LINUX:#define __INT_MAX__ 2147483647
1713// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1714// PPC-LINUX:#define __LDBL_DIG__ 31
1715// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1716// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
1717// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
1718// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
1719// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
1720// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
1721// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
1722// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1723// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
1724// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
1725// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1726// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
1727// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
1728// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001729// PPC-LINUX-NOT:#define __LP64__
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001730// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001731// PPC-LINUX:#define __POINTER_WIDTH__ 32
1732// PPC-LINUX:#define __POWERPC__ 1
Hal Finkel178a9b82012-03-02 20:54:36 +00001733// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001734// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
1735// PPC-LINUX:#define __REGISTER_PREFIX__
1736// PPC-LINUX:#define __SCHAR_MAX__ 127
1737// PPC-LINUX:#define __SHRT_MAX__ 32767
1738// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
1739// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
1740// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
1741// PPC-LINUX:#define __SIZEOF_INT__ 4
1742// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
1743// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
1744// PPC-LINUX:#define __SIZEOF_LONG__ 4
1745// PPC-LINUX:#define __SIZEOF_POINTER__ 4
1746// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
1747// PPC-LINUX:#define __SIZEOF_SHORT__ 2
1748// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
1749// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
1750// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
1751// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
1752// PPC-LINUX:#define __SIZE_WIDTH__ 32
1753// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
1754// PPC-LINUX:#define __USER_LABEL_PREFIX__
1755// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
1756// PPC-LINUX:#define __WCHAR_TYPE__ int
1757// PPC-LINUX:#define __WCHAR_WIDTH__ 32
1758// PPC-LINUX:#define __WINT_TYPE__ unsigned int
1759// PPC-LINUX:#define __WINT_UNSIGNED__ 1
1760// PPC-LINUX:#define __WINT_WIDTH__ 32
1761// PPC-LINUX:#define __powerpc__ 1
1762// PPC-LINUX:#define __ppc__ 1
1763//
Daniel Dunbara5728872009-12-15 20:14:24 +00001764// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -check-prefix SPARC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001765//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001766// SPARC-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001767// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001768// SPARC:#define __CHAR16_TYPE__ unsigned short
1769// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001770// SPARC:#define __CHAR_BIT__ 8
1771// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1772// SPARC:#define __DBL_DIG__ 15
1773// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
1774// SPARC:#define __DBL_HAS_DENORM__ 1
1775// SPARC:#define __DBL_HAS_INFINITY__ 1
1776// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
1777// SPARC:#define __DBL_MANT_DIG__ 53
1778// SPARC:#define __DBL_MAX_10_EXP__ 308
1779// SPARC:#define __DBL_MAX_EXP__ 1024
1780// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
1781// SPARC:#define __DBL_MIN_10_EXP__ (-307)
1782// SPARC:#define __DBL_MIN_EXP__ (-1021)
1783// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
1784// SPARC:#define __DECIMAL_DIG__ 17
1785// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1786// SPARC:#define __FLT_DIG__ 6
1787// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
1788// SPARC:#define __FLT_EVAL_METHOD__ 0
1789// SPARC:#define __FLT_HAS_DENORM__ 1
1790// SPARC:#define __FLT_HAS_INFINITY__ 1
1791// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
1792// SPARC:#define __FLT_MANT_DIG__ 24
1793// SPARC:#define __FLT_MAX_10_EXP__ 38
1794// SPARC:#define __FLT_MAX_EXP__ 128
1795// SPARC:#define __FLT_MAX__ 3.40282347e+38F
1796// SPARC:#define __FLT_MIN_10_EXP__ (-37)
1797// SPARC:#define __FLT_MIN_EXP__ (-125)
1798// SPARC:#define __FLT_MIN__ 1.17549435e-38F
1799// SPARC:#define __FLT_RADIX__ 2
1800// SPARC:#define __INT16_TYPE__ short
1801// SPARC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001802// SPARC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +00001803// SPARC:#define __INT64_TYPE__ long long int
1804// SPARC:#define __INT8_TYPE__ char
1805// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +00001806// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +00001807// SPARC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001808// SPARC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001809// SPARC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001810// SPARC:#define __INT_MAX__ 2147483647
1811// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
1812// SPARC:#define __LDBL_DIG__ 15
1813// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16
1814// SPARC:#define __LDBL_HAS_DENORM__ 1
1815// SPARC:#define __LDBL_HAS_INFINITY__ 1
1816// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
1817// SPARC:#define __LDBL_MANT_DIG__ 53
1818// SPARC:#define __LDBL_MAX_10_EXP__ 308
1819// SPARC:#define __LDBL_MAX_EXP__ 1024
1820// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308
1821// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
1822// SPARC:#define __LDBL_MIN_EXP__ (-1021)
1823// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308
1824// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
1825// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001826// SPARC-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +00001827// SPARC:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001828// SPARC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001829// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +00001830// SPARC:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +00001831// SPARC:#define __SCHAR_MAX__ 127
1832// SPARC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001833// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001834// SPARC:#define __SIZEOF_DOUBLE__ 8
1835// SPARC:#define __SIZEOF_FLOAT__ 4
1836// SPARC:#define __SIZEOF_INT__ 4
1837// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
1838// SPARC:#define __SIZEOF_LONG_LONG__ 8
1839// SPARC:#define __SIZEOF_LONG__ 4
1840// SPARC:#define __SIZEOF_POINTER__ 4
1841// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
1842// SPARC:#define __SIZEOF_SHORT__ 2
1843// SPARC:#define __SIZEOF_SIZE_T__ 4
1844// SPARC:#define __SIZEOF_WCHAR_T__ 4
1845// SPARC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001846// SPARC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001847// SPARC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001848// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001849// SPARC:#define __USER_LABEL_PREFIX__ _
Daniel Dunbarad1a4c62011-03-31 00:53:51 +00001850// SPARC:#define __VERSION__ "4.2.1 Compatible
Chris Lattnerbceaf862009-10-29 04:55:36 +00001851// SPARC:#define __WCHAR_MAX__ 2147483647
1852// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001853// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001854// SPARC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001855// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001856// SPARC:#define __sparc 1
1857// SPARC:#define __sparc__ 1
1858// SPARC:#define __sparcv8 1
1859// SPARC:#define sparc 1
1860//
Daniel Dunbara5728872009-12-15 20:14:24 +00001861// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001862//
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001863// TCE-NOT:#define _LP64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001864// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001865// TCE:#define __CHAR16_TYPE__ unsigned short
1866// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001867// TCE:#define __CHAR_BIT__ 8
1868// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45F
1869// TCE:#define __DBL_DIG__ 6
1870// TCE:#define __DBL_EPSILON__ 1.19209290e-7F
1871// TCE:#define __DBL_HAS_DENORM__ 1
1872// TCE:#define __DBL_HAS_INFINITY__ 1
1873// TCE:#define __DBL_HAS_QUIET_NAN__ 1
1874// TCE:#define __DBL_MANT_DIG__ 24
1875// TCE:#define __DBL_MAX_10_EXP__ 38
1876// TCE:#define __DBL_MAX_EXP__ 128
1877// TCE:#define __DBL_MAX__ 3.40282347e+38F
1878// TCE:#define __DBL_MIN_10_EXP__ (-37)
1879// TCE:#define __DBL_MIN_EXP__ (-125)
1880// TCE:#define __DBL_MIN__ 1.17549435e-38F
1881// TCE:#define __DECIMAL_DIG__ -1
1882// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1883// TCE:#define __FLT_DIG__ 6
1884// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
1885// TCE:#define __FLT_EVAL_METHOD__ 0
1886// TCE:#define __FLT_HAS_DENORM__ 1
1887// TCE:#define __FLT_HAS_INFINITY__ 1
1888// TCE:#define __FLT_HAS_QUIET_NAN__ 1
1889// TCE:#define __FLT_MANT_DIG__ 24
1890// TCE:#define __FLT_MAX_10_EXP__ 38
1891// TCE:#define __FLT_MAX_EXP__ 128
1892// TCE:#define __FLT_MAX__ 3.40282347e+38F
1893// TCE:#define __FLT_MIN_10_EXP__ (-37)
1894// TCE:#define __FLT_MIN_EXP__ (-125)
1895// TCE:#define __FLT_MIN__ 1.17549435e-38F
1896// TCE:#define __FLT_RADIX__ 2
1897// TCE:#define __INT16_TYPE__ short
1898// TCE:#define __INT32_TYPE__ int
1899// TCE:#define __INT8_TYPE__ char
1900// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +00001901// TCE:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001902// TCE:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001903// TCE:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001904// TCE:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001905// TCE:#define __INT_MAX__ 2147483647
1906// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45F
1907// TCE:#define __LDBL_DIG__ 6
1908// TCE:#define __LDBL_EPSILON__ 1.19209290e-7F
1909// TCE:#define __LDBL_HAS_DENORM__ 1
1910// TCE:#define __LDBL_HAS_INFINITY__ 1
1911// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
1912// TCE:#define __LDBL_MANT_DIG__ 24
1913// TCE:#define __LDBL_MAX_10_EXP__ 38
1914// TCE:#define __LDBL_MAX_EXP__ 128
1915// TCE:#define __LDBL_MAX__ 3.40282347e+38F
1916// TCE:#define __LDBL_MIN_10_EXP__ (-37)
1917// TCE:#define __LDBL_MIN_EXP__ (-125)
1918// TCE:#define __LDBL_MIN__ 1.17549435e-38F
1919// TCE:#define __LONG_LONG_MAX__ 2147483647LL
1920// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith6bd32912012-08-10 19:12:37 +00001921// TCE-NOT:#define __LP64__
Chris Lattnerbceaf862009-10-29 04:55:36 +00001922// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001923// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +00001924// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001925// TCE:#define __SCHAR_MAX__ 127
1926// TCE:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001927// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001928// TCE:#define __SIZEOF_DOUBLE__ 4
1929// TCE:#define __SIZEOF_FLOAT__ 4
1930// TCE:#define __SIZEOF_INT__ 4
1931// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
1932// TCE:#define __SIZEOF_LONG_LONG__ 4
1933// TCE:#define __SIZEOF_LONG__ 4
1934// TCE:#define __SIZEOF_POINTER__ 4
1935// TCE:#define __SIZEOF_PTRDIFF_T__ 4
1936// TCE:#define __SIZEOF_SHORT__ 2
1937// TCE:#define __SIZEOF_SIZE_T__ 4
1938// TCE:#define __SIZEOF_WCHAR_T__ 4
1939// TCE:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001940// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001941// TCE:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001942// TCE:#define __TCE_V1__ 1
1943// TCE:#define __TCE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001944// TCE:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001945// TCE:#define __USER_LABEL_PREFIX__ _
1946// TCE:#define __WCHAR_MAX__ 2147483647
1947// TCE:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001948// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001949// TCE:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001950// TCE:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001951// TCE:#define __tce 1
1952// TCE:#define __tce__ 1
1953// TCE:#define tce 1
1954//
Daniel Dunbara5728872009-12-15 20:14:24 +00001955// 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 +00001956//
1957// X86_64:#define _LP64 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001958// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001959// X86_64:#define __CHAR16_TYPE__ unsigned short
1960// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001961// X86_64:#define __CHAR_BIT__ 8
1962// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1963// X86_64:#define __DBL_DIG__ 15
1964// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1965// X86_64:#define __DBL_HAS_DENORM__ 1
1966// X86_64:#define __DBL_HAS_INFINITY__ 1
1967// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
1968// X86_64:#define __DBL_MANT_DIG__ 53
1969// X86_64:#define __DBL_MAX_10_EXP__ 308
1970// X86_64:#define __DBL_MAX_EXP__ 1024
1971// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
1972// X86_64:#define __DBL_MIN_10_EXP__ (-307)
1973// X86_64:#define __DBL_MIN_EXP__ (-1021)
1974// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
1975// X86_64:#define __DECIMAL_DIG__ 21
1976// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1977// X86_64:#define __FLT_DIG__ 6
1978// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
1979// X86_64:#define __FLT_EVAL_METHOD__ 0
1980// X86_64:#define __FLT_HAS_DENORM__ 1
1981// X86_64:#define __FLT_HAS_INFINITY__ 1
1982// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
1983// X86_64:#define __FLT_MANT_DIG__ 24
1984// X86_64:#define __FLT_MAX_10_EXP__ 38
1985// X86_64:#define __FLT_MAX_EXP__ 128
1986// X86_64:#define __FLT_MAX__ 3.40282347e+38F
1987// X86_64:#define __FLT_MIN_10_EXP__ (-37)
1988// X86_64:#define __FLT_MIN_EXP__ (-125)
1989// X86_64:#define __FLT_MIN__ 1.17549435e-38F
1990// X86_64:#define __FLT_RADIX__ 2
1991// X86_64:#define __INT16_TYPE__ short
1992// X86_64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001993// X86_64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001994// X86_64:#define __INT64_TYPE__ long int
1995// X86_64:#define __INT8_TYPE__ char
1996// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +00001997// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001998// X86_64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001999// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00002000// X86_64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00002001// X86_64:#define __INT_MAX__ 2147483647
2002// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2003// X86_64:#define __LDBL_DIG__ 18
2004// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2005// X86_64:#define __LDBL_HAS_DENORM__ 1
2006// X86_64:#define __LDBL_HAS_INFINITY__ 1
2007// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
2008// X86_64:#define __LDBL_MANT_DIG__ 64
2009// X86_64:#define __LDBL_MAX_10_EXP__ 4932
2010// X86_64:#define __LDBL_MAX_EXP__ 16384
2011// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2012// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
2013// X86_64:#define __LDBL_MIN_EXP__ (-16381)
2014// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2015// X86_64:#define __LITTLE_ENDIAN__ 1
2016// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
2017// X86_64:#define __LONG_MAX__ 9223372036854775807L
2018// X86_64:#define __LP64__ 1
2019// X86_64:#define __MMX__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00002020// X86_64:#define __NO_MATH_INLINES 1
2021// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00002022// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00002023// X86_64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00002024// X86_64:#define __REGISTER_PREFIX__
2025// X86_64:#define __SCHAR_MAX__ 127
2026// X86_64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00002027// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00002028// X86_64:#define __SIZEOF_DOUBLE__ 8
2029// X86_64:#define __SIZEOF_FLOAT__ 4
2030// X86_64:#define __SIZEOF_INT__ 4
2031// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
2032// X86_64:#define __SIZEOF_LONG_LONG__ 8
2033// X86_64:#define __SIZEOF_LONG__ 8
2034// X86_64:#define __SIZEOF_POINTER__ 8
2035// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
2036// X86_64:#define __SIZEOF_SHORT__ 2
2037// X86_64:#define __SIZEOF_SIZE_T__ 8
2038// X86_64:#define __SIZEOF_WCHAR_T__ 4
2039// X86_64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00002040// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00002041// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00002042// X86_64:#define __SSE2_MATH__ 1
2043// X86_64:#define __SSE2__ 1
2044// X86_64:#define __SSE_MATH__ 1
2045// X86_64:#define __SSE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00002046// X86_64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00002047// X86_64:#define __USER_LABEL_PREFIX__ _
2048// X86_64:#define __WCHAR_MAX__ 2147483647
2049// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00002050// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002051// X86_64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00002052// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002053// X86_64:#define __amd64 1
2054// X86_64:#define __amd64__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00002055// X86_64:#define __x86_64 1
2056// X86_64:#define __x86_64__ 1
2057//
Douglas Gregor12e84642011-01-12 21:19:25 +00002058// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -check-prefix X86_64-LINUX %s
2059//
2060// X86_64-LINUX:#define _LP64 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00002061// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregor12e84642011-01-12 21:19:25 +00002062// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
2063// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
2064// X86_64-LINUX:#define __CHAR_BIT__ 8
2065// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2066// X86_64-LINUX:#define __DBL_DIG__ 15
2067// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2068// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
2069// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
2070// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2071// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
2072// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
2073// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
2074// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2075// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2076// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
2077// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
2078// X86_64-LINUX:#define __DECIMAL_DIG__ 21
2079// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2080// X86_64-LINUX:#define __FLT_DIG__ 6
2081// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2082// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
2083// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
2084// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
2085// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2086// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
2087// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
2088// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
2089// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2090// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2091// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
2092// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2093// X86_64-LINUX:#define __FLT_RADIX__ 2
2094// X86_64-LINUX:#define __INT16_TYPE__ short
2095// X86_64-LINUX:#define __INT32_TYPE__ int
2096// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
2097// X86_64-LINUX:#define __INT64_TYPE__ long int
2098// X86_64-LINUX:#define __INT8_TYPE__ char
2099// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
2100// X86_64-LINUX:#define __INTMAX_TYPE__ long int
2101// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
2102// X86_64-LINUX:#define __INTPTR_TYPE__ long int
2103// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
2104// X86_64-LINUX:#define __INT_MAX__ 2147483647
2105// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2106// X86_64-LINUX:#define __LDBL_DIG__ 18
2107// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2108// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
2109// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
2110// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2111// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
2112// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2113// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
2114// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2115// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2116// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2117// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2118// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
2119// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2120// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
2121// X86_64-LINUX:#define __LP64__ 1
2122// X86_64-LINUX:#define __MMX__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +00002123// X86_64-LINUX:#define __NO_MATH_INLINES 1
2124// X86_64-LINUX:#define __POINTER_WIDTH__ 64
2125// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
2126// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
2127// X86_64-LINUX:#define __REGISTER_PREFIX__
2128// X86_64-LINUX:#define __SCHAR_MAX__ 127
2129// X86_64-LINUX:#define __SHRT_MAX__ 32767
2130// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2131// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
2132// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
2133// X86_64-LINUX:#define __SIZEOF_INT__ 4
2134// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
2135// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
2136// X86_64-LINUX:#define __SIZEOF_LONG__ 8
2137// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
2138// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
2139// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
2140// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
2141// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
2142// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
2143// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
2144// X86_64-LINUX:#define __SIZE_WIDTH__ 64
2145// X86_64-LINUX:#define __SSE2_MATH__ 1
2146// X86_64-LINUX:#define __SSE2__ 1
2147// X86_64-LINUX:#define __SSE_MATH__ 1
2148// X86_64-LINUX:#define __SSE__ 1
2149// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
2150// X86_64-LINUX:#define __USER_LABEL_PREFIX__
2151// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
2152// X86_64-LINUX:#define __WCHAR_TYPE__ int
2153// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
2154// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
2155// X86_64-LINUX:#define __WINT_WIDTH__ 32
2156// X86_64-LINUX:#define __amd64 1
2157// X86_64-LINUX:#define __amd64__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +00002158// X86_64-LINUX:#define __x86_64 1
2159// X86_64-LINUX:#define __x86_64__ 1
2160//
David Chisnall11d3f4c2012-07-03 20:49:52 +00002161// 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 +00002162// GNUSOURCE:#define _GNU_SOURCE 1
2163//
Dan Gohmancfeac342010-05-28 00:27:15 +00002164// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -check-prefix NORTTI %s
2165// NORTTI: __GXX_ABI_VERSION
2166// NORTTI-NOT:#define __GXX_RTTI
2167// NORTTI: __STDC__
Evgeniy Stepanov32064032012-04-26 12:08:09 +00002168//
2169// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -check-prefix ANDROID %s
2170// ANDROID: __ANDROID__ 1