blob: 3720c240de7662333d540dde3891db97622d944d [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//
167// ARM:#define __APCS_32__ 1
168// ARM:#define __ARMEL__ 1
Daniel Dunbareac7c532009-12-18 18:42:37 +0000169// ARM:#define __ARM_ARCH_6J__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000170// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +0000171// ARM:#define __CHAR16_TYPE__ unsigned short
172// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000173// ARM:#define __CHAR_BIT__ 8
174// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
175// ARM:#define __DBL_DIG__ 15
176// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
177// ARM:#define __DBL_HAS_DENORM__ 1
178// ARM:#define __DBL_HAS_INFINITY__ 1
179// ARM:#define __DBL_HAS_QUIET_NAN__ 1
180// ARM:#define __DBL_MANT_DIG__ 53
181// ARM:#define __DBL_MAX_10_EXP__ 308
182// ARM:#define __DBL_MAX_EXP__ 1024
183// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
184// ARM:#define __DBL_MIN_10_EXP__ (-307)
185// ARM:#define __DBL_MIN_EXP__ (-1021)
186// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
187// ARM:#define __DECIMAL_DIG__ 17
188// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
189// ARM:#define __FLT_DIG__ 6
190// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
191// ARM:#define __FLT_EVAL_METHOD__ 0
192// ARM:#define __FLT_HAS_DENORM__ 1
193// ARM:#define __FLT_HAS_INFINITY__ 1
194// ARM:#define __FLT_HAS_QUIET_NAN__ 1
195// ARM:#define __FLT_MANT_DIG__ 24
196// ARM:#define __FLT_MAX_10_EXP__ 38
197// ARM:#define __FLT_MAX_EXP__ 128
198// ARM:#define __FLT_MAX__ 3.40282347e+38F
199// ARM:#define __FLT_MIN_10_EXP__ (-37)
200// ARM:#define __FLT_MIN_EXP__ (-125)
201// ARM:#define __FLT_MIN__ 1.17549435e-38F
202// ARM:#define __FLT_RADIX__ 2
203// ARM:#define __INT16_TYPE__ short
204// ARM:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000205// ARM:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000206// ARM:#define __INT64_TYPE__ long long int
207// ARM:#define __INT8_TYPE__ char
208// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000209// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000210// ARM:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000211// ARM:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000212// ARM:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000213// ARM:#define __INT_MAX__ 2147483647
214// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
215// ARM:#define __LDBL_DIG__ 15
216// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16
217// ARM:#define __LDBL_HAS_DENORM__ 1
218// ARM:#define __LDBL_HAS_INFINITY__ 1
219// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
220// ARM:#define __LDBL_MANT_DIG__ 53
221// ARM:#define __LDBL_MAX_10_EXP__ 308
222// ARM:#define __LDBL_MAX_EXP__ 1024
223// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308
224// ARM:#define __LDBL_MIN_10_EXP__ (-307)
225// ARM:#define __LDBL_MIN_EXP__ (-1021)
226// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308
227// ARM:#define __LITTLE_ENDIAN__ 1
228// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
229// ARM:#define __LONG_MAX__ 2147483647L
Chris Lattnerbceaf862009-10-29 04:55:36 +0000230// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000231// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000232// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +0000233// ARM:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000234// ARM:#define __SCHAR_MAX__ 127
235// ARM:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000236// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000237// ARM:#define __SIZEOF_DOUBLE__ 8
238// ARM:#define __SIZEOF_FLOAT__ 4
239// ARM:#define __SIZEOF_INT__ 4
240// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
241// ARM:#define __SIZEOF_LONG_LONG__ 8
242// ARM:#define __SIZEOF_LONG__ 4
243// ARM:#define __SIZEOF_POINTER__ 4
244// ARM:#define __SIZEOF_PTRDIFF_T__ 4
245// ARM:#define __SIZEOF_SHORT__ 2
246// ARM:#define __SIZEOF_SIZE_T__ 4
247// ARM:#define __SIZEOF_WCHAR_T__ 4
248// ARM:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000249// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000250// ARM:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000251// ARM:#define __THUMB_INTERWORK__ 1
Ken Dyck8241d732009-11-19 13:18:59 +0000252// ARM:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000253// ARM:#define __USER_LABEL_PREFIX__ _
James Molloya6d81f92011-11-23 13:35:08 +0000254// ARM:#define __WCHAR_MAX__ 4294967295U
255// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck63e65612009-11-19 15:47:58 +0000256// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000257// ARM:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000258// ARM:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000259// ARM:#define __arm 1
260// ARM:#define __arm__ 1
261//
Daniel Dunbara5728872009-12-15 20:14:24 +0000262// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -check-prefix I386 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000263//
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000264// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +0000265// I386:#define __CHAR16_TYPE__ unsigned short
266// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000267// I386:#define __CHAR_BIT__ 8
268// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
269// I386:#define __DBL_DIG__ 15
270// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
271// I386:#define __DBL_HAS_DENORM__ 1
272// I386:#define __DBL_HAS_INFINITY__ 1
273// I386:#define __DBL_HAS_QUIET_NAN__ 1
274// I386:#define __DBL_MANT_DIG__ 53
275// I386:#define __DBL_MAX_10_EXP__ 308
276// I386:#define __DBL_MAX_EXP__ 1024
277// I386:#define __DBL_MAX__ 1.7976931348623157e+308
278// I386:#define __DBL_MIN_10_EXP__ (-307)
279// I386:#define __DBL_MIN_EXP__ (-1021)
280// I386:#define __DBL_MIN__ 2.2250738585072014e-308
281// I386:#define __DECIMAL_DIG__ 21
282// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
283// I386:#define __FLT_DIG__ 6
284// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramerb4066692011-12-28 15:47:06 +0000285// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +0000286// I386:#define __FLT_HAS_DENORM__ 1
287// I386:#define __FLT_HAS_INFINITY__ 1
288// I386:#define __FLT_HAS_QUIET_NAN__ 1
289// I386:#define __FLT_MANT_DIG__ 24
290// I386:#define __FLT_MAX_10_EXP__ 38
291// I386:#define __FLT_MAX_EXP__ 128
292// I386:#define __FLT_MAX__ 3.40282347e+38F
293// I386:#define __FLT_MIN_10_EXP__ (-37)
294// I386:#define __FLT_MIN_EXP__ (-125)
295// I386:#define __FLT_MIN__ 1.17549435e-38F
296// I386:#define __FLT_RADIX__ 2
297// I386:#define __INT16_TYPE__ short
298// I386:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000299// I386:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000300// I386:#define __INT64_TYPE__ long long int
301// I386:#define __INT8_TYPE__ char
302// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000303// I386:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000304// I386:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000305// I386:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000306// I386:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000307// I386:#define __INT_MAX__ 2147483647
308// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
309// I386:#define __LDBL_DIG__ 18
310// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
311// I386:#define __LDBL_HAS_DENORM__ 1
312// I386:#define __LDBL_HAS_INFINITY__ 1
313// I386:#define __LDBL_HAS_QUIET_NAN__ 1
314// I386:#define __LDBL_MANT_DIG__ 64
315// I386:#define __LDBL_MAX_10_EXP__ 4932
316// I386:#define __LDBL_MAX_EXP__ 16384
317// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
318// I386:#define __LDBL_MIN_10_EXP__ (-4931)
319// I386:#define __LDBL_MIN_EXP__ (-16381)
320// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
321// I386:#define __LITTLE_ENDIAN__ 1
322// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
323// I386:#define __LONG_MAX__ 2147483647L
Chris Lattnerbceaf862009-10-29 04:55:36 +0000324// I386:#define __NO_MATH_INLINES 1
325// I386:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000326// I386:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000327// I386:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000328// I386:#define __REGISTER_PREFIX__
329// I386:#define __SCHAR_MAX__ 127
330// I386:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000331// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000332// I386:#define __SIZEOF_DOUBLE__ 8
333// I386:#define __SIZEOF_FLOAT__ 4
334// I386:#define __SIZEOF_INT__ 4
335// I386:#define __SIZEOF_LONG_DOUBLE__ 12
336// I386:#define __SIZEOF_LONG_LONG__ 8
337// I386:#define __SIZEOF_LONG__ 4
338// I386:#define __SIZEOF_POINTER__ 4
339// I386:#define __SIZEOF_PTRDIFF_T__ 4
340// I386:#define __SIZEOF_SHORT__ 2
341// I386:#define __SIZEOF_SIZE_T__ 4
342// I386:#define __SIZEOF_WCHAR_T__ 4
343// I386:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000344// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000345// I386:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000346// I386:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000347// I386:#define __USER_LABEL_PREFIX__ _
348// I386:#define __WCHAR_MAX__ 2147483647
349// I386:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000350// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000351// I386:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000352// I386:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000353// I386:#define __i386 1
354// I386:#define __i386__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +0000355// I386:#define i386 1
356//
Benjamin Kramerb4066692011-12-28 15:47:06 +0000357// 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 +0000358//
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000359// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregor12e84642011-01-12 21:19:25 +0000360// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
361// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
362// I386-LINUX:#define __CHAR_BIT__ 8
363// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
364// I386-LINUX:#define __DBL_DIG__ 15
365// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
366// I386-LINUX:#define __DBL_HAS_DENORM__ 1
367// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
368// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
369// I386-LINUX:#define __DBL_MANT_DIG__ 53
370// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
371// I386-LINUX:#define __DBL_MAX_EXP__ 1024
372// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
373// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
374// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
375// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
376// I386-LINUX:#define __DECIMAL_DIG__ 21
377// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
378// I386-LINUX:#define __FLT_DIG__ 6
379// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
380// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
381// I386-LINUX:#define __FLT_HAS_DENORM__ 1
382// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
383// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
384// I386-LINUX:#define __FLT_MANT_DIG__ 24
385// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
386// I386-LINUX:#define __FLT_MAX_EXP__ 128
387// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
388// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
389// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
390// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
391// I386-LINUX:#define __FLT_RADIX__ 2
392// I386-LINUX:#define __INT16_TYPE__ short
393// I386-LINUX:#define __INT32_TYPE__ int
394// I386-LINUX:#define __INT64_C_SUFFIX__ LL
395// I386-LINUX:#define __INT64_TYPE__ long long int
396// I386-LINUX:#define __INT8_TYPE__ char
397// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
398// I386-LINUX:#define __INTMAX_TYPE__ long long int
399// I386-LINUX:#define __INTMAX_WIDTH__ 64
400// I386-LINUX:#define __INTPTR_TYPE__ int
401// I386-LINUX:#define __INTPTR_WIDTH__ 32
402// I386-LINUX:#define __INT_MAX__ 2147483647
403// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
404// I386-LINUX:#define __LDBL_DIG__ 18
405// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
406// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
407// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
408// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
409// I386-LINUX:#define __LDBL_MANT_DIG__ 64
410// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
411// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
412// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
413// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
414// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
415// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
416// I386-LINUX:#define __LITTLE_ENDIAN__ 1
417// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
418// I386-LINUX:#define __LONG_MAX__ 2147483647L
Douglas Gregor12e84642011-01-12 21:19:25 +0000419// I386-LINUX:#define __NO_MATH_INLINES 1
420// I386-LINUX:#define __POINTER_WIDTH__ 32
421// I386-LINUX:#define __PTRDIFF_TYPE__ int
422// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
423// I386-LINUX:#define __REGISTER_PREFIX__
424// I386-LINUX:#define __SCHAR_MAX__ 127
425// I386-LINUX:#define __SHRT_MAX__ 32767
426// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
427// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
428// I386-LINUX:#define __SIZEOF_FLOAT__ 4
429// I386-LINUX:#define __SIZEOF_INT__ 4
430// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
431// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
432// I386-LINUX:#define __SIZEOF_LONG__ 4
433// I386-LINUX:#define __SIZEOF_POINTER__ 4
434// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
435// I386-LINUX:#define __SIZEOF_SHORT__ 2
436// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
437// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
438// I386-LINUX:#define __SIZEOF_WINT_T__ 4
439// I386-LINUX:#define __SIZE_TYPE__ unsigned int
440// I386-LINUX:#define __SIZE_WIDTH__ 32
441// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
442// I386-LINUX:#define __USER_LABEL_PREFIX__
443// I386-LINUX:#define __WCHAR_MAX__ 2147483647
444// I386-LINUX:#define __WCHAR_TYPE__ int
445// I386-LINUX:#define __WCHAR_WIDTH__ 32
446// I386-LINUX:#define __WINT_TYPE__ unsigned int
447// I386-LINUX:#define __WINT_WIDTH__ 32
448// I386-LINUX:#define __i386 1
449// I386-LINUX:#define __i386__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +0000450// I386-LINUX:#define i386 1
451//
Simon Atanasyan7a521802012-04-06 08:37:24 +0000452// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -check-prefix MIPS32BE %s
453//
454// MIPS32BE:#define MIPSEB 1
455// MIPS32BE:#define _ABIO32 1
456// MIPS32BE:#define _MIPSEB 1
457// MIPS32BE:#define _MIPS_SIM _ABIO32
458// MIPS32BE:#define _MIPS_SZINT 32
459// MIPS32BE:#define _MIPS_SZLONG 32
460// MIPS32BE:#define _MIPS_SZPTR 32
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000461// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000462// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
463// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
464// MIPS32BE:#define __CHAR_BIT__ 8
465// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
466// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
467// MIPS32BE:#define __DBL_DIG__ 15
468// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
469// MIPS32BE:#define __DBL_HAS_DENORM__ 1
470// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
471// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
472// MIPS32BE:#define __DBL_MANT_DIG__ 53
473// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
474// MIPS32BE:#define __DBL_MAX_EXP__ 1024
475// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
476// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
477// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
478// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
479// MIPS32BE:#define __DECIMAL_DIG__ 17
480// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
481// MIPS32BE:#define __FLT_DIG__ 6
482// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
483// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
484// MIPS32BE:#define __FLT_HAS_DENORM__ 1
485// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
486// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
487// MIPS32BE:#define __FLT_MANT_DIG__ 24
488// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
489// MIPS32BE:#define __FLT_MAX_EXP__ 128
490// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
491// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
492// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
493// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
494// MIPS32BE:#define __FLT_RADIX__ 2
495// MIPS32BE:#define __INT16_TYPE__ short
496// MIPS32BE:#define __INT32_TYPE__ int
497// MIPS32BE:#define __INT64_C_SUFFIX__ LL
498// MIPS32BE:#define __INT64_TYPE__ long long int
499// MIPS32BE:#define __INT8_TYPE__ char
500// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
501// MIPS32BE:#define __INTMAX_TYPE__ long long int
502// MIPS32BE:#define __INTMAX_WIDTH__ 64
503// MIPS32BE:#define __INTPTR_TYPE__ long int
504// MIPS32BE:#define __INTPTR_WIDTH__ 32
505// MIPS32BE:#define __INT_MAX__ 2147483647
506// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
507// MIPS32BE:#define __LDBL_DIG__ 15
508// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16
509// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
510// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
511// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
512// MIPS32BE:#define __LDBL_MANT_DIG__ 53
513// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
514// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
515// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308
516// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
517// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
518// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308
519// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
520// MIPS32BE:#define __LONG_MAX__ 2147483647L
521// MIPS32BE:#define __MIPSEB 1
522// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000523// MIPS32BE:#define __POINTER_WIDTH__ 32
524// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
525// MIPS32BE:#define __PTRDIFF_TYPE__ int
526// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
527// MIPS32BE:#define __REGISTER_PREFIX__
528// MIPS32BE:#define __SCHAR_MAX__ 127
529// MIPS32BE:#define __SHRT_MAX__ 32767
530// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
531// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
532// MIPS32BE:#define __SIZEOF_FLOAT__ 4
533// MIPS32BE:#define __SIZEOF_INT__ 4
534// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
535// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
536// MIPS32BE:#define __SIZEOF_LONG__ 4
537// MIPS32BE:#define __SIZEOF_POINTER__ 4
538// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
539// MIPS32BE:#define __SIZEOF_SHORT__ 2
540// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
541// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
542// MIPS32BE:#define __SIZEOF_WINT_T__ 4
543// MIPS32BE:#define __SIZE_TYPE__ unsigned int
544// MIPS32BE:#define __SIZE_WIDTH__ 32
545// MIPS32BE:#define __STDC_HOSTED__ 0
546// MIPS32BE:#define __STDC_VERSION__ 199901L
547// MIPS32BE:#define __STDC__ 1
548// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
549// MIPS32BE:#define __USER_LABEL_PREFIX__ _
550// MIPS32BE:#define __WCHAR_MAX__ 2147483647
551// MIPS32BE:#define __WCHAR_TYPE__ int
552// MIPS32BE:#define __WCHAR_WIDTH__ 32
553// MIPS32BE:#define __WINT_TYPE__ int
554// MIPS32BE:#define __WINT_WIDTH__ 32
555// MIPS32BE:#define __clang__ 1
556// MIPS32BE:#define __llvm__ 1
557// MIPS32BE:#define __mips 1
558// MIPS32BE:#define __mips__ 1
559// MIPS32BE:#define __mips_hard_float 1
560// MIPS32BE:#define __mips_o32 1
561// MIPS32BE:#define _mips 1
562// MIPS32BE:#define mips 1
563//
564// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mipsel-none-none < /dev/null | FileCheck -check-prefix MIPS32EL %s
565//
566// MIPS32EL:#define MIPSEL 1
567// MIPS32EL:#define _ABIO32 1
568// MIPS32EL:#define _MIPSEL 1
569// MIPS32EL:#define _MIPS_SIM _ABIO32
570// MIPS32EL:#define _MIPS_SZINT 32
571// MIPS32EL:#define _MIPS_SZLONG 32
572// MIPS32EL:#define _MIPS_SZPTR 32
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000573// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000574// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
575// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
576// MIPS32EL:#define __CHAR_BIT__ 8
577// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
578// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
579// MIPS32EL:#define __DBL_DIG__ 15
580// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
581// MIPS32EL:#define __DBL_HAS_DENORM__ 1
582// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
583// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
584// MIPS32EL:#define __DBL_MANT_DIG__ 53
585// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
586// MIPS32EL:#define __DBL_MAX_EXP__ 1024
587// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
588// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
589// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
590// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
591// MIPS32EL:#define __DECIMAL_DIG__ 17
592// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
593// MIPS32EL:#define __FLT_DIG__ 6
594// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
595// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
596// MIPS32EL:#define __FLT_HAS_DENORM__ 1
597// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
598// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
599// MIPS32EL:#define __FLT_MANT_DIG__ 24
600// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
601// MIPS32EL:#define __FLT_MAX_EXP__ 128
602// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
603// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
604// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
605// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
606// MIPS32EL:#define __FLT_RADIX__ 2
607// MIPS32EL:#define __INT16_TYPE__ short
608// MIPS32EL:#define __INT32_TYPE__ int
609// MIPS32EL:#define __INT64_C_SUFFIX__ LL
610// MIPS32EL:#define __INT64_TYPE__ long long int
611// MIPS32EL:#define __INT8_TYPE__ char
612// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
613// MIPS32EL:#define __INTMAX_TYPE__ long long int
614// MIPS32EL:#define __INTMAX_WIDTH__ 64
615// MIPS32EL:#define __INTPTR_TYPE__ long int
616// MIPS32EL:#define __INTPTR_WIDTH__ 32
617// MIPS32EL:#define __INT_MAX__ 2147483647
618// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
619// MIPS32EL:#define __LDBL_DIG__ 15
620// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16
621// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
622// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
623// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
624// MIPS32EL:#define __LDBL_MANT_DIG__ 53
625// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
626// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
627// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308
628// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
629// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
630// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308
631// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
632// MIPS32EL:#define __LONG_MAX__ 2147483647L
633// MIPS32EL:#define __MIPSEL 1
634// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000635// MIPS32EL:#define __POINTER_WIDTH__ 32
636// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
637// MIPS32EL:#define __PTRDIFF_TYPE__ int
638// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
639// MIPS32EL:#define __REGISTER_PREFIX__
640// MIPS32EL:#define __SCHAR_MAX__ 127
641// MIPS32EL:#define __SHRT_MAX__ 32767
642// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
643// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
644// MIPS32EL:#define __SIZEOF_FLOAT__ 4
645// MIPS32EL:#define __SIZEOF_INT__ 4
646// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
647// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
648// MIPS32EL:#define __SIZEOF_LONG__ 4
649// MIPS32EL:#define __SIZEOF_POINTER__ 4
650// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
651// MIPS32EL:#define __SIZEOF_SHORT__ 2
652// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
653// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
654// MIPS32EL:#define __SIZEOF_WINT_T__ 4
655// MIPS32EL:#define __SIZE_TYPE__ unsigned int
656// MIPS32EL:#define __SIZE_WIDTH__ 32
657// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
658// MIPS32EL:#define __USER_LABEL_PREFIX__ _
659// MIPS32EL:#define __WCHAR_MAX__ 2147483647
660// MIPS32EL:#define __WCHAR_TYPE__ int
661// MIPS32EL:#define __WCHAR_WIDTH__ 32
662// MIPS32EL:#define __WINT_TYPE__ int
663// MIPS32EL:#define __WINT_WIDTH__ 32
664// MIPS32EL:#define __clang__ 1
665// MIPS32EL:#define __llvm__ 1
666// MIPS32EL:#define __mips 1
667// MIPS32EL:#define __mips__ 1
668// MIPS32EL:#define __mips_hard_float 1
669// MIPS32EL:#define __mips_o32 1
670// MIPS32EL:#define _mips 1
671// MIPS32EL:#define mips 1
672//
673// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -check-prefix MIPS64BE %s
674//
675// MIPS64BE:#define MIPSEB 1
676// MIPS64BE:#define _ABI64 3
677// MIPS64BE:#define _MIPSEB 1
678// MIPS64BE:#define _MIPS_SIM _ABI64
679// MIPS64BE:#define _MIPS_SZINT 32
680// MIPS64BE:#define _MIPS_SZLONG 64
681// MIPS64BE:#define _MIPS_SZPTR 64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000682// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000683// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
684// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
685// MIPS64BE:#define __CHAR_BIT__ 8
686// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
687// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
688// MIPS64BE:#define __DBL_DIG__ 15
689// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
690// MIPS64BE:#define __DBL_HAS_DENORM__ 1
691// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
692// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
693// MIPS64BE:#define __DBL_MANT_DIG__ 53
694// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
695// MIPS64BE:#define __DBL_MAX_EXP__ 1024
696// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
697// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
698// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
699// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
700// MIPS64BE:#define __DECIMAL_DIG__ 36
701// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
702// MIPS64BE:#define __FLT_DIG__ 6
703// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
704// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
705// MIPS64BE:#define __FLT_HAS_DENORM__ 1
706// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
707// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
708// MIPS64BE:#define __FLT_MANT_DIG__ 24
709// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
710// MIPS64BE:#define __FLT_MAX_EXP__ 128
711// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
712// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
713// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
714// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
715// MIPS64BE:#define __FLT_RADIX__ 2
716// MIPS64BE:#define __INT16_TYPE__ short
717// MIPS64BE:#define __INT32_TYPE__ int
718// MIPS64BE:#define __INT64_C_SUFFIX__ LL
719// MIPS64BE:#define __INT64_TYPE__ long long int
720// MIPS64BE:#define __INT8_TYPE__ char
721// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807LL
722// MIPS64BE:#define __INTMAX_TYPE__ long long int
723// MIPS64BE:#define __INTMAX_WIDTH__ 64
724// MIPS64BE:#define __INTPTR_TYPE__ long int
725// MIPS64BE:#define __INTPTR_WIDTH__ 64
726// MIPS64BE:#define __INT_MAX__ 2147483647
727// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
728// MIPS64BE:#define __LDBL_DIG__ 33
729// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
730// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
731// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
732// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
733// MIPS64BE:#define __LDBL_MANT_DIG__ 113
734// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
735// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
736// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
737// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
738// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
739// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
740// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
741// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
742// MIPS64BE:#define __MIPSEB 1
743// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000744// MIPS64BE:#define __POINTER_WIDTH__ 64
745// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
746// MIPS64BE:#define __PTRDIFF_TYPE__ long int
747// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
748// MIPS64BE:#define __REGISTER_PREFIX__
749// MIPS64BE:#define __SCHAR_MAX__ 127
750// MIPS64BE:#define __SHRT_MAX__ 32767
751// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
752// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
753// MIPS64BE:#define __SIZEOF_FLOAT__ 4
754// MIPS64BE:#define __SIZEOF_INT__ 4
755// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
756// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
757// MIPS64BE:#define __SIZEOF_LONG__ 8
758// MIPS64BE:#define __SIZEOF_POINTER__ 8
759// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
760// MIPS64BE:#define __SIZEOF_SHORT__ 2
761// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
762// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
763// MIPS64BE:#define __SIZEOF_WINT_T__ 4
764// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
765// MIPS64BE:#define __SIZE_WIDTH__ 64
766// MIPS64BE:#define __UINTMAX_TYPE__ long long unsigned int
767// MIPS64BE:#define __USER_LABEL_PREFIX__ _
768// MIPS64BE:#define __WCHAR_MAX__ 2147483647
769// MIPS64BE:#define __WCHAR_TYPE__ int
770// MIPS64BE:#define __WCHAR_WIDTH__ 32
771// MIPS64BE:#define __WINT_TYPE__ int
772// MIPS64BE:#define __WINT_WIDTH__ 32
773// MIPS64BE:#define __clang__ 1
774// MIPS64BE:#define __llvm__ 1
775// MIPS64BE:#define __mips 1
776// MIPS64BE:#define __mips__ 1
777// MIPS64BE:#define __mips_hard_float 1
778// MIPS64BE:#define __mips_n64 1
779// MIPS64BE:#define _mips 1
780// MIPS64BE:#define mips 1
781//
782// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-none-none < /dev/null | FileCheck -check-prefix MIPS64EL %s
783//
784// MIPS64EL:#define MIPSEL 1
785// MIPS64EL:#define _ABI64 3
786// MIPS64EL:#define _MIPSEL 1
787// MIPS64EL:#define _MIPS_SIM _ABI64
788// MIPS64EL:#define _MIPS_SZINT 32
789// MIPS64EL:#define _MIPS_SZLONG 64
790// MIPS64EL:#define _MIPS_SZPTR 64
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000791// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyan7a521802012-04-06 08:37:24 +0000792// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
793// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
794// MIPS64EL:#define __CHAR_BIT__ 8
795// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
796// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
797// MIPS64EL:#define __DBL_DIG__ 15
798// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
799// MIPS64EL:#define __DBL_HAS_DENORM__ 1
800// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
801// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
802// MIPS64EL:#define __DBL_MANT_DIG__ 53
803// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
804// MIPS64EL:#define __DBL_MAX_EXP__ 1024
805// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
806// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
807// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
808// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
809// MIPS64EL:#define __DECIMAL_DIG__ 36
810// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
811// MIPS64EL:#define __FLT_DIG__ 6
812// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
813// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
814// MIPS64EL:#define __FLT_HAS_DENORM__ 1
815// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
816// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
817// MIPS64EL:#define __FLT_MANT_DIG__ 24
818// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
819// MIPS64EL:#define __FLT_MAX_EXP__ 128
820// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
821// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
822// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
823// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
824// MIPS64EL:#define __FLT_RADIX__ 2
825// MIPS64EL:#define __INT16_TYPE__ short
826// MIPS64EL:#define __INT32_TYPE__ int
827// MIPS64EL:#define __INT64_C_SUFFIX__ LL
828// MIPS64EL:#define __INT64_TYPE__ long long int
829// MIPS64EL:#define __INT8_TYPE__ char
830// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807LL
831// MIPS64EL:#define __INTMAX_TYPE__ long long int
832// MIPS64EL:#define __INTMAX_WIDTH__ 64
833// MIPS64EL:#define __INTPTR_TYPE__ long int
834// MIPS64EL:#define __INTPTR_WIDTH__ 64
835// MIPS64EL:#define __INT_MAX__ 2147483647
836// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
837// MIPS64EL:#define __LDBL_DIG__ 33
838// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
839// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
840// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
841// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
842// MIPS64EL:#define __LDBL_MANT_DIG__ 113
843// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
844// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
845// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
846// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
847// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
848// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
849// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
850// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
851// MIPS64EL:#define __MIPSEL 1
852// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyan7a521802012-04-06 08:37:24 +0000853// MIPS64EL:#define __POINTER_WIDTH__ 64
854// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
855// MIPS64EL:#define __PTRDIFF_TYPE__ long int
856// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
857// MIPS64EL:#define __REGISTER_PREFIX__
858// MIPS64EL:#define __SCHAR_MAX__ 127
859// MIPS64EL:#define __SHRT_MAX__ 32767
860// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
861// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
862// MIPS64EL:#define __SIZEOF_FLOAT__ 4
863// MIPS64EL:#define __SIZEOF_INT__ 4
864// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
865// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
866// MIPS64EL:#define __SIZEOF_LONG__ 8
867// MIPS64EL:#define __SIZEOF_POINTER__ 8
868// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
869// MIPS64EL:#define __SIZEOF_SHORT__ 2
870// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
871// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
872// MIPS64EL:#define __SIZEOF_WINT_T__ 4
873// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
874// MIPS64EL:#define __SIZE_WIDTH__ 64
875// MIPS64EL:#define __UINTMAX_TYPE__ long long unsigned int
876// MIPS64EL:#define __USER_LABEL_PREFIX__ _
877// MIPS64EL:#define __WCHAR_MAX__ 2147483647
878// MIPS64EL:#define __WCHAR_TYPE__ int
879// MIPS64EL:#define __WCHAR_WIDTH__ 32
880// MIPS64EL:#define __WINT_TYPE__ int
881// MIPS64EL:#define __WINT_WIDTH__ 32
882// MIPS64EL:#define __clang__ 1
883// MIPS64EL:#define __llvm__ 1
884// MIPS64EL:#define __mips 1
885// MIPS64EL:#define __mips__ 1
886// MIPS64EL:#define __mips_hard_float 1
887// MIPS64EL:#define __mips_n64 1
888// MIPS64EL:#define _mips 1
889// MIPS64EL:#define mips 1
890//
Simon Atanasyanaba3f0f2012-04-06 17:51:49 +0000891// Check MIPS float ABI macros
892//
893// RUN: %clang_cc1 -E -dM -ffreestanding \
894// RUN: -triple=mips-none-none < /dev/null \
895// RUN: | FileCheck -check-prefix MIPS-FABI-HARD %s
896// MIPS-FABI-HARD:#define __mips_hard_float 1
897//
898// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
899// RUN: -triple=mips-none-none < /dev/null \
900// RUN: | FileCheck -check-prefix MIPS-FABI-SOFT %s
901// MIPS-FABI-SOFT:#define __mips_soft_float 1
902//
903// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
904// RUN: -triple=mips-none-none < /dev/null \
905// RUN: | FileCheck -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyan3dbcc882012-06-05 13:06:56 +0000906// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyanaba3f0f2012-04-06 17:51:49 +0000907// MIPS-FABI-SINGLE:#define __mips_single_float 1
908//
Simon Atanasyan1176bcd2012-07-05 16:06:06 +0000909// Check MIPS features macros
910//
911// RUN: %clang_cc1 -target-feature +mips16 \
912// RUN: -E -dM -triple=mips-none-none < /dev/null \
913// RUN: | FileCheck -check-prefix MIPS16 %s
914// MIPS16:#define __mips16 1
915//
916// RUN: %clang_cc1 -target-feature -mips16 \
917// RUN: -E -dM -triple=mips-none-none < /dev/null \
918// RUN: | FileCheck -check-prefix NOMIPS16 %s
919// NOMIPS16-NOT:#define __mips16 1
920//
Simon Atanasyana1b62272012-07-05 20:16:22 +0000921// RUN: %clang_cc1 -target-feature +dsp \
922// RUN: -E -dM -triple=mips-none-none < /dev/null \
923// RUN: | FileCheck -check-prefix MIPS-DSP %s
924// MIPS-DSP:#define __mips_dsp 1
925// MIPS-DSP:#define __mips_dsp_rev 1
926// MIPS-DSP-NOT:#define __mips_dspr2 1
927//
928// RUN: %clang_cc1 -target-feature +dspr2 \
929// RUN: -E -dM -triple=mips-none-none < /dev/null \
930// RUN: | FileCheck -check-prefix MIPS-DSPR2 %s
931// MIPS-DSPR2:#define __mips_dsp 1
932// MIPS-DSPR2:#define __mips_dsp_rev 2
933// MIPS-DSPR2:#define __mips_dspr2 1
934//
Daniel Dunbara5728872009-12-15 20:14:24 +0000935// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -check-prefix MSP430 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000936//
937// MSP430:#define MSP430 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +0000938// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +0000939// MSP430:#define __CHAR16_TYPE__ unsigned short
940// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000941// MSP430:#define __CHAR_BIT__ 8
942// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
943// MSP430:#define __DBL_DIG__ 15
944// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
945// MSP430:#define __DBL_HAS_DENORM__ 1
946// MSP430:#define __DBL_HAS_INFINITY__ 1
947// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
948// MSP430:#define __DBL_MANT_DIG__ 53
949// MSP430:#define __DBL_MAX_10_EXP__ 308
950// MSP430:#define __DBL_MAX_EXP__ 1024
951// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
952// MSP430:#define __DBL_MIN_10_EXP__ (-307)
953// MSP430:#define __DBL_MIN_EXP__ (-1021)
954// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
955// MSP430:#define __DECIMAL_DIG__ 17
956// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
957// MSP430:#define __FLT_DIG__ 6
958// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
959// MSP430:#define __FLT_EVAL_METHOD__ 0
960// MSP430:#define __FLT_HAS_DENORM__ 1
961// MSP430:#define __FLT_HAS_INFINITY__ 1
962// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
963// MSP430:#define __FLT_MANT_DIG__ 24
964// MSP430:#define __FLT_MAX_10_EXP__ 38
965// MSP430:#define __FLT_MAX_EXP__ 128
966// MSP430:#define __FLT_MAX__ 3.40282347e+38F
967// MSP430:#define __FLT_MIN_10_EXP__ (-37)
968// MSP430:#define __FLT_MIN_EXP__ (-125)
969// MSP430:#define __FLT_MIN__ 1.17549435e-38F
970// MSP430:#define __FLT_RADIX__ 2
971// MSP430:#define __INT16_TYPE__ short
Ken Dyckeef22ef2009-11-16 16:36:33 +0000972// MSP430:#define __INT32_C_SUFFIX__ L
Chris Lattnerdcdd2a02009-11-12 08:08:27 +0000973// MSP430:#define __INT32_TYPE__ long int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000974// MSP430:#define __INT8_TYPE__ char
975// MSP430:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +0000976// MSP430:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +0000977// MSP430:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000978// MSP430:#define __INTPTR_TYPE__ short
Ken Dyckd896e1a2009-11-18 20:05:48 +0000979// MSP430:#define __INTPTR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000980// MSP430:#define __INT_MAX__ 32767
981// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
982// MSP430:#define __LDBL_DIG__ 15
983// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16
984// MSP430:#define __LDBL_HAS_DENORM__ 1
985// MSP430:#define __LDBL_HAS_INFINITY__ 1
986// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
987// MSP430:#define __LDBL_MANT_DIG__ 53
988// MSP430:#define __LDBL_MAX_10_EXP__ 308
989// MSP430:#define __LDBL_MAX_EXP__ 1024
990// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308
991// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
992// MSP430:#define __LDBL_MIN_EXP__ (-1021)
993// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308
Anton Korobeynikov79bff432010-01-14 21:36:52 +0000994// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000995// MSP430:#define __LONG_MAX__ 2147483647L
996// MSP430:#define __MSP430__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +0000997// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000998// MSP430:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000999// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001000// MSP430:#define __SCHAR_MAX__ 127
1001// MSP430:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001002// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001003// MSP430:#define __SIZEOF_DOUBLE__ 8
1004// MSP430:#define __SIZEOF_FLOAT__ 4
1005// MSP430:#define __SIZEOF_INT__ 2
1006// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
1007// MSP430:#define __SIZEOF_LONG_LONG__ 8
1008// MSP430:#define __SIZEOF_LONG__ 4
1009// MSP430:#define __SIZEOF_POINTER__ 2
1010// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
1011// MSP430:#define __SIZEOF_SHORT__ 2
1012// MSP430:#define __SIZEOF_SIZE_T__ 2
1013// MSP430:#define __SIZEOF_WCHAR_T__ 2
1014// MSP430:#define __SIZEOF_WINT_T__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +00001015// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001016// MSP430:#define __SIZE_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +00001017// MSP430:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001018// MSP430:#define __USER_LABEL_PREFIX__ _
Chris Lattner91846462009-11-12 08:04:33 +00001019// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnerbceaf862009-10-29 04:55:36 +00001020// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001021// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001022// MSP430:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001023// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +00001024// MSP430:#define __clang__ 1
1025//
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001026// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -check-prefix NVPTX32 %s
1027//
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001028// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001029// NVPTX32:#define __CHAR16_TYPE__ unsigned short
1030// NVPTX32:#define __CHAR32_TYPE__ unsigned int
1031// NVPTX32:#define __CHAR_BIT__ 8
1032// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
1033// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1034// NVPTX32:#define __DBL_DIG__ 15
1035// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
1036// NVPTX32:#define __DBL_HAS_DENORM__ 1
1037// NVPTX32:#define __DBL_HAS_INFINITY__ 1
1038// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
1039// NVPTX32:#define __DBL_MANT_DIG__ 53
1040// NVPTX32:#define __DBL_MAX_10_EXP__ 308
1041// NVPTX32:#define __DBL_MAX_EXP__ 1024
1042// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
1043// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
1044// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
1045// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
1046// NVPTX32:#define __DECIMAL_DIG__ 17
1047// NVPTX32:#define __FINITE_MATH_ONLY__ 0
1048// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1049// NVPTX32:#define __FLT_DIG__ 6
1050// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
1051// NVPTX32:#define __FLT_EVAL_METHOD__ 0
1052// NVPTX32:#define __FLT_HAS_DENORM__ 1
1053// NVPTX32:#define __FLT_HAS_INFINITY__ 1
1054// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
1055// NVPTX32:#define __FLT_MANT_DIG__ 24
1056// NVPTX32:#define __FLT_MAX_10_EXP__ 38
1057// NVPTX32:#define __FLT_MAX_EXP__ 128
1058// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
1059// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
1060// NVPTX32:#define __FLT_MIN_EXP__ (-125)
1061// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
1062// NVPTX32:#define __FLT_RADIX__ 2
1063// NVPTX32:#define __INT16_TYPE__ short
1064// NVPTX32:#define __INT32_TYPE__ int
1065// NVPTX32:#define __INT64_C_SUFFIX__ LL
1066// NVPTX32:#define __INT64_TYPE__ long long int
1067// NVPTX32:#define __INT8_TYPE__ char
1068// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
1069// NVPTX32:#define __INTMAX_TYPE__ long long int
1070// NVPTX32:#define __INTMAX_WIDTH__ 64
1071// NVPTX32:#define __INTPTR_TYPE__ unsigned int
1072// NVPTX32:#define __INTPTR_WIDTH__ 32
1073// NVPTX32:#define __INT_MAX__ 2147483647
1074// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
1075// NVPTX32:#define __LDBL_DIG__ 15
1076// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16
1077// NVPTX32:#define __LDBL_HAS_DENORM__ 1
1078// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
1079// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
1080// NVPTX32:#define __LDBL_MANT_DIG__ 53
1081// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
1082// NVPTX32:#define __LDBL_MAX_EXP__ 1024
1083// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308
1084// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
1085// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
1086// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308
1087// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
1088// NVPTX32:#define __LONG_MAX__ 9223372036854775807L
1089// NVPTX32:#define __NVPTX__ 1
1090// NVPTX32:#define __POINTER_WIDTH__ 32
1091// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
1092// NVPTX32:#define __PTRDIFF_TYPE__ unsigned int
1093// NVPTX32:#define __PTRDIFF_WIDTH__ 32
1094// NVPTX32:#define __PTX__ 1
1095// NVPTX32:#define __SCHAR_MAX__ 127
1096// NVPTX32:#define __SHRT_MAX__ 32767
1097// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
1098// NVPTX32:#define __SIZEOF_DOUBLE__ 8
1099// NVPTX32:#define __SIZEOF_FLOAT__ 4
1100// NVPTX32:#define __SIZEOF_INT__ 4
1101// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
1102// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
1103// NVPTX32:#define __SIZEOF_LONG__ 8
1104// NVPTX32:#define __SIZEOF_POINTER__ 4
1105// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
1106// NVPTX32:#define __SIZEOF_SHORT__ 2
1107// NVPTX32:#define __SIZEOF_SIZE_T__ 4
1108// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
1109// NVPTX32:#define __SIZEOF_WINT_T__ 4
1110// NVPTX32:#define __SIZE_TYPE__ unsigned int
1111// NVPTX32:#define __SIZE_WIDTH__ 32
1112// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
1113// NVPTX32:#define __USER_LABEL_PREFIX__ _
1114// NVPTX32:#define __WCHAR_MAX__ 2147483647
1115// NVPTX32:#define __WCHAR_TYPE__ int
1116// NVPTX32:#define __WCHAR_WIDTH__ 32
1117// NVPTX32:#define __WINT_TYPE__ int
1118// NVPTX32:#define __WINT_WIDTH__ 32
1119//
1120// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -check-prefix NVPTX64 %s
1121//
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001122// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmith77a4d572012-07-27 16:37:53 +00001123// NVPTX64:#define __CHAR16_TYPE__ unsigned short
1124// NVPTX64:#define __CHAR32_TYPE__ unsigned int
1125// NVPTX64:#define __CHAR_BIT__ 8
1126// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
1127// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1128// NVPTX64:#define __DBL_DIG__ 15
1129// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1130// NVPTX64:#define __DBL_HAS_DENORM__ 1
1131// NVPTX64:#define __DBL_HAS_INFINITY__ 1
1132// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
1133// NVPTX64:#define __DBL_MANT_DIG__ 53
1134// NVPTX64:#define __DBL_MAX_10_EXP__ 308
1135// NVPTX64:#define __DBL_MAX_EXP__ 1024
1136// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
1137// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
1138// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
1139// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
1140// NVPTX64:#define __DECIMAL_DIG__ 17
1141// NVPTX64:#define __FINITE_MATH_ONLY__ 0
1142// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1143// NVPTX64:#define __FLT_DIG__ 6
1144// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
1145// NVPTX64:#define __FLT_EVAL_METHOD__ 0
1146// NVPTX64:#define __FLT_HAS_DENORM__ 1
1147// NVPTX64:#define __FLT_HAS_INFINITY__ 1
1148// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
1149// NVPTX64:#define __FLT_MANT_DIG__ 24
1150// NVPTX64:#define __FLT_MAX_10_EXP__ 38
1151// NVPTX64:#define __FLT_MAX_EXP__ 128
1152// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
1153// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
1154// NVPTX64:#define __FLT_MIN_EXP__ (-125)
1155// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
1156// NVPTX64:#define __FLT_RADIX__ 2
1157// NVPTX64:#define __INT16_TYPE__ short
1158// NVPTX64:#define __INT32_TYPE__ int
1159// NVPTX64:#define __INT64_C_SUFFIX__ LL
1160// NVPTX64:#define __INT64_TYPE__ long long int
1161// NVPTX64:#define __INT8_TYPE__ char
1162// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
1163// NVPTX64:#define __INTMAX_TYPE__ long long int
1164// NVPTX64:#define __INTMAX_WIDTH__ 64
1165// NVPTX64:#define __INTPTR_TYPE__ long long unsigned int
1166// NVPTX64:#define __INTPTR_WIDTH__ 64
1167// NVPTX64:#define __INT_MAX__ 2147483647
1168// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
1169// NVPTX64:#define __LDBL_DIG__ 15
1170// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16
1171// NVPTX64:#define __LDBL_HAS_DENORM__ 1
1172// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
1173// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
1174// NVPTX64:#define __LDBL_MANT_DIG__ 53
1175// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
1176// NVPTX64:#define __LDBL_MAX_EXP__ 1024
1177// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308
1178// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
1179// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
1180// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308
1181// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1182// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
1183// NVPTX64:#define __NVPTX__ 1
1184// NVPTX64:#define __POINTER_WIDTH__ 64
1185// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
1186// NVPTX64:#define __PTRDIFF_TYPE__ long long unsigned int
1187// NVPTX64:#define __PTRDIFF_WIDTH__ 64
1188// NVPTX64:#define __PTX__ 1
1189// NVPTX64:#define __SCHAR_MAX__ 127
1190// NVPTX64:#define __SHRT_MAX__ 32767
1191// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
1192// NVPTX64:#define __SIZEOF_DOUBLE__ 8
1193// NVPTX64:#define __SIZEOF_FLOAT__ 4
1194// NVPTX64:#define __SIZEOF_INT__ 4
1195// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
1196// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
1197// NVPTX64:#define __SIZEOF_LONG__ 8
1198// NVPTX64:#define __SIZEOF_POINTER__ 8
1199// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
1200// NVPTX64:#define __SIZEOF_SHORT__ 2
1201// NVPTX64:#define __SIZEOF_SIZE_T__ 8
1202// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
1203// NVPTX64:#define __SIZEOF_WINT_T__ 4
1204// NVPTX64:#define __SIZE_TYPE__ long long unsigned int
1205// NVPTX64:#define __SIZE_WIDTH__ 64
1206// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
1207// NVPTX64:#define __USER_LABEL_PREFIX__ _
1208// NVPTX64:#define __WCHAR_MAX__ 2147483647
1209// NVPTX64:#define __WCHAR_TYPE__ int
1210// NVPTX64:#define __WCHAR_WIDTH__ 32
1211// NVPTX64:#define __WINT_TYPE__ int
1212// NVPTX64:#define __WINT_WIDTH__ 32
1213//
Hal Finkel39d5fa12012-07-03 16:51:04 +00001214// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -check-prefix PPC603E %s
1215//
1216// PPC603E:#define _ARCH_603 1
1217// PPC603E:#define _ARCH_603E 1
1218// PPC603E:#define _ARCH_PPC 1
1219// PPC603E:#define _ARCH_PPCGR 1
1220// PPC603E:#define _BIG_ENDIAN 1
1221// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001222// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel39d5fa12012-07-03 16:51:04 +00001223// PPC603E:#define __CHAR16_TYPE__ unsigned short
1224// PPC603E:#define __CHAR32_TYPE__ unsigned int
1225// PPC603E:#define __CHAR_BIT__ 8
1226// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1227// PPC603E:#define __DBL_DIG__ 15
1228// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
1229// PPC603E:#define __DBL_HAS_DENORM__ 1
1230// PPC603E:#define __DBL_HAS_INFINITY__ 1
1231// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
1232// PPC603E:#define __DBL_MANT_DIG__ 53
1233// PPC603E:#define __DBL_MAX_10_EXP__ 308
1234// PPC603E:#define __DBL_MAX_EXP__ 1024
1235// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
1236// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
1237// PPC603E:#define __DBL_MIN_EXP__ (-1021)
1238// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
1239// PPC603E:#define __DECIMAL_DIG__ 33
1240// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1241// PPC603E:#define __FLT_DIG__ 6
1242// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
1243// PPC603E:#define __FLT_EVAL_METHOD__ 0
1244// PPC603E:#define __FLT_HAS_DENORM__ 1
1245// PPC603E:#define __FLT_HAS_INFINITY__ 1
1246// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
1247// PPC603E:#define __FLT_MANT_DIG__ 24
1248// PPC603E:#define __FLT_MAX_10_EXP__ 38
1249// PPC603E:#define __FLT_MAX_EXP__ 128
1250// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
1251// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
1252// PPC603E:#define __FLT_MIN_EXP__ (-125)
1253// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
1254// PPC603E:#define __FLT_RADIX__ 2
1255// PPC603E:#define __INT16_TYPE__ short
1256// PPC603E:#define __INT32_TYPE__ int
1257// PPC603E:#define __INT64_C_SUFFIX__ LL
1258// PPC603E:#define __INT64_TYPE__ long long int
1259// PPC603E:#define __INT8_TYPE__ char
1260// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
1261// PPC603E:#define __INTMAX_TYPE__ long long int
1262// PPC603E:#define __INTMAX_WIDTH__ 64
1263// PPC603E:#define __INTPTR_TYPE__ long int
1264// PPC603E:#define __INTPTR_WIDTH__ 32
1265// PPC603E:#define __INT_MAX__ 2147483647
1266// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1267// PPC603E:#define __LDBL_DIG__ 31
1268// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1269// PPC603E:#define __LDBL_HAS_DENORM__ 1
1270// PPC603E:#define __LDBL_HAS_INFINITY__ 1
1271// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
1272// PPC603E:#define __LDBL_MANT_DIG__ 106
1273// PPC603E:#define __LDBL_MAX_10_EXP__ 308
1274// PPC603E:#define __LDBL_MAX_EXP__ 1024
1275// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1276// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
1277// PPC603E:#define __LDBL_MIN_EXP__ (-968)
1278// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1279// PPC603E:#define __LONG_DOUBLE_128__ 1
1280// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
1281// PPC603E:#define __LONG_MAX__ 2147483647L
1282// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel39d5fa12012-07-03 16:51:04 +00001283// PPC603E:#define __POINTER_WIDTH__ 32
1284// PPC603E:#define __POWERPC__ 1
1285// PPC603E:#define __PTRDIFF_TYPE__ long int
1286// PPC603E:#define __PTRDIFF_WIDTH__ 32
1287// PPC603E:#define __REGISTER_PREFIX__
1288// PPC603E:#define __SCHAR_MAX__ 127
1289// PPC603E:#define __SHRT_MAX__ 32767
1290// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
1291// PPC603E:#define __SIZEOF_DOUBLE__ 8
1292// PPC603E:#define __SIZEOF_FLOAT__ 4
1293// PPC603E:#define __SIZEOF_INT__ 4
1294// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
1295// PPC603E:#define __SIZEOF_LONG_LONG__ 8
1296// PPC603E:#define __SIZEOF_LONG__ 4
1297// PPC603E:#define __SIZEOF_POINTER__ 4
1298// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
1299// PPC603E:#define __SIZEOF_SHORT__ 2
1300// PPC603E:#define __SIZEOF_SIZE_T__ 4
1301// PPC603E:#define __SIZEOF_WCHAR_T__ 4
1302// PPC603E:#define __SIZEOF_WINT_T__ 4
1303// PPC603E:#define __SIZE_TYPE__ long unsigned int
1304// PPC603E:#define __SIZE_WIDTH__ 32
1305// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
1306// PPC603E:#define __USER_LABEL_PREFIX__ _
1307// PPC603E:#define __WCHAR_MAX__ 2147483647
1308// PPC603E:#define __WCHAR_TYPE__ int
1309// PPC603E:#define __WCHAR_WIDTH__ 32
1310// PPC603E:#define __WINT_TYPE__ int
1311// PPC603E:#define __WINT_WIDTH__ 32
1312// PPC603E:#define __powerpc__ 1
1313// PPC603E:#define __ppc__ 1
1314//
Hal Finkel02a84272012-06-11 22:35:19 +00001315// 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 +00001316//
1317// PPC64:#define _ARCH_PPC 1
1318// PPC64:#define _ARCH_PPC64 1
Hal Finkel39d5fa12012-07-03 16:51:04 +00001319// PPC64:#define _ARCH_PPCGR 1
1320// PPC64:#define _ARCH_PPCSQ 1
1321// PPC64:#define _ARCH_PWR4 1
1322// PPC64:#define _ARCH_PWR5 1
1323// PPC64:#define _ARCH_PWR6 1
Hal Finkel02a84272012-06-11 22:35:19 +00001324// PPC64:#define _ARCH_PWR7 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001325// PPC64:#define _BIG_ENDIAN 1
1326// PPC64:#define _LP64 1
1327// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001328// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001329// PPC64:#define __CHAR16_TYPE__ unsigned short
1330// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001331// PPC64:#define __CHAR_BIT__ 8
1332// PPC64:#define __CHAR_UNSIGNED__ 1
1333// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1334// PPC64:#define __DBL_DIG__ 15
1335// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1336// PPC64:#define __DBL_HAS_DENORM__ 1
1337// PPC64:#define __DBL_HAS_INFINITY__ 1
1338// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
1339// PPC64:#define __DBL_MANT_DIG__ 53
1340// PPC64:#define __DBL_MAX_10_EXP__ 308
1341// PPC64:#define __DBL_MAX_EXP__ 1024
1342// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
1343// PPC64:#define __DBL_MIN_10_EXP__ (-307)
1344// PPC64:#define __DBL_MIN_EXP__ (-1021)
1345// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001346// PPC64:#define __DECIMAL_DIG__ 33
Chris Lattnerbceaf862009-10-29 04:55:36 +00001347// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1348// PPC64:#define __FLT_DIG__ 6
1349// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
1350// PPC64:#define __FLT_EVAL_METHOD__ 0
1351// PPC64:#define __FLT_HAS_DENORM__ 1
1352// PPC64:#define __FLT_HAS_INFINITY__ 1
1353// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
1354// PPC64:#define __FLT_MANT_DIG__ 24
1355// PPC64:#define __FLT_MAX_10_EXP__ 38
1356// PPC64:#define __FLT_MAX_EXP__ 128
1357// PPC64:#define __FLT_MAX__ 3.40282347e+38F
1358// PPC64:#define __FLT_MIN_10_EXP__ (-37)
1359// PPC64:#define __FLT_MIN_EXP__ (-125)
1360// PPC64:#define __FLT_MIN__ 1.17549435e-38F
1361// PPC64:#define __FLT_RADIX__ 2
1362// PPC64:#define __INT16_TYPE__ short
1363// PPC64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001364// PPC64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001365// PPC64:#define __INT64_TYPE__ long int
1366// PPC64:#define __INT8_TYPE__ char
1367// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +00001368// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001369// PPC64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001370// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001371// PPC64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001372// PPC64:#define __INT_MAX__ 2147483647
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001373// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1374// PPC64:#define __LDBL_DIG__ 31
1375// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001376// PPC64:#define __LDBL_HAS_DENORM__ 1
1377// PPC64:#define __LDBL_HAS_INFINITY__ 1
1378// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001379// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnerbceaf862009-10-29 04:55:36 +00001380// PPC64:#define __LDBL_MAX_10_EXP__ 308
1381// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001382// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1383// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
1384// PPC64:#define __LDBL_MIN_EXP__ (-968)
1385// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001386// PPC64:#define __LONG_DOUBLE_128__ 1
1387// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1388// PPC64:#define __LONG_MAX__ 9223372036854775807L
1389// PPC64:#define __LP64__ 1
1390// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001391// PPC64:#define __POINTER_WIDTH__ 64
1392// PPC64:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001393// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001394// PPC64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001395// PPC64:#define __REGISTER_PREFIX__
1396// PPC64:#define __SCHAR_MAX__ 127
1397// PPC64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001398// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001399// PPC64:#define __SIZEOF_DOUBLE__ 8
1400// PPC64:#define __SIZEOF_FLOAT__ 4
1401// PPC64:#define __SIZEOF_INT__ 4
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001402// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohmancfeac342010-05-28 00:27:15 +00001403// PPC64:#define __SIZEOF_LONG_LONG__ 8
1404// PPC64:#define __SIZEOF_LONG__ 8
1405// PPC64:#define __SIZEOF_POINTER__ 8
1406// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
1407// PPC64:#define __SIZEOF_SHORT__ 2
1408// PPC64:#define __SIZEOF_SIZE_T__ 8
1409// PPC64:#define __SIZEOF_WCHAR_T__ 4
1410// PPC64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001411// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001412// PPC64:#define __SIZE_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001413// PPC64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001414// PPC64:#define __USER_LABEL_PREFIX__ _
1415// PPC64:#define __WCHAR_MAX__ 2147483647
1416// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001417// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001418// PPC64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001419// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001420// PPC64:#define __ppc64__ 1
1421// PPC64:#define __ppc__ 1
1422//
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001423// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64-LINUX %s
1424//
1425// PPC64-LINUX:#define _ARCH_PPC 1
1426// PPC64-LINUX:#define _ARCH_PPC64 1
1427// PPC64-LINUX:#define _BIG_ENDIAN 1
1428// PPC64-LINUX:#define _LP64 1
1429// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001430// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001431// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
1432// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
1433// PPC64-LINUX:#define __CHAR_BIT__ 8
1434// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
1435// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1436// PPC64-LINUX:#define __DBL_DIG__ 15
1437// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
1438// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
1439// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
1440// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
1441// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
1442// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
1443// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
1444// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
1445// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
1446// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
1447// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
1448// PPC64-LINUX:#define __DECIMAL_DIG__ 33
1449// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1450// PPC64-LINUX:#define __FLT_DIG__ 6
1451// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
1452// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
1453// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
1454// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
1455// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
1456// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
1457// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
1458// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
1459// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
1460// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
1461// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
1462// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
1463// PPC64-LINUX:#define __FLT_RADIX__ 2
1464// PPC64-LINUX:#define __INT16_TYPE__ short
1465// PPC64-LINUX:#define __INT32_TYPE__ int
1466// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
1467// PPC64-LINUX:#define __INT64_TYPE__ long int
1468// PPC64-LINUX:#define __INT8_TYPE__ char
1469// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
1470// PPC64-LINUX:#define __INTMAX_TYPE__ long int
1471// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
1472// PPC64-LINUX:#define __INTPTR_TYPE__ long int
1473// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
1474// PPC64-LINUX:#define __INT_MAX__ 2147483647
1475// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1476// PPC64-LINUX:#define __LDBL_DIG__ 31
1477// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1478// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
1479// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
1480// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
1481// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
1482// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
1483// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
1484// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1485// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
1486// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
1487// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1488// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
1489// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
1490// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
1491// PPC64-LINUX:#define __LP64__ 1
1492// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001493// PPC64-LINUX:#define __POINTER_WIDTH__ 64
1494// PPC64-LINUX:#define __POWERPC__ 1
1495// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
1496// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
1497// PPC64-LINUX:#define __REGISTER_PREFIX__
1498// PPC64-LINUX:#define __SCHAR_MAX__ 127
1499// PPC64-LINUX:#define __SHRT_MAX__ 32767
1500// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
1501// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
1502// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
1503// PPC64-LINUX:#define __SIZEOF_INT__ 4
1504// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
1505// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
1506// PPC64-LINUX:#define __SIZEOF_LONG__ 8
1507// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
1508// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
1509// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
1510// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
1511// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
1512// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
1513// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
1514// PPC64-LINUX:#define __SIZE_WIDTH__ 64
1515// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
1516// PPC64-LINUX:#define __USER_LABEL_PREFIX__
1517// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
1518// PPC64-LINUX:#define __WCHAR_TYPE__ int
1519// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
1520// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
1521// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
1522// PPC64-LINUX:#define __WINT_WIDTH__ 32
1523// PPC64-LINUX:#define __powerpc64__ 1
1524// PPC64-LINUX:#define __powerpc__ 1
1525// PPC64-LINUX:#define __ppc64__ 1
1526// PPC64-LINUX:#define __ppc__ 1
1527//
Daniel Dunbara5728872009-12-15 20:14:24 +00001528// 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 +00001529//
1530// PPC:#define _ARCH_PPC 1
1531// PPC:#define _BIG_ENDIAN 1
1532// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001533// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001534// PPC:#define __CHAR16_TYPE__ unsigned short
1535// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001536// PPC:#define __CHAR_BIT__ 8
1537// PPC:#define __CHAR_UNSIGNED__ 1
1538// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1539// PPC:#define __DBL_DIG__ 15
1540// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
1541// PPC:#define __DBL_HAS_DENORM__ 1
1542// PPC:#define __DBL_HAS_INFINITY__ 1
1543// PPC:#define __DBL_HAS_QUIET_NAN__ 1
1544// PPC:#define __DBL_MANT_DIG__ 53
1545// PPC:#define __DBL_MAX_10_EXP__ 308
1546// PPC:#define __DBL_MAX_EXP__ 1024
1547// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
1548// PPC:#define __DBL_MIN_10_EXP__ (-307)
1549// PPC:#define __DBL_MIN_EXP__ (-1021)
1550// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001551// PPC:#define __DECIMAL_DIG__ 33
Chris Lattnerbceaf862009-10-29 04:55:36 +00001552// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1553// PPC:#define __FLT_DIG__ 6
1554// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
1555// PPC:#define __FLT_EVAL_METHOD__ 0
1556// PPC:#define __FLT_HAS_DENORM__ 1
1557// PPC:#define __FLT_HAS_INFINITY__ 1
1558// PPC:#define __FLT_HAS_QUIET_NAN__ 1
1559// PPC:#define __FLT_MANT_DIG__ 24
1560// PPC:#define __FLT_MAX_10_EXP__ 38
1561// PPC:#define __FLT_MAX_EXP__ 128
1562// PPC:#define __FLT_MAX__ 3.40282347e+38F
1563// PPC:#define __FLT_MIN_10_EXP__ (-37)
1564// PPC:#define __FLT_MIN_EXP__ (-125)
1565// PPC:#define __FLT_MIN__ 1.17549435e-38F
1566// PPC:#define __FLT_RADIX__ 2
1567// PPC:#define __INT16_TYPE__ short
1568// PPC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001569// PPC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +00001570// PPC:#define __INT64_TYPE__ long long int
1571// PPC:#define __INT8_TYPE__ char
1572// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +00001573// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +00001574// PPC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001575// PPC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001576// PPC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001577// PPC:#define __INT_MAX__ 2147483647
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001578// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1579// PPC:#define __LDBL_DIG__ 31
1580// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001581// PPC:#define __LDBL_HAS_DENORM__ 1
1582// PPC:#define __LDBL_HAS_INFINITY__ 1
1583// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001584// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnerbceaf862009-10-29 04:55:36 +00001585// PPC:#define __LDBL_MAX_10_EXP__ 308
1586// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001587// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1588// PPC:#define __LDBL_MIN_10_EXP__ (-291)
1589// PPC:#define __LDBL_MIN_EXP__ (-968)
1590// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001591// PPC:#define __LONG_DOUBLE_128__ 1
1592// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
1593// PPC:#define __LONG_MAX__ 2147483647L
1594// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001595// PPC:#define __POINTER_WIDTH__ 32
1596// PPC:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001597// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001598// PPC:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001599// PPC:#define __REGISTER_PREFIX__
1600// PPC:#define __SCHAR_MAX__ 127
1601// PPC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001602// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001603// PPC:#define __SIZEOF_DOUBLE__ 8
1604// PPC:#define __SIZEOF_FLOAT__ 4
1605// PPC:#define __SIZEOF_INT__ 4
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001606// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohmancfeac342010-05-28 00:27:15 +00001607// PPC:#define __SIZEOF_LONG_LONG__ 8
1608// PPC:#define __SIZEOF_LONG__ 4
1609// PPC:#define __SIZEOF_POINTER__ 4
1610// PPC:#define __SIZEOF_PTRDIFF_T__ 4
1611// PPC:#define __SIZEOF_SHORT__ 2
1612// PPC:#define __SIZEOF_SIZE_T__ 4
1613// PPC:#define __SIZEOF_WCHAR_T__ 4
1614// PPC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001615// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001616// PPC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001617// PPC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001618// PPC:#define __USER_LABEL_PREFIX__ _
1619// PPC:#define __WCHAR_MAX__ 2147483647
1620// PPC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001621// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001622// PPC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001623// PPC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001624// PPC:#define __ppc__ 1
1625//
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001626// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-LINUX %s
1627//
1628// PPC-LINUX:#define _ARCH_PPC 1
1629// PPC-LINUX:#define _BIG_ENDIAN 1
1630// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001631// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001632// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
1633// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
1634// PPC-LINUX:#define __CHAR_BIT__ 8
1635// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
1636// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1637// PPC-LINUX:#define __DBL_DIG__ 15
1638// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
1639// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
1640// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
1641// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
1642// PPC-LINUX:#define __DBL_MANT_DIG__ 53
1643// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
1644// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
1645// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
1646// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
1647// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
1648// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
1649// PPC-LINUX:#define __DECIMAL_DIG__ 33
1650// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1651// PPC-LINUX:#define __FLT_DIG__ 6
1652// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
1653// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
1654// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
1655// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
1656// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
1657// PPC-LINUX:#define __FLT_MANT_DIG__ 24
1658// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
1659// PPC-LINUX:#define __FLT_MAX_EXP__ 128
1660// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
1661// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
1662// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
1663// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
1664// PPC-LINUX:#define __FLT_RADIX__ 2
1665// PPC-LINUX:#define __INT16_TYPE__ short
1666// PPC-LINUX:#define __INT32_TYPE__ int
1667// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
1668// PPC-LINUX:#define __INT64_TYPE__ long long int
1669// PPC-LINUX:#define __INT8_TYPE__ char
1670// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
1671// PPC-LINUX:#define __INTMAX_TYPE__ long long int
1672// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Hal Finkel178a9b82012-03-02 20:54:36 +00001673// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001674// PPC-LINUX:#define __INTPTR_WIDTH__ 32
1675// PPC-LINUX:#define __INT_MAX__ 2147483647
1676// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
1677// PPC-LINUX:#define __LDBL_DIG__ 31
1678// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
1679// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
1680// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
1681// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
1682// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
1683// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
1684// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
1685// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
1686// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
1687// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
1688// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
1689// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
1690// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
1691// PPC-LINUX:#define __LONG_MAX__ 2147483647L
1692// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001693// PPC-LINUX:#define __POINTER_WIDTH__ 32
1694// PPC-LINUX:#define __POWERPC__ 1
Hal Finkel178a9b82012-03-02 20:54:36 +00001695// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber6e1d2ea2012-01-31 02:07:33 +00001696// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
1697// PPC-LINUX:#define __REGISTER_PREFIX__
1698// PPC-LINUX:#define __SCHAR_MAX__ 127
1699// PPC-LINUX:#define __SHRT_MAX__ 32767
1700// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
1701// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
1702// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
1703// PPC-LINUX:#define __SIZEOF_INT__ 4
1704// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
1705// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
1706// PPC-LINUX:#define __SIZEOF_LONG__ 4
1707// PPC-LINUX:#define __SIZEOF_POINTER__ 4
1708// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
1709// PPC-LINUX:#define __SIZEOF_SHORT__ 2
1710// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
1711// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
1712// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
1713// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
1714// PPC-LINUX:#define __SIZE_WIDTH__ 32
1715// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
1716// PPC-LINUX:#define __USER_LABEL_PREFIX__
1717// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
1718// PPC-LINUX:#define __WCHAR_TYPE__ int
1719// PPC-LINUX:#define __WCHAR_WIDTH__ 32
1720// PPC-LINUX:#define __WINT_TYPE__ unsigned int
1721// PPC-LINUX:#define __WINT_UNSIGNED__ 1
1722// PPC-LINUX:#define __WINT_WIDTH__ 32
1723// PPC-LINUX:#define __powerpc__ 1
1724// PPC-LINUX:#define __ppc__ 1
1725//
Daniel Dunbara5728872009-12-15 20:14:24 +00001726// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -check-prefix SPARC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001727//
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001728// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001729// SPARC:#define __CHAR16_TYPE__ unsigned short
1730// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001731// SPARC:#define __CHAR_BIT__ 8
1732// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1733// SPARC:#define __DBL_DIG__ 15
1734// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
1735// SPARC:#define __DBL_HAS_DENORM__ 1
1736// SPARC:#define __DBL_HAS_INFINITY__ 1
1737// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
1738// SPARC:#define __DBL_MANT_DIG__ 53
1739// SPARC:#define __DBL_MAX_10_EXP__ 308
1740// SPARC:#define __DBL_MAX_EXP__ 1024
1741// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
1742// SPARC:#define __DBL_MIN_10_EXP__ (-307)
1743// SPARC:#define __DBL_MIN_EXP__ (-1021)
1744// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
1745// SPARC:#define __DECIMAL_DIG__ 17
1746// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1747// SPARC:#define __FLT_DIG__ 6
1748// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
1749// SPARC:#define __FLT_EVAL_METHOD__ 0
1750// SPARC:#define __FLT_HAS_DENORM__ 1
1751// SPARC:#define __FLT_HAS_INFINITY__ 1
1752// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
1753// SPARC:#define __FLT_MANT_DIG__ 24
1754// SPARC:#define __FLT_MAX_10_EXP__ 38
1755// SPARC:#define __FLT_MAX_EXP__ 128
1756// SPARC:#define __FLT_MAX__ 3.40282347e+38F
1757// SPARC:#define __FLT_MIN_10_EXP__ (-37)
1758// SPARC:#define __FLT_MIN_EXP__ (-125)
1759// SPARC:#define __FLT_MIN__ 1.17549435e-38F
1760// SPARC:#define __FLT_RADIX__ 2
1761// SPARC:#define __INT16_TYPE__ short
1762// SPARC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001763// SPARC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +00001764// SPARC:#define __INT64_TYPE__ long long int
1765// SPARC:#define __INT8_TYPE__ char
1766// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +00001767// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +00001768// SPARC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001769// SPARC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001770// SPARC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001771// SPARC:#define __INT_MAX__ 2147483647
1772// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
1773// SPARC:#define __LDBL_DIG__ 15
1774// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16
1775// SPARC:#define __LDBL_HAS_DENORM__ 1
1776// SPARC:#define __LDBL_HAS_INFINITY__ 1
1777// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
1778// SPARC:#define __LDBL_MANT_DIG__ 53
1779// SPARC:#define __LDBL_MAX_10_EXP__ 308
1780// SPARC:#define __LDBL_MAX_EXP__ 1024
1781// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308
1782// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
1783// SPARC:#define __LDBL_MIN_EXP__ (-1021)
1784// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308
1785// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
1786// SPARC:#define __LONG_MAX__ 2147483647L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001787// SPARC:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001788// SPARC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001789// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +00001790// SPARC:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +00001791// SPARC:#define __SCHAR_MAX__ 127
1792// SPARC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001793// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001794// SPARC:#define __SIZEOF_DOUBLE__ 8
1795// SPARC:#define __SIZEOF_FLOAT__ 4
1796// SPARC:#define __SIZEOF_INT__ 4
1797// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
1798// SPARC:#define __SIZEOF_LONG_LONG__ 8
1799// SPARC:#define __SIZEOF_LONG__ 4
1800// SPARC:#define __SIZEOF_POINTER__ 4
1801// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
1802// SPARC:#define __SIZEOF_SHORT__ 2
1803// SPARC:#define __SIZEOF_SIZE_T__ 4
1804// SPARC:#define __SIZEOF_WCHAR_T__ 4
1805// SPARC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001806// SPARC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001807// SPARC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001808// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001809// SPARC:#define __USER_LABEL_PREFIX__ _
Daniel Dunbarad1a4c62011-03-31 00:53:51 +00001810// SPARC:#define __VERSION__ "4.2.1 Compatible
Chris Lattnerbceaf862009-10-29 04:55:36 +00001811// SPARC:#define __WCHAR_MAX__ 2147483647
1812// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001813// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001814// SPARC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001815// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001816// SPARC:#define __sparc 1
1817// SPARC:#define __sparc__ 1
1818// SPARC:#define __sparcv8 1
1819// SPARC:#define sparc 1
1820//
Daniel Dunbara5728872009-12-15 20:14:24 +00001821// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001822//
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001823// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001824// TCE:#define __CHAR16_TYPE__ unsigned short
1825// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001826// TCE:#define __CHAR_BIT__ 8
1827// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45F
1828// TCE:#define __DBL_DIG__ 6
1829// TCE:#define __DBL_EPSILON__ 1.19209290e-7F
1830// TCE:#define __DBL_HAS_DENORM__ 1
1831// TCE:#define __DBL_HAS_INFINITY__ 1
1832// TCE:#define __DBL_HAS_QUIET_NAN__ 1
1833// TCE:#define __DBL_MANT_DIG__ 24
1834// TCE:#define __DBL_MAX_10_EXP__ 38
1835// TCE:#define __DBL_MAX_EXP__ 128
1836// TCE:#define __DBL_MAX__ 3.40282347e+38F
1837// TCE:#define __DBL_MIN_10_EXP__ (-37)
1838// TCE:#define __DBL_MIN_EXP__ (-125)
1839// TCE:#define __DBL_MIN__ 1.17549435e-38F
1840// TCE:#define __DECIMAL_DIG__ -1
1841// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1842// TCE:#define __FLT_DIG__ 6
1843// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
1844// TCE:#define __FLT_EVAL_METHOD__ 0
1845// TCE:#define __FLT_HAS_DENORM__ 1
1846// TCE:#define __FLT_HAS_INFINITY__ 1
1847// TCE:#define __FLT_HAS_QUIET_NAN__ 1
1848// TCE:#define __FLT_MANT_DIG__ 24
1849// TCE:#define __FLT_MAX_10_EXP__ 38
1850// TCE:#define __FLT_MAX_EXP__ 128
1851// TCE:#define __FLT_MAX__ 3.40282347e+38F
1852// TCE:#define __FLT_MIN_10_EXP__ (-37)
1853// TCE:#define __FLT_MIN_EXP__ (-125)
1854// TCE:#define __FLT_MIN__ 1.17549435e-38F
1855// TCE:#define __FLT_RADIX__ 2
1856// TCE:#define __INT16_TYPE__ short
1857// TCE:#define __INT32_TYPE__ int
1858// TCE:#define __INT8_TYPE__ char
1859// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +00001860// TCE:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001861// TCE:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001862// TCE:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001863// TCE:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001864// TCE:#define __INT_MAX__ 2147483647
1865// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45F
1866// TCE:#define __LDBL_DIG__ 6
1867// TCE:#define __LDBL_EPSILON__ 1.19209290e-7F
1868// TCE:#define __LDBL_HAS_DENORM__ 1
1869// TCE:#define __LDBL_HAS_INFINITY__ 1
1870// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
1871// TCE:#define __LDBL_MANT_DIG__ 24
1872// TCE:#define __LDBL_MAX_10_EXP__ 38
1873// TCE:#define __LDBL_MAX_EXP__ 128
1874// TCE:#define __LDBL_MAX__ 3.40282347e+38F
1875// TCE:#define __LDBL_MIN_10_EXP__ (-37)
1876// TCE:#define __LDBL_MIN_EXP__ (-125)
1877// TCE:#define __LDBL_MIN__ 1.17549435e-38F
1878// TCE:#define __LONG_LONG_MAX__ 2147483647LL
1879// TCE:#define __LONG_MAX__ 2147483647L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001880// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001881// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +00001882// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001883// TCE:#define __SCHAR_MAX__ 127
1884// TCE:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001885// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001886// TCE:#define __SIZEOF_DOUBLE__ 4
1887// TCE:#define __SIZEOF_FLOAT__ 4
1888// TCE:#define __SIZEOF_INT__ 4
1889// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
1890// TCE:#define __SIZEOF_LONG_LONG__ 4
1891// TCE:#define __SIZEOF_LONG__ 4
1892// TCE:#define __SIZEOF_POINTER__ 4
1893// TCE:#define __SIZEOF_PTRDIFF_T__ 4
1894// TCE:#define __SIZEOF_SHORT__ 2
1895// TCE:#define __SIZEOF_SIZE_T__ 4
1896// TCE:#define __SIZEOF_WCHAR_T__ 4
1897// TCE:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001898// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001899// TCE:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001900// TCE:#define __TCE_V1__ 1
1901// TCE:#define __TCE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001902// TCE:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001903// TCE:#define __USER_LABEL_PREFIX__ _
1904// TCE:#define __WCHAR_MAX__ 2147483647
1905// TCE:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001906// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001907// TCE:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001908// TCE:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001909// TCE:#define __tce 1
1910// TCE:#define __tce__ 1
1911// TCE:#define tce 1
1912//
Daniel Dunbara5728872009-12-15 20:14:24 +00001913// 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 +00001914//
1915// X86_64:#define _LP64 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00001916// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohmancfeac342010-05-28 00:27:15 +00001917// X86_64:#define __CHAR16_TYPE__ unsigned short
1918// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001919// X86_64:#define __CHAR_BIT__ 8
1920// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1921// X86_64:#define __DBL_DIG__ 15
1922// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1923// X86_64:#define __DBL_HAS_DENORM__ 1
1924// X86_64:#define __DBL_HAS_INFINITY__ 1
1925// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
1926// X86_64:#define __DBL_MANT_DIG__ 53
1927// X86_64:#define __DBL_MAX_10_EXP__ 308
1928// X86_64:#define __DBL_MAX_EXP__ 1024
1929// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
1930// X86_64:#define __DBL_MIN_10_EXP__ (-307)
1931// X86_64:#define __DBL_MIN_EXP__ (-1021)
1932// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
1933// X86_64:#define __DECIMAL_DIG__ 21
1934// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1935// X86_64:#define __FLT_DIG__ 6
1936// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
1937// X86_64:#define __FLT_EVAL_METHOD__ 0
1938// X86_64:#define __FLT_HAS_DENORM__ 1
1939// X86_64:#define __FLT_HAS_INFINITY__ 1
1940// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
1941// X86_64:#define __FLT_MANT_DIG__ 24
1942// X86_64:#define __FLT_MAX_10_EXP__ 38
1943// X86_64:#define __FLT_MAX_EXP__ 128
1944// X86_64:#define __FLT_MAX__ 3.40282347e+38F
1945// X86_64:#define __FLT_MIN_10_EXP__ (-37)
1946// X86_64:#define __FLT_MIN_EXP__ (-125)
1947// X86_64:#define __FLT_MIN__ 1.17549435e-38F
1948// X86_64:#define __FLT_RADIX__ 2
1949// X86_64:#define __INT16_TYPE__ short
1950// X86_64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001951// X86_64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001952// X86_64:#define __INT64_TYPE__ long int
1953// X86_64:#define __INT8_TYPE__ char
1954// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +00001955// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001956// X86_64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001957// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001958// X86_64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001959// X86_64:#define __INT_MAX__ 2147483647
1960// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
1961// X86_64:#define __LDBL_DIG__ 18
1962// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
1963// X86_64:#define __LDBL_HAS_DENORM__ 1
1964// X86_64:#define __LDBL_HAS_INFINITY__ 1
1965// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
1966// X86_64:#define __LDBL_MANT_DIG__ 64
1967// X86_64:#define __LDBL_MAX_10_EXP__ 4932
1968// X86_64:#define __LDBL_MAX_EXP__ 16384
1969// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
1970// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
1971// X86_64:#define __LDBL_MIN_EXP__ (-16381)
1972// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
1973// X86_64:#define __LITTLE_ENDIAN__ 1
1974// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1975// X86_64:#define __LONG_MAX__ 9223372036854775807L
1976// X86_64:#define __LP64__ 1
1977// X86_64:#define __MMX__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00001978// X86_64:#define __NO_MATH_INLINES 1
1979// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001980// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001981// X86_64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001982// X86_64:#define __REGISTER_PREFIX__
1983// X86_64:#define __SCHAR_MAX__ 127
1984// X86_64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001985// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001986// X86_64:#define __SIZEOF_DOUBLE__ 8
1987// X86_64:#define __SIZEOF_FLOAT__ 4
1988// X86_64:#define __SIZEOF_INT__ 4
1989// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
1990// X86_64:#define __SIZEOF_LONG_LONG__ 8
1991// X86_64:#define __SIZEOF_LONG__ 8
1992// X86_64:#define __SIZEOF_POINTER__ 8
1993// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
1994// X86_64:#define __SIZEOF_SHORT__ 2
1995// X86_64:#define __SIZEOF_SIZE_T__ 8
1996// X86_64:#define __SIZEOF_WCHAR_T__ 4
1997// X86_64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001998// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001999// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00002000// X86_64:#define __SSE2_MATH__ 1
2001// X86_64:#define __SSE2__ 1
2002// X86_64:#define __SSE_MATH__ 1
2003// X86_64:#define __SSE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00002004// X86_64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00002005// X86_64:#define __USER_LABEL_PREFIX__ _
2006// X86_64:#define __WCHAR_MAX__ 2147483647
2007// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00002008// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002009// X86_64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00002010// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00002011// X86_64:#define __amd64 1
2012// X86_64:#define __amd64__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +00002013// X86_64:#define __x86_64 1
2014// X86_64:#define __x86_64__ 1
2015//
Douglas Gregor12e84642011-01-12 21:19:25 +00002016// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -check-prefix X86_64-LINUX %s
2017//
2018// X86_64-LINUX:#define _LP64 1
Dylan Noblesmith3b198a92012-07-27 18:34:31 +00002019// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregor12e84642011-01-12 21:19:25 +00002020// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
2021// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
2022// X86_64-LINUX:#define __CHAR_BIT__ 8
2023// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2024// X86_64-LINUX:#define __DBL_DIG__ 15
2025// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2026// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
2027// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
2028// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2029// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
2030// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
2031// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
2032// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2033// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2034// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
2035// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
2036// X86_64-LINUX:#define __DECIMAL_DIG__ 21
2037// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2038// X86_64-LINUX:#define __FLT_DIG__ 6
2039// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2040// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
2041// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
2042// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
2043// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2044// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
2045// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
2046// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
2047// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2048// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2049// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
2050// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2051// X86_64-LINUX:#define __FLT_RADIX__ 2
2052// X86_64-LINUX:#define __INT16_TYPE__ short
2053// X86_64-LINUX:#define __INT32_TYPE__ int
2054// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
2055// X86_64-LINUX:#define __INT64_TYPE__ long int
2056// X86_64-LINUX:#define __INT8_TYPE__ char
2057// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
2058// X86_64-LINUX:#define __INTMAX_TYPE__ long int
2059// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
2060// X86_64-LINUX:#define __INTPTR_TYPE__ long int
2061// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
2062// X86_64-LINUX:#define __INT_MAX__ 2147483647
2063// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2064// X86_64-LINUX:#define __LDBL_DIG__ 18
2065// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2066// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
2067// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
2068// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2069// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
2070// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2071// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
2072// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2073// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2074// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2075// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2076// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
2077// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2078// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
2079// X86_64-LINUX:#define __LP64__ 1
2080// X86_64-LINUX:#define __MMX__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +00002081// X86_64-LINUX:#define __NO_MATH_INLINES 1
2082// X86_64-LINUX:#define __POINTER_WIDTH__ 64
2083// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
2084// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
2085// X86_64-LINUX:#define __REGISTER_PREFIX__
2086// X86_64-LINUX:#define __SCHAR_MAX__ 127
2087// X86_64-LINUX:#define __SHRT_MAX__ 32767
2088// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2089// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
2090// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
2091// X86_64-LINUX:#define __SIZEOF_INT__ 4
2092// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
2093// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
2094// X86_64-LINUX:#define __SIZEOF_LONG__ 8
2095// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
2096// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
2097// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
2098// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
2099// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
2100// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
2101// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
2102// X86_64-LINUX:#define __SIZE_WIDTH__ 64
2103// X86_64-LINUX:#define __SSE2_MATH__ 1
2104// X86_64-LINUX:#define __SSE2__ 1
2105// X86_64-LINUX:#define __SSE_MATH__ 1
2106// X86_64-LINUX:#define __SSE__ 1
2107// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
2108// X86_64-LINUX:#define __USER_LABEL_PREFIX__
2109// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
2110// X86_64-LINUX:#define __WCHAR_TYPE__ int
2111// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
2112// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
2113// X86_64-LINUX:#define __WINT_WIDTH__ 32
2114// X86_64-LINUX:#define __amd64 1
2115// X86_64-LINUX:#define __amd64__ 1
Douglas Gregor12e84642011-01-12 21:19:25 +00002116// X86_64-LINUX:#define __x86_64 1
2117// X86_64-LINUX:#define __x86_64__ 1
2118//
David Chisnall11d3f4c2012-07-03 20:49:52 +00002119// 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 +00002120// GNUSOURCE:#define _GNU_SOURCE 1
2121//
Dan Gohmancfeac342010-05-28 00:27:15 +00002122// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -check-prefix NORTTI %s
2123// NORTTI: __GXX_ABI_VERSION
2124// NORTTI-NOT:#define __GXX_RTTI
2125// NORTTI: __STDC__
Evgeniy Stepanov32064032012-04-26 12:08:09 +00002126//
2127// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -check-prefix ANDROID %s
2128// ANDROID: __ANDROID__ 1