blob: 94b062ea3617d20c7785eeb678063173a0b9ea98 [file] [log] [blame]
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +00001// RUN: %clang_cc1 -E -dM -x assembler-with-cpp < /dev/null | FileCheck -check-prefix ASM %s
Chris Lattnere963d092009-10-29 04:55:36 +00002//
3// ASM:#define __ASSEMBLER__ 1
4//
5//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +00006// RUN: %clang_cc1 -fblocks -E -dM < /dev/null | FileCheck -check-prefix BLOCKS %s
Chris Lattnere963d092009-10-29 04:55:36 +00007//
8// BLOCKS:#define __BLOCKS__ 1
9// BLOCKS:#define __block __attribute__((__blocks__(byref)))
10//
Richard Smith0a715422013-05-07 19:32:56 +000011//
12// RUN: %clang_cc1 -x c++ -std=c++1y -E -dM < /dev/null | FileCheck -check-prefix CXX1Y %s
13//
14// CXX1Y:#define __GNUG__
15// CXX1Y:#define __GXX_EXPERIMENTAL_CXX0X__ 1
16// CXX1Y:#define __GXX_RTTI 1
17// CXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +000018// CXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +000019// CXX1Y:#define __private_extern__ extern
20//
21//
Richard Smith89645bc2013-01-02 12:01:23 +000022// RUN: %clang_cc1 -x c++ -std=c++11 -E -dM < /dev/null | FileCheck -check-prefix CXX11 %s
Chris Lattnere963d092009-10-29 04:55:36 +000023//
Richard Smith89645bc2013-01-02 12:01:23 +000024// CXX11:#define __GNUG__
25// CXX11:#define __GXX_EXPERIMENTAL_CXX0X__ 1
26// CXX11:#define __GXX_RTTI 1
27// CXX11:#define __GXX_WEAK__ 1
28// CXX11:#define __cplusplus 201103L
29// CXX11:#define __private_extern__ extern
Chris Lattnere963d092009-10-29 04:55:36 +000030//
31//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +000032// RUN: %clang_cc1 -x c++ -std=c++98 -E -dM < /dev/null | FileCheck -check-prefix CXX98 %s
Chris Lattnere963d092009-10-29 04:55:36 +000033//
Chris Lattnere963d092009-10-29 04:55:36 +000034// CXX98:#define __GNUG__
Dan Gohman04f87202010-05-28 00:27:15 +000035// CXX98:#define __GXX_RTTI 1
Chris Lattnere963d092009-10-29 04:55:36 +000036// CXX98:#define __GXX_WEAK__ 1
37// CXX98:#define __cplusplus 199711L
38// CXX98:#define __private_extern__ extern
39//
40//
Chandler Carruth30483fb2011-04-23 19:48:40 +000041// RUN: %clang_cc1 -fdeprecated-macro -E -dM < /dev/null | FileCheck -check-prefix DEPRECATED %s
42//
43// DEPRECATED:#define __DEPRECATED 1
44//
45//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +000046// RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -check-prefix C99 %s
Chris Lattnere963d092009-10-29 04:55:36 +000047//
48// C99:#define __STDC_VERSION__ 199901L
49// C99:#define __STRICT_ANSI__ 1
50//
51//
Ed Schoutend0621462013-09-29 07:54:52 +000052// RUN: %clang_cc1 -std=c11 -E -dM < /dev/null | FileCheck -check-prefix C11 %s
53//
54// C11:#define __STDC_UTF_16__ 1
55// C11:#define __STDC_UTF_32__ 1
56// C11:#define __STDC_VERSION__ 201112L
57// C11:#define __STRICT_ANSI__ 1
58//
59//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +000060// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix COMMON %s
Chris Lattnere963d092009-10-29 04:55:36 +000061//
62// COMMON:#define __CONSTANT_CFSTRINGS__ 1
63// COMMON:#define __FINITE_MATH_ONLY__ 0
64// COMMON:#define __GNUC_MINOR__
65// COMMON:#define __GNUC_PATCHLEVEL__
66// COMMON:#define __GNUC_STDC_INLINE__ 1
67// COMMON:#define __GNUC__
68// COMMON:#define __GXX_ABI_VERSION
Dylan Noblesmith673728f2012-07-27 18:34:31 +000069// COMMON:#define __ORDER_BIG_ENDIAN__ 4321
70// COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234
71// COMMON:#define __ORDER_PDP_ENDIAN__ 3412
Chris Lattnere963d092009-10-29 04:55:36 +000072// COMMON:#define __STDC_HOSTED__ 1
73// COMMON:#define __STDC_VERSION__
74// COMMON:#define __STDC__ 1
75// COMMON:#define __VERSION__
76// COMMON:#define __clang__ 1
Daniel Dunbard7e887f2010-06-25 23:34:47 +000077// COMMON:#define __clang_major__ {{[0-9]+}}
78// COMMON:#define __clang_minor__ {{[0-9]+}}
79// COMMON:#define __clang_patchlevel__ {{[0-9]+}}
Douglas Gregordead00f2010-04-30 03:07:23 +000080// COMMON:#define __clang_version__
Chris Lattnere963d092009-10-29 04:55:36 +000081// COMMON:#define __llvm__ 1
82//
83//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +000084// RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -check-prefix FREESTANDING %s
Chris Lattnere963d092009-10-29 04:55:36 +000085// FREESTANDING:#define __STDC_HOSTED__ 0
Richard Smithd106a982012-05-03 22:18:20 +000086//
87//
Richard Smith0a715422013-05-07 19:32:56 +000088// RUN: %clang_cc1 -x c++ -std=gnu++1y -E -dM < /dev/null | FileCheck -check-prefix GXX1Y %s
89//
90// GXX1Y:#define __GNUG__
91// GXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +000092// GXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +000093// GXX1Y:#define __private_extern__ extern
94//
95//
Richard Smithd106a982012-05-03 22:18:20 +000096// RUN: %clang_cc1 -x c++ -std=gnu++11 -E -dM < /dev/null | FileCheck -check-prefix GXX11 %s
97//
98// GXX11:#define __GNUG__
99// GXX11:#define __GXX_WEAK__ 1
100// GXX11:#define __cplusplus 201103L
101// GXX11:#define __private_extern__ extern
102//
103//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000104// RUN: %clang_cc1 -x c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -check-prefix GXX98 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000105//
Chris Lattnere963d092009-10-29 04:55:36 +0000106// GXX98:#define __GNUG__
107// GXX98:#define __GXX_WEAK__ 1
Richard Smithd106a982012-05-03 22:18:20 +0000108// GXX98:#define __cplusplus 199711L
Chris Lattnere963d092009-10-29 04:55:36 +0000109// GXX98:#define __private_extern__ extern
110//
111//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000112// RUN: %clang_cc1 -std=iso9899:199409 -E -dM < /dev/null | FileCheck -check-prefix C94 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000113//
114// C94:#define __STDC_VERSION__ 199409L
115//
116//
Hans Wennborg4c02be32013-05-02 13:12:32 +0000117// RUN: %clang_cc1 -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -check-prefix MSEXT %s
Chris Lattnere963d092009-10-29 04:55:36 +0000118//
119// MSEXT-NOT:#define __STDC__
Douglas Gregor7617cb82010-08-06 12:37:52 +0000120// MSEXT:#define _INTEGRAL_MAX_BITS 64
Hans Wennborg4c02be32013-05-02 13:12:32 +0000121// MSEXT-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
122// MSEXT-NOT:#define _WCHAR_T_DEFINED 1
123//
124//
125// RUN: %clang_cc1 -x c++ -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -check-prefix MSEXT-CXX %s
126//
127// MSEXT-CXX:#define _NATIVE_WCHAR_T_DEFINED 1
128// MSEXT-CXX:#define _WCHAR_T_DEFINED 1
129//
130//
131// RUN: %clang_cc1 -x c++ -fno-wchar -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -check-prefix MSEXT-CXX-NOWCHAR %s
132//
133// MSEXT-CXX-NOWCHAR-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
134// MSEXT-CXX-NOWCHAR-NOT:#define _WCHAR_T_DEFINED 1
Chris Lattnere963d092009-10-29 04:55:36 +0000135//
136//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000137// RUN: %clang_cc1 -x objective-c -E -dM < /dev/null | FileCheck -check-prefix OBJC %s
Chris Lattnere963d092009-10-29 04:55:36 +0000138//
139// OBJC:#define OBJC_NEW_PROPERTIES 1
Daniel Dunbar4656c532009-11-17 07:07:28 +0000140// OBJC:#define __NEXT_RUNTIME__ 1
Chris Lattnere963d092009-10-29 04:55:36 +0000141// OBJC:#define __OBJC__ 1
142//
Daniel Dunbar4656c532009-11-17 07:07:28 +0000143//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000144// RUN: %clang_cc1 -x objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -check-prefix OBJCGC %s
Chris Lattnere963d092009-10-29 04:55:36 +0000145//
146// OBJCGC:#define __OBJC_GC__ 1
147//
148//
John McCall9b0a7ce2011-10-02 01:16:38 +0000149// RUN: %clang_cc1 -x objective-c -fobjc-exceptions -E -dM < /dev/null | FileCheck -check-prefix NONFRAGILE %s
Chris Lattnere963d092009-10-29 04:55:36 +0000150//
151// NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
152// NONFRAGILE:#define __OBJC2__ 1
153//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000154//
Rafael Espindolaff7cea82013-09-04 04:12:25 +0000155// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix O0 %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000156//
157// O0:#define __NO_INLINE__ 1
158// O0-NOT:#define __OPTIMIZE_SIZE__
159// O0-NOT:#define __OPTIMIZE__
160//
161//
162// RUN: %clang_cc1 -fno-inline -O3 -E -dM < /dev/null | FileCheck -check-prefix NO_INLINE %s
163//
164// NO_INLINE:#define __NO_INLINE__ 1
165// NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
166// NO_INLINE:#define __OPTIMIZE__
167//
168//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000169// RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -check-prefix O1 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000170//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000171// O1-NOT:#define __OPTIMIZE_SIZE__
Chris Lattnere963d092009-10-29 04:55:36 +0000172// O1:#define __OPTIMIZE__ 1
173//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000174//
175// RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -check-prefix Os %s
176//
177// Os:#define __OPTIMIZE_SIZE__ 1
178// Os:#define __OPTIMIZE__ 1
179//
180//
181// RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -check-prefix Oz %s
182//
183// Oz:#define __OPTIMIZE_SIZE__ 1
184// Oz:#define __OPTIMIZE__ 1
185//
186//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000187// RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -check-prefix PASCAL %s
Chris Lattnere963d092009-10-29 04:55:36 +0000188//
189// PASCAL:#define __PASCAL_STRINGS__ 1
190//
191//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000192// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix SCHAR %s
Chris Lattnere963d092009-10-29 04:55:36 +0000193//
194// SCHAR:#define __STDC__ 1
195// SCHAR-NOT:#define __UNSIGNED_CHAR__
196// SCHAR:#define __clang__ 1
197//
Eli Friedman865afc92010-08-03 17:34:19 +0000198// RUN: %clang_cc1 -E -dM -fshort-wchar < /dev/null | FileCheck -check-prefix SHORTWCHAR %s
NAKAMURA Takumi210fbcd2014-02-25 00:30:14 +0000199// wchar_t is u16 for targeting Win32.
200// FIXME: Implement and check x86_64-cygwin.
201// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=x86_64-w64-mingw32 < /dev/null | FileCheck -check-prefix SHORTWCHAR %s
Eli Friedman865afc92010-08-03 17:34:19 +0000202//
203// SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
204// SHORTWCHAR: #define __WCHAR_MAX__ 65535U
205// SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
206// SHORTWCHAR: #define __WCHAR_WIDTH__ 16
207//
NAKAMURA Takumi210fbcd2014-02-25 00:30:14 +0000208// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=i686-unknown-unknown < /dev/null | FileCheck -check-prefix SHORTWCHAR2 %s
209// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=x86_64-unknown-unknown < /dev/null | FileCheck -check-prefix SHORTWCHAR2 %s
Richard Bartonc9b5f352014-02-24 18:43:28 +0000210//
211// SHORTWCHAR2: #define __SIZEOF_WCHAR_T__ 4
212// SHORTWCHAR2: #define __WCHAR_WIDTH__ 32
213// Other definitions vary from platform to platform
Christian Pirker227f5ed2014-03-24 13:57:21 +0000214
Kevin Qinad64f6d2014-02-24 02:45:03 +0000215// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-none < /dev/null | FileCheck -check-prefix AARCH64 %s
216//
217// AARCH64:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000218// AARCH64-NOT:#define __AARCH64EB__ 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000219// AARCH64:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000220// AARCH64-NOT:#define __AARCH_BIG_ENDIAN 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000221// AARCH64:#define __ARM_64BIT_STATE 1
222// AARCH64:#define __ARM_ARCH 8
223// AARCH64:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000224// AARCH64-NOT:#define __ARM_BIG_ENDIAN 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000225// AARCH64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
226// AARCH64:#define __CHAR16_TYPE__ unsigned short
227// AARCH64:#define __CHAR32_TYPE__ unsigned int
228// AARCH64:#define __CHAR_BIT__ 8
229// AARCH64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
230// AARCH64:#define __DBL_DIG__ 15
231// AARCH64:#define __DBL_EPSILON__ 2.2204460492503131e-16
232// AARCH64:#define __DBL_HAS_DENORM__ 1
233// AARCH64:#define __DBL_HAS_INFINITY__ 1
234// AARCH64:#define __DBL_HAS_QUIET_NAN__ 1
235// AARCH64:#define __DBL_MANT_DIG__ 53
236// AARCH64:#define __DBL_MAX_10_EXP__ 308
237// AARCH64:#define __DBL_MAX_EXP__ 1024
238// AARCH64:#define __DBL_MAX__ 1.7976931348623157e+308
239// AARCH64:#define __DBL_MIN_10_EXP__ (-307)
240// AARCH64:#define __DBL_MIN_EXP__ (-1021)
241// AARCH64:#define __DBL_MIN__ 2.2250738585072014e-308
242// AARCH64:#define __DECIMAL_DIG__ 36
243// AARCH64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
244// AARCH64:#define __FLT_DIG__ 6
245// AARCH64:#define __FLT_EPSILON__ 1.19209290e-7F
246// AARCH64:#define __FLT_EVAL_METHOD__ 0
247// AARCH64:#define __FLT_HAS_DENORM__ 1
248// AARCH64:#define __FLT_HAS_INFINITY__ 1
249// AARCH64:#define __FLT_HAS_QUIET_NAN__ 1
250// AARCH64:#define __FLT_MANT_DIG__ 24
251// AARCH64:#define __FLT_MAX_10_EXP__ 38
252// AARCH64:#define __FLT_MAX_EXP__ 128
253// AARCH64:#define __FLT_MAX__ 3.40282347e+38F
254// AARCH64:#define __FLT_MIN_10_EXP__ (-37)
255// AARCH64:#define __FLT_MIN_EXP__ (-125)
256// AARCH64:#define __FLT_MIN__ 1.17549435e-38F
257// AARCH64:#define __FLT_RADIX__ 2
258// AARCH64:#define __INT16_TYPE__ short
259// AARCH64:#define __INT32_TYPE__ int
260// AARCH64:#define __INT64_C_SUFFIX__ L
261// AARCH64:#define __INT64_TYPE__ long int
262// AARCH64:#define __INT8_TYPE__ char
263// AARCH64:#define __INTMAX_MAX__ 9223372036854775807L
264// AARCH64:#define __INTMAX_TYPE__ long int
265// AARCH64:#define __INTMAX_WIDTH__ 64
266// AARCH64:#define __INTPTR_TYPE__ long int
267// AARCH64:#define __INTPTR_WIDTH__ 64
268// AARCH64:#define __INT_MAX__ 2147483647
269// AARCH64:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
270// AARCH64:#define __LDBL_DIG__ 33
271// AARCH64:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
272// AARCH64:#define __LDBL_HAS_DENORM__ 1
273// AARCH64:#define __LDBL_HAS_INFINITY__ 1
274// AARCH64:#define __LDBL_HAS_QUIET_NAN__ 1
275// AARCH64:#define __LDBL_MANT_DIG__ 113
276// AARCH64:#define __LDBL_MAX_10_EXP__ 4932
277// AARCH64:#define __LDBL_MAX_EXP__ 16384
278// AARCH64:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
279// AARCH64:#define __LDBL_MIN_10_EXP__ (-4931)
280// AARCH64:#define __LDBL_MIN_EXP__ (-16381)
281// AARCH64:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
282// AARCH64:#define __LONG_LONG_MAX__ 9223372036854775807LL
283// AARCH64:#define __LONG_MAX__ 9223372036854775807L
284// AARCH64:#define __LP64__ 1
285// AARCH64:#define __POINTER_WIDTH__ 64
286// AARCH64:#define __PTRDIFF_TYPE__ long int
287// AARCH64:#define __PTRDIFF_WIDTH__ 64
288// AARCH64:#define __SCHAR_MAX__ 127
289// AARCH64:#define __SHRT_MAX__ 32767
290// AARCH64:#define __SIG_ATOMIC_WIDTH__ 32
291// AARCH64:#define __SIZEOF_DOUBLE__ 8
292// AARCH64:#define __SIZEOF_FLOAT__ 4
293// AARCH64:#define __SIZEOF_INT128__ 16
294// AARCH64:#define __SIZEOF_INT__ 4
295// AARCH64:#define __SIZEOF_LONG_DOUBLE__ 16
296// AARCH64:#define __SIZEOF_LONG_LONG__ 8
297// AARCH64:#define __SIZEOF_LONG__ 8
298// AARCH64:#define __SIZEOF_POINTER__ 8
299// AARCH64:#define __SIZEOF_PTRDIFF_T__ 8
300// AARCH64:#define __SIZEOF_SHORT__ 2
301// AARCH64:#define __SIZEOF_SIZE_T__ 8
302// AARCH64:#define __SIZEOF_WCHAR_T__ 4
303// AARCH64:#define __SIZEOF_WINT_T__ 4
304// AARCH64:#define __SIZE_MAX__ 18446744073709551615UL
305// AARCH64:#define __SIZE_TYPE__ long unsigned int
306// AARCH64:#define __SIZE_WIDTH__ 64
307// AARCH64:#define __UINTMAX_TYPE__ long unsigned int
308// AARCH64:#define __USER_LABEL_PREFIX__ _
309// AARCH64:#define __WCHAR_MAX__ 4294967295U
310// AARCH64:#define __WCHAR_TYPE__ unsigned int
311// AARCH64:#define __WCHAR_UNSIGNED__ 1
312// AARCH64:#define __WCHAR_WIDTH__ 32
313// AARCH64:#define __WINT_TYPE__ int
314// AARCH64:#define __WINT_WIDTH__ 32
315// AARCH64:#define __aarch64__ 1
316//
Christian Pirker227f5ed2014-03-24 13:57:21 +0000317// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64_be-none-none < /dev/null | FileCheck -check-prefix AARCH64-BE %s
318//
319// AARCH64-BE:#define _LP64 1
320// AARCH64-BE:#define __AARCH64EB__ 1
321// AARCH64-BE-NOT:#define __AARCH64EL__ 1
322// AARCH64-BE:#define __AARCH_BIG_ENDIAN 1
323// AARCH64-BE:#define __ARM_64BIT_STATE 1
324// AARCH64-BE:#define __ARM_ARCH 8
325// AARCH64-BE:#define __ARM_ARCH_ISA_A64 1
326// AARCH64-BE:#define __ARM_BIG_ENDIAN 1
327// AARCH64-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
328// AARCH64-BE:#define __CHAR16_TYPE__ unsigned short
329// AARCH64-BE:#define __CHAR32_TYPE__ unsigned int
330// AARCH64-BE:#define __CHAR_BIT__ 8
331// AARCH64-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
332// AARCH64-BE:#define __DBL_DIG__ 15
333// AARCH64-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
334// AARCH64-BE:#define __DBL_HAS_DENORM__ 1
335// AARCH64-BE:#define __DBL_HAS_INFINITY__ 1
336// AARCH64-BE:#define __DBL_HAS_QUIET_NAN__ 1
337// AARCH64-BE:#define __DBL_MANT_DIG__ 53
338// AARCH64-BE:#define __DBL_MAX_10_EXP__ 308
339// AARCH64-BE:#define __DBL_MAX_EXP__ 1024
340// AARCH64-BE:#define __DBL_MAX__ 1.7976931348623157e+308
341// AARCH64-BE:#define __DBL_MIN_10_EXP__ (-307)
342// AARCH64-BE:#define __DBL_MIN_EXP__ (-1021)
343// AARCH64-BE:#define __DBL_MIN__ 2.2250738585072014e-308
344// AARCH64-BE:#define __DECIMAL_DIG__ 36
345// AARCH64-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
346// AARCH64-BE:#define __FLT_DIG__ 6
347// AARCH64-BE:#define __FLT_EPSILON__ 1.19209290e-7F
348// AARCH64-BE:#define __FLT_EVAL_METHOD__ 0
349// AARCH64-BE:#define __FLT_HAS_DENORM__ 1
350// AARCH64-BE:#define __FLT_HAS_INFINITY__ 1
351// AARCH64-BE:#define __FLT_HAS_QUIET_NAN__ 1
352// AARCH64-BE:#define __FLT_MANT_DIG__ 24
353// AARCH64-BE:#define __FLT_MAX_10_EXP__ 38
354// AARCH64-BE:#define __FLT_MAX_EXP__ 128
355// AARCH64-BE:#define __FLT_MAX__ 3.40282347e+38F
356// AARCH64-BE:#define __FLT_MIN_10_EXP__ (-37)
357// AARCH64-BE:#define __FLT_MIN_EXP__ (-125)
358// AARCH64-BE:#define __FLT_MIN__ 1.17549435e-38F
359// AARCH64-BE:#define __FLT_RADIX__ 2
360// AARCH64-BE:#define __INT16_TYPE__ short
361// AARCH64-BE:#define __INT32_TYPE__ int
362// AARCH64-BE:#define __INT64_C_SUFFIX__ L
363// AARCH64-BE:#define __INT64_TYPE__ long int
364// AARCH64-BE:#define __INT8_TYPE__ char
365// AARCH64-BE:#define __INTMAX_MAX__ 9223372036854775807L
366// AARCH64-BE:#define __INTMAX_TYPE__ long int
367// AARCH64-BE:#define __INTMAX_WIDTH__ 64
368// AARCH64-BE:#define __INTPTR_TYPE__ long int
369// AARCH64-BE:#define __INTPTR_WIDTH__ 64
370// AARCH64-BE:#define __INT_MAX__ 2147483647
371// AARCH64-BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
372// AARCH64-BE:#define __LDBL_DIG__ 33
373// AARCH64-BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
374// AARCH64-BE:#define __LDBL_HAS_DENORM__ 1
375// AARCH64-BE:#define __LDBL_HAS_INFINITY__ 1
376// AARCH64-BE:#define __LDBL_HAS_QUIET_NAN__ 1
377// AARCH64-BE:#define __LDBL_MANT_DIG__ 113
378// AARCH64-BE:#define __LDBL_MAX_10_EXP__ 4932
379// AARCH64-BE:#define __LDBL_MAX_EXP__ 16384
380// AARCH64-BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
381// AARCH64-BE:#define __LDBL_MIN_10_EXP__ (-4931)
382// AARCH64-BE:#define __LDBL_MIN_EXP__ (-16381)
383// AARCH64-BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
384// AARCH64-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
385// AARCH64-BE:#define __LONG_MAX__ 9223372036854775807L
386// AARCH64-BE:#define __LP64__ 1
387// AARCH64-BE:#define __POINTER_WIDTH__ 64
388// AARCH64-BE:#define __PTRDIFF_TYPE__ long int
389// AARCH64-BE:#define __PTRDIFF_WIDTH__ 64
390// AARCH64-BE:#define __SCHAR_MAX__ 127
391// AARCH64-BE:#define __SHRT_MAX__ 32767
392// AARCH64-BE:#define __SIG_ATOMIC_WIDTH__ 32
393// AARCH64-BE:#define __SIZEOF_DOUBLE__ 8
394// AARCH64-BE:#define __SIZEOF_FLOAT__ 4
395// AARCH64-BE:#define __SIZEOF_INT128__ 16
396// AARCH64-BE:#define __SIZEOF_INT__ 4
397// AARCH64-BE:#define __SIZEOF_LONG_DOUBLE__ 16
398// AARCH64-BE:#define __SIZEOF_LONG_LONG__ 8
399// AARCH64-BE:#define __SIZEOF_LONG__ 8
400// AARCH64-BE:#define __SIZEOF_POINTER__ 8
401// AARCH64-BE:#define __SIZEOF_PTRDIFF_T__ 8
402// AARCH64-BE:#define __SIZEOF_SHORT__ 2
403// AARCH64-BE:#define __SIZEOF_SIZE_T__ 8
404// AARCH64-BE:#define __SIZEOF_WCHAR_T__ 4
405// AARCH64-BE:#define __SIZEOF_WINT_T__ 4
406// AARCH64-BE:#define __SIZE_MAX__ 18446744073709551615UL
407// AARCH64-BE:#define __SIZE_TYPE__ long unsigned int
408// AARCH64-BE:#define __SIZE_WIDTH__ 64
409// AARCH64-BE:#define __UINTMAX_TYPE__ long unsigned int
410// AARCH64-BE:#define __USER_LABEL_PREFIX__ _
411// AARCH64-BE:#define __WCHAR_MAX__ 4294967295U
412// AARCH64-BE:#define __WCHAR_TYPE__ unsigned int
413// AARCH64-BE:#define __WCHAR_UNSIGNED__ 1
414// AARCH64-BE:#define __WCHAR_WIDTH__ 32
415// AARCH64-BE:#define __WINT_TYPE__ int
416// AARCH64-BE:#define __WINT_WIDTH__ 32
417// AARCH64-BE:#define __aarch64__ 1
418//
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000419// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-netbsd < /dev/null | FileCheck -check-prefix AARCH64-NETBSD %s
420//
421// AARCH64-NETBSD:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000422// AARCH64-NETBSD-NOT:#define __AARCH64EB__ 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000423// AARCH64-NETBSD:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000424// AARCH64-NETBSD-NOT:#define __AARCH_BIG_ENDIAN 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000425// AARCH64-NETBSD:#define __ARM_64BIT_STATE 1
426// AARCH64-NETBSD:#define __ARM_ARCH 8
427// AARCH64-NETBSD:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000428// AARCH64-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000429// AARCH64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
430// AARCH64-NETBSD:#define __CHAR16_TYPE__ unsigned short
431// AARCH64-NETBSD:#define __CHAR32_TYPE__ unsigned int
432// AARCH64-NETBSD:#define __CHAR_BIT__ 8
433// AARCH64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
434// AARCH64-NETBSD:#define __DBL_DIG__ 15
435// AARCH64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
436// AARCH64-NETBSD:#define __DBL_HAS_DENORM__ 1
437// AARCH64-NETBSD:#define __DBL_HAS_INFINITY__ 1
438// AARCH64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
439// AARCH64-NETBSD:#define __DBL_MANT_DIG__ 53
440// AARCH64-NETBSD:#define __DBL_MAX_10_EXP__ 308
441// AARCH64-NETBSD:#define __DBL_MAX_EXP__ 1024
442// AARCH64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
443// AARCH64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
444// AARCH64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
445// AARCH64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
446// AARCH64-NETBSD:#define __DECIMAL_DIG__ 36
447// AARCH64-NETBSD:#define __ELF__ 1
448// AARCH64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
449// AARCH64-NETBSD:#define __FLT_DIG__ 6
450// AARCH64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
451// AARCH64-NETBSD:#define __FLT_EVAL_METHOD__ 0
452// AARCH64-NETBSD:#define __FLT_HAS_DENORM__ 1
453// AARCH64-NETBSD:#define __FLT_HAS_INFINITY__ 1
454// AARCH64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
455// AARCH64-NETBSD:#define __FLT_MANT_DIG__ 24
456// AARCH64-NETBSD:#define __FLT_MAX_10_EXP__ 38
457// AARCH64-NETBSD:#define __FLT_MAX_EXP__ 128
458// AARCH64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
459// AARCH64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
460// AARCH64-NETBSD:#define __FLT_MIN_EXP__ (-125)
461// AARCH64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
462// AARCH64-NETBSD:#define __FLT_RADIX__ 2
463// AARCH64-NETBSD:#define __INT16_TYPE__ short
464// AARCH64-NETBSD:#define __INT32_TYPE__ int
Kevin Qinad64f6d2014-02-24 02:45:03 +0000465// AARCH64-NETBSD:#define __INT64_C_SUFFIX__ L
466// AARCH64-NETBSD:#define __INT64_TYPE__ long int
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000467// AARCH64-NETBSD:#define __INT8_TYPE__ char
Kevin Qinad64f6d2014-02-24 02:45:03 +0000468// AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
469// AARCH64-NETBSD:#define __INTMAX_TYPE__ long int
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000470// AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64
471// AARCH64-NETBSD:#define __INTPTR_TYPE__ long int
472// AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64
473// AARCH64-NETBSD:#define __INT_MAX__ 2147483647
474// AARCH64-NETBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
475// AARCH64-NETBSD:#define __LDBL_DIG__ 33
476// AARCH64-NETBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
477// AARCH64-NETBSD:#define __LDBL_HAS_DENORM__ 1
478// AARCH64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
479// AARCH64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
480// AARCH64-NETBSD:#define __LDBL_MANT_DIG__ 113
481// AARCH64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
482// AARCH64-NETBSD:#define __LDBL_MAX_EXP__ 16384
483// AARCH64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
484// AARCH64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
485// AARCH64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
486// AARCH64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
487// AARCH64-NETBSD:#define __LITTLE_ENDIAN__ 1
488// AARCH64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
489// AARCH64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
490// AARCH64-NETBSD:#define __LP64__ 1
491// AARCH64-NETBSD:#define __NetBSD__ 1
492// AARCH64-NETBSD:#define __POINTER_WIDTH__ 64
493// AARCH64-NETBSD:#define __PTRDIFF_TYPE__ long int
494// AARCH64-NETBSD:#define __PTRDIFF_WIDTH__ 64
495// AARCH64-NETBSD:#define __SCHAR_MAX__ 127
496// AARCH64-NETBSD:#define __SHRT_MAX__ 32767
497// AARCH64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
498// AARCH64-NETBSD:#define __SIZEOF_DOUBLE__ 8
499// AARCH64-NETBSD:#define __SIZEOF_FLOAT__ 4
500// AARCH64-NETBSD:#define __SIZEOF_INT__ 4
501// AARCH64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
502// AARCH64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
503// AARCH64-NETBSD:#define __SIZEOF_LONG__ 8
504// AARCH64-NETBSD:#define __SIZEOF_POINTER__ 8
505// AARCH64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
506// AARCH64-NETBSD:#define __SIZEOF_SHORT__ 2
507// AARCH64-NETBSD:#define __SIZEOF_SIZE_T__ 8
508// AARCH64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
509// AARCH64-NETBSD:#define __SIZEOF_WINT_T__ 4
510// AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
511// AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int
512// AARCH64-NETBSD:#define __SIZE_WIDTH__ 64
Kevin Qinad64f6d2014-02-24 02:45:03 +0000513// AARCH64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000514// AARCH64-NETBSD:#define __USER_LABEL_PREFIX__
515// AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647
516// AARCH64-NETBSD:#define __WCHAR_TYPE__ int
517// AARCH64-NETBSD:#define __WCHAR_WIDTH__ 32
518// AARCH64-NETBSD:#define __WINT_TYPE__ int
519// AARCH64-NETBSD:#define __WINT_WIDTH__ 32
520// AARCH64-NETBSD:#define __aarch64__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000521
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000522// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -check-prefix ARM %s
Chris Lattnere963d092009-10-29 04:55:36 +0000523//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +0000524// ARM-NOT:#define _LP64
Chris Lattnere963d092009-10-29 04:55:36 +0000525// ARM:#define __APCS_32__ 1
526// ARM:#define __ARMEL__ 1
Daniel Dunbaracde99e2009-12-18 18:42:37 +0000527// ARM:#define __ARM_ARCH_6J__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +0000528// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +0000529// ARM:#define __CHAR16_TYPE__ unsigned short
530// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +0000531// ARM:#define __CHAR_BIT__ 8
532// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
533// ARM:#define __DBL_DIG__ 15
534// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
535// ARM:#define __DBL_HAS_DENORM__ 1
536// ARM:#define __DBL_HAS_INFINITY__ 1
537// ARM:#define __DBL_HAS_QUIET_NAN__ 1
538// ARM:#define __DBL_MANT_DIG__ 53
539// ARM:#define __DBL_MAX_10_EXP__ 308
540// ARM:#define __DBL_MAX_EXP__ 1024
541// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
542// ARM:#define __DBL_MIN_10_EXP__ (-307)
543// ARM:#define __DBL_MIN_EXP__ (-1021)
544// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
545// ARM:#define __DECIMAL_DIG__ 17
546// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
547// ARM:#define __FLT_DIG__ 6
548// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
549// ARM:#define __FLT_EVAL_METHOD__ 0
550// ARM:#define __FLT_HAS_DENORM__ 1
551// ARM:#define __FLT_HAS_INFINITY__ 1
552// ARM:#define __FLT_HAS_QUIET_NAN__ 1
553// ARM:#define __FLT_MANT_DIG__ 24
554// ARM:#define __FLT_MAX_10_EXP__ 38
555// ARM:#define __FLT_MAX_EXP__ 128
556// ARM:#define __FLT_MAX__ 3.40282347e+38F
557// ARM:#define __FLT_MIN_10_EXP__ (-37)
558// ARM:#define __FLT_MIN_EXP__ (-125)
559// ARM:#define __FLT_MIN__ 1.17549435e-38F
560// ARM:#define __FLT_RADIX__ 2
561// ARM:#define __INT16_TYPE__ short
562// ARM:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +0000563// ARM:#define __INT64_C_SUFFIX__ LL
Chris Lattnere963d092009-10-29 04:55:36 +0000564// ARM:#define __INT64_TYPE__ long long int
565// ARM:#define __INT8_TYPE__ char
566// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +0000567// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +0000568// ARM:#define __INTMAX_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +0000569// ARM:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +0000570// ARM:#define __INTPTR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +0000571// ARM:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000572// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +0000573// ARM:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000574// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +0000575// ARM:#define __LDBL_HAS_DENORM__ 1
576// ARM:#define __LDBL_HAS_INFINITY__ 1
577// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
578// ARM:#define __LDBL_MANT_DIG__ 53
579// ARM:#define __LDBL_MAX_10_EXP__ 308
580// ARM:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000581// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +0000582// ARM:#define __LDBL_MIN_10_EXP__ (-307)
583// ARM:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000584// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +0000585// ARM:#define __LITTLE_ENDIAN__ 1
586// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
587// ARM:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +0000588// ARM-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +0000589// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +0000590// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +0000591// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +0000592// ARM:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +0000593// ARM:#define __SCHAR_MAX__ 127
594// ARM:#define __SHRT_MAX__ 32767
Ken Dyckadc85112009-11-22 15:41:04 +0000595// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +0000596// ARM:#define __SIZEOF_DOUBLE__ 8
597// ARM:#define __SIZEOF_FLOAT__ 4
598// ARM:#define __SIZEOF_INT__ 4
599// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
600// ARM:#define __SIZEOF_LONG_LONG__ 8
601// ARM:#define __SIZEOF_LONG__ 4
602// ARM:#define __SIZEOF_POINTER__ 4
603// ARM:#define __SIZEOF_PTRDIFF_T__ 4
604// ARM:#define __SIZEOF_SHORT__ 2
605// ARM:#define __SIZEOF_SIZE_T__ 4
606// ARM:#define __SIZEOF_WCHAR_T__ 4
607// ARM:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +0000608// ARM:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +0000609// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +0000610// ARM:#define __SIZE_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +0000611// ARM:#define __THUMB_INTERWORK__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +0000612// ARM:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +0000613// ARM:#define __USER_LABEL_PREFIX__ _
James Molloyc445be42011-11-23 13:35:08 +0000614// ARM:#define __WCHAR_MAX__ 4294967295U
615// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck0138b9e2009-11-19 15:47:58 +0000616// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +0000617// ARM:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +0000618// ARM:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +0000619// ARM:#define __arm 1
620// ARM:#define __arm__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000621
622// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi -target-feature +soft-float -target-feature +soft-float-abi < /dev/null | FileCheck -check-prefix ARMEABISOFTFP %s
623//
624// ARM-NOT:#define _LP64
625// ARMEABISOFTFP:#define __APCS_32__ 1
626// ARMEABISOFTFP:#define __ARMEL__ 1
627// ARMEABISOFTFP:#define __ARM_ARCH 6
628// ARMEABISOFTFP:#define __ARM_ARCH_6J__ 1
629// ARMEABISOFTFP:#define __ARM_EABI__ 1
630// ARMEABISOFTFP:#define __ARM_PCS 1
631// ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
632// ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
633// ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
634// ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
635// ARMEABISOFTFP:#define __CHAR_BIT__ 8
636// ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
637// ARMEABISOFTFP:#define __DBL_DIG__ 15
638// ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
639// ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
640// ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
641// ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
642// ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
643// ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
644// ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
645// ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
646// ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
647// ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
648// ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
649// ARMEABISOFTFP:#define __DECIMAL_DIG__ 17
650// ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
651// ARMEABISOFTFP:#define __FLT_DIG__ 6
652// ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
653// ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
654// ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
655// ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
656// ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
657// ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
658// ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
659// ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
660// ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
661// ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
662// ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
663// ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
664// ARMEABISOFTFP:#define __FLT_RADIX__ 2
665// ARMEABISOFTFP:#define __INT16_TYPE__ short
666// ARMEABISOFTFP:#define __INT32_TYPE__ int
667// ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
668// ARMEABISOFTFP:#define __INT64_TYPE__ long long int
669// ARMEABISOFTFP:#define __INT8_TYPE__ char
670// ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
671// ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
672// ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
673// ARMEABISOFTFP:#define __INTPTR_TYPE__ long int
674// ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
675// ARMEABISOFTFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000676// ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000677// ARMEABISOFTFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000678// ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000679// ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
680// ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
681// ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
682// ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
683// ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
684// ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000685// ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000686// ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
687// ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000688// ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000689// ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
690// ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
691// ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
692// ARMEABISOFTFP-NOT:#define __LP64__
693// ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
694// ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
695// ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
696// ARMEABISOFTFP:#define __REGISTER_PREFIX__
697// ARMEABISOFTFP:#define __SCHAR_MAX__ 127
698// ARMEABISOFTFP:#define __SHRT_MAX__ 32767
699// ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
700// ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
701// ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
702// ARMEABISOFTFP:#define __SIZEOF_INT__ 4
703// ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
704// ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
705// ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
706// ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
707// ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
708// ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
709// ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
710// ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
711// ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +0000712// ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000713// ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
714// ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
715// ARMEABISOFTFP:#define __SOFTFP__ 1
716// ARMEABISOFTFP:#define __THUMB_INTERWORK__ 1
717// ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
718// ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
719// ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
720// ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
721// ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
722// ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
723// ARMEABISOFTFP:#define __WINT_WIDTH__ 32
724// ARMEABISOFTFP:#define __arm 1
725// ARMEABISOFTFP:#define __arm__ 1
726
727// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi < /dev/null | FileCheck -check-prefix ARMEABIHARDFP %s
728//
729// ARM-NOT:#define _LP64
730// ARMEABIHARDFP:#define __APCS_32__ 1
731// ARMEABIHARDFP:#define __ARMEL__ 1
732// ARMEABIHARDFP:#define __ARM_ARCH 6
733// ARMEABIHARDFP:#define __ARM_ARCH_6J__ 1
734// ARMEABIHARDFP:#define __ARM_EABI__ 1
735// ARMEABIHARDFP:#define __ARM_PCS 1
736// ARMEABIHARDFP:#define __ARM_PCS_VFP 1
737// ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
738// ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
739// ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
740// ARMEABIHARDFP:#define __CHAR_BIT__ 8
741// ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
742// ARMEABIHARDFP:#define __DBL_DIG__ 15
743// ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
744// ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
745// ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
746// ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
747// ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
748// ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
749// ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
750// ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
751// ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
752// ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
753// ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
754// ARMEABIHARDFP:#define __DECIMAL_DIG__ 17
755// ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
756// ARMEABIHARDFP:#define __FLT_DIG__ 6
757// ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
758// ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
759// ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
760// ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
761// ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
762// ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
763// ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
764// ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
765// ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
766// ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
767// ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
768// ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
769// ARMEABIHARDFP:#define __FLT_RADIX__ 2
770// ARMEABIHARDFP:#define __INT16_TYPE__ short
771// ARMEABIHARDFP:#define __INT32_TYPE__ int
772// ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
773// ARMEABIHARDFP:#define __INT64_TYPE__ long long int
774// ARMEABIHARDFP:#define __INT8_TYPE__ char
775// ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
776// ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
777// ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
778// ARMEABIHARDFP:#define __INTPTR_TYPE__ long int
779// ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
780// ARMEABIHARDFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000781// ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000782// ARMEABIHARDFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000783// ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000784// ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
785// ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
786// ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
787// ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
788// ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
789// ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000790// ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000791// ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
792// ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +0000793// ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000794// ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
795// ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
796// ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
797// ARMEABIHARDFP-NOT:#define __LP64__
798// ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
799// ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
800// ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
801// ARMEABIHARDFP:#define __REGISTER_PREFIX__
802// ARMEABIHARDFP:#define __SCHAR_MAX__ 127
803// ARMEABIHARDFP:#define __SHRT_MAX__ 32767
804// ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
805// ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
806// ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
807// ARMEABIHARDFP:#define __SIZEOF_INT__ 4
808// ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
809// ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
810// ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
811// ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
812// ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
813// ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
814// ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
815// ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
816// ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +0000817// ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +0000818// ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
819// ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
820// ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
821// ARMEABIHARDFP:#define __THUMB_INTERWORK__ 1
822// ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
823// ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
824// ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
825// ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
826// ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
827// ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
828// ARMEABIHARDFP:#define __WINT_WIDTH__ 32
829// ARMEABIHARDFP:#define __arm 1
830// ARMEABIHARDFP:#define __arm__ 1
831
Tim Northovere77f78c2013-11-11 19:11:22 +0000832// RUN: %clang -target arm -arch armv7s -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
833// RUN: %clang -target arm -arch armv6m -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
834// RUN: %clang -target arm -arch armv7m -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
835// RUN: %clang -target arm -arch armv7em -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
836// RUN: %clang -target thumbv7-apple-darwin-eabi -arch armv7 -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-DARWIN-NO-EABI %s
837// ARM-DARWIN-NO-EABI-NOT: #define __ARM_EABI__ 1
838
Silviu Barangaf9671dd2013-10-21 10:54:53 +0000839// Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
840
841// RUN: %clang -target arm -mhwdiv=arm -x c -E -dM %s -o - | FileCheck --check-prefix=ARMHWDIV-ARM %s
842// ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
843
844// RUN: %clang -target arm -mthumb -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck --check-prefix=THUMBHWDIV-THUMB %s
845// THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
846
847// RUN: %clang -target arm -x c -E -dM %s -o - | FileCheck --check-prefix=ARM-FALSE %s
848// ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
849
850// RUN: %clang -target arm -mthumb -x c -E -dM %s -o - | FileCheck --check-prefix=THUMB-FALSE %s
851// THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
852
853// RUN: %clang -target arm -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck --check-prefix=THUMBHWDIV-ARM-FALSE %s
854// THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
855
856// RUN: %clang -target arm -mthumb -mhwdiv=arm -x c -E -dM %s -o - | FileCheck --check-prefix=ARMHWDIV-THUMB-FALSE %s
857// ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
858
Weiming Zhaofb5c21a2014-01-22 18:42:13 +0000859// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv8-none-none < /dev/null | FileCheck -check-prefix ARMv8 %s
860// ARMv8: #define __THUMB_INTERWORK__ 1
861// ARMv8-NOT: #define __thumb2__
862
863// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv8 < /dev/null | FileCheck -check-prefix Thumbv8 %s
864// Thumbv8: #define __THUMB_INTERWORK__ 1
865// Thumbv8: #define __thumb2__
866
867// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv5 < /dev/null | FileCheck -check-prefix Thumbv5 %s
868// Thumbv5: #define __THUMB_INTERWORK__ 1
869// Thumbv5-NOT: #define __thumb2__
870
871// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv6t2 < /dev/null | FileCheck -check-prefix Thumbv6t2 %s
872// Thumbv6t2: #define __THUMB_INTERWORK__ 1
873// Thumbv6t2: #define __thumb2__
874
875// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7 < /dev/null | FileCheck -check-prefix Thumbv7 %s
876// Thumbv7: #define __THUMB_INTERWORK__ 1
877// Thumbv7: #define __thumb2__
878
Chris Lattnere963d092009-10-29 04:55:36 +0000879//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +0000880// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -check-prefix I386 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000881//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +0000882// I386-NOT:#define _LP64
Dylan Noblesmith673728f2012-07-27 18:34:31 +0000883// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +0000884// I386:#define __CHAR16_TYPE__ unsigned short
885// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +0000886// I386:#define __CHAR_BIT__ 8
887// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
888// I386:#define __DBL_DIG__ 15
889// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
890// I386:#define __DBL_HAS_DENORM__ 1
891// I386:#define __DBL_HAS_INFINITY__ 1
892// I386:#define __DBL_HAS_QUIET_NAN__ 1
893// I386:#define __DBL_MANT_DIG__ 53
894// I386:#define __DBL_MAX_10_EXP__ 308
895// I386:#define __DBL_MAX_EXP__ 1024
896// I386:#define __DBL_MAX__ 1.7976931348623157e+308
897// I386:#define __DBL_MIN_10_EXP__ (-307)
898// I386:#define __DBL_MIN_EXP__ (-1021)
899// I386:#define __DBL_MIN__ 2.2250738585072014e-308
900// I386:#define __DECIMAL_DIG__ 21
901// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
902// I386:#define __FLT_DIG__ 6
903// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramercf501472011-12-28 15:47:06 +0000904// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnere963d092009-10-29 04:55:36 +0000905// I386:#define __FLT_HAS_DENORM__ 1
906// I386:#define __FLT_HAS_INFINITY__ 1
907// I386:#define __FLT_HAS_QUIET_NAN__ 1
908// I386:#define __FLT_MANT_DIG__ 24
909// I386:#define __FLT_MAX_10_EXP__ 38
910// I386:#define __FLT_MAX_EXP__ 128
911// I386:#define __FLT_MAX__ 3.40282347e+38F
912// I386:#define __FLT_MIN_10_EXP__ (-37)
913// I386:#define __FLT_MIN_EXP__ (-125)
914// I386:#define __FLT_MIN__ 1.17549435e-38F
915// I386:#define __FLT_RADIX__ 2
916// I386:#define __INT16_TYPE__ short
917// I386:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +0000918// I386:#define __INT64_C_SUFFIX__ LL
Chris Lattnere963d092009-10-29 04:55:36 +0000919// I386:#define __INT64_TYPE__ long long int
920// I386:#define __INT8_TYPE__ char
921// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +0000922// I386:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +0000923// I386:#define __INTMAX_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +0000924// I386:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +0000925// I386:#define __INTPTR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +0000926// I386:#define __INT_MAX__ 2147483647
927// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
928// I386:#define __LDBL_DIG__ 18
929// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
930// I386:#define __LDBL_HAS_DENORM__ 1
931// I386:#define __LDBL_HAS_INFINITY__ 1
932// I386:#define __LDBL_HAS_QUIET_NAN__ 1
933// I386:#define __LDBL_MANT_DIG__ 64
934// I386:#define __LDBL_MAX_10_EXP__ 4932
935// I386:#define __LDBL_MAX_EXP__ 16384
936// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
937// I386:#define __LDBL_MIN_10_EXP__ (-4931)
938// I386:#define __LDBL_MIN_EXP__ (-16381)
939// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
940// I386:#define __LITTLE_ENDIAN__ 1
941// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
942// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +0000943// I386-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +0000944// I386:#define __NO_MATH_INLINES 1
945// I386:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +0000946// I386:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +0000947// I386:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +0000948// I386:#define __REGISTER_PREFIX__
949// I386:#define __SCHAR_MAX__ 127
950// I386:#define __SHRT_MAX__ 32767
Ken Dyckadc85112009-11-22 15:41:04 +0000951// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +0000952// I386:#define __SIZEOF_DOUBLE__ 8
953// I386:#define __SIZEOF_FLOAT__ 4
954// I386:#define __SIZEOF_INT__ 4
955// I386:#define __SIZEOF_LONG_DOUBLE__ 12
956// I386:#define __SIZEOF_LONG_LONG__ 8
957// I386:#define __SIZEOF_LONG__ 4
958// I386:#define __SIZEOF_POINTER__ 4
959// I386:#define __SIZEOF_PTRDIFF_T__ 4
960// I386:#define __SIZEOF_SHORT__ 2
961// I386:#define __SIZEOF_SIZE_T__ 4
962// I386:#define __SIZEOF_WCHAR_T__ 4
963// I386:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +0000964// I386:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +0000965// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +0000966// I386:#define __SIZE_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +0000967// I386:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +0000968// I386:#define __USER_LABEL_PREFIX__ _
969// I386:#define __WCHAR_MAX__ 2147483647
970// I386:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +0000971// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +0000972// I386:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +0000973// I386:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +0000974// I386:#define __i386 1
975// I386:#define __i386__ 1
Chris Lattnere963d092009-10-29 04:55:36 +0000976// I386:#define i386 1
977//
Benjamin Kramercf501472011-12-28 15:47:06 +0000978// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -check-prefix I386-LINUX %s
Douglas Gregore6d6e512011-01-12 21:19:25 +0000979//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +0000980// I386-LINUX-NOT:#define _LP64
Dylan Noblesmith673728f2012-07-27 18:34:31 +0000981// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +0000982// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
983// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
984// I386-LINUX:#define __CHAR_BIT__ 8
985// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
986// I386-LINUX:#define __DBL_DIG__ 15
987// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
988// I386-LINUX:#define __DBL_HAS_DENORM__ 1
989// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
990// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
991// I386-LINUX:#define __DBL_MANT_DIG__ 53
992// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
993// I386-LINUX:#define __DBL_MAX_EXP__ 1024
994// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
995// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
996// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
997// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
998// I386-LINUX:#define __DECIMAL_DIG__ 21
999// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1000// I386-LINUX:#define __FLT_DIG__ 6
1001// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
1002// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
1003// I386-LINUX:#define __FLT_HAS_DENORM__ 1
1004// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
1005// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
1006// I386-LINUX:#define __FLT_MANT_DIG__ 24
1007// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
1008// I386-LINUX:#define __FLT_MAX_EXP__ 128
1009// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
1010// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
1011// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
1012// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
1013// I386-LINUX:#define __FLT_RADIX__ 2
1014// I386-LINUX:#define __INT16_TYPE__ short
1015// I386-LINUX:#define __INT32_TYPE__ int
1016// I386-LINUX:#define __INT64_C_SUFFIX__ LL
1017// I386-LINUX:#define __INT64_TYPE__ long long int
1018// I386-LINUX:#define __INT8_TYPE__ char
1019// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
1020// I386-LINUX:#define __INTMAX_TYPE__ long long int
1021// I386-LINUX:#define __INTMAX_WIDTH__ 64
1022// I386-LINUX:#define __INTPTR_TYPE__ int
1023// I386-LINUX:#define __INTPTR_WIDTH__ 32
1024// I386-LINUX:#define __INT_MAX__ 2147483647
1025// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
1026// I386-LINUX:#define __LDBL_DIG__ 18
1027// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
1028// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
1029// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
1030// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
1031// I386-LINUX:#define __LDBL_MANT_DIG__ 64
1032// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
1033// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
1034// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
1035// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
1036// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
1037// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
1038// I386-LINUX:#define __LITTLE_ENDIAN__ 1
1039// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
1040// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001041// I386-LINUX-NOT:#define __LP64__
Douglas Gregore6d6e512011-01-12 21:19:25 +00001042// I386-LINUX:#define __NO_MATH_INLINES 1
1043// I386-LINUX:#define __POINTER_WIDTH__ 32
1044// I386-LINUX:#define __PTRDIFF_TYPE__ int
1045// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
1046// I386-LINUX:#define __REGISTER_PREFIX__
1047// I386-LINUX:#define __SCHAR_MAX__ 127
1048// I386-LINUX:#define __SHRT_MAX__ 32767
1049// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
1050// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
1051// I386-LINUX:#define __SIZEOF_FLOAT__ 4
1052// I386-LINUX:#define __SIZEOF_INT__ 4
1053// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
1054// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
1055// I386-LINUX:#define __SIZEOF_LONG__ 4
1056// I386-LINUX:#define __SIZEOF_POINTER__ 4
1057// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
1058// I386-LINUX:#define __SIZEOF_SHORT__ 2
1059// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
1060// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
1061// I386-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001062// I386-LINUX:#define __SIZE_MAX__ 4294967295U
Douglas Gregore6d6e512011-01-12 21:19:25 +00001063// I386-LINUX:#define __SIZE_TYPE__ unsigned int
1064// I386-LINUX:#define __SIZE_WIDTH__ 32
1065// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
1066// I386-LINUX:#define __USER_LABEL_PREFIX__
1067// I386-LINUX:#define __WCHAR_MAX__ 2147483647
1068// I386-LINUX:#define __WCHAR_TYPE__ int
1069// I386-LINUX:#define __WCHAR_WIDTH__ 32
1070// I386-LINUX:#define __WINT_TYPE__ unsigned int
1071// I386-LINUX:#define __WINT_WIDTH__ 32
1072// I386-LINUX:#define __i386 1
1073// I386-LINUX:#define __i386__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00001074// I386-LINUX:#define i386 1
1075//
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00001076// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd < /dev/null | FileCheck -check-prefix I386-NETBSD %s
1077//
1078// I386-NETBSD-NOT:#define _LP64
1079// I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1080// I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
1081// I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
1082// I386-NETBSD:#define __CHAR_BIT__ 8
1083// I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1084// I386-NETBSD:#define __DBL_DIG__ 15
1085// I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
1086// I386-NETBSD:#define __DBL_HAS_DENORM__ 1
1087// I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
1088// I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
1089// I386-NETBSD:#define __DBL_MANT_DIG__ 53
1090// I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
1091// I386-NETBSD:#define __DBL_MAX_EXP__ 1024
1092// I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
1093// I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
1094// I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
1095// I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
1096// I386-NETBSD:#define __DECIMAL_DIG__ 21
1097// I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1098// I386-NETBSD:#define __FLT_DIG__ 6
1099// I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
1100// I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
1101// I386-NETBSD:#define __FLT_HAS_DENORM__ 1
1102// I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
1103// I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
1104// I386-NETBSD:#define __FLT_MANT_DIG__ 24
1105// I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
1106// I386-NETBSD:#define __FLT_MAX_EXP__ 128
1107// I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
1108// I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
1109// I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
1110// I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
1111// I386-NETBSD:#define __FLT_RADIX__ 2
1112// I386-NETBSD:#define __INT16_TYPE__ short
1113// I386-NETBSD:#define __INT32_TYPE__ int
1114// I386-NETBSD:#define __INT64_C_SUFFIX__ LL
1115// I386-NETBSD:#define __INT64_TYPE__ long long int
1116// I386-NETBSD:#define __INT8_TYPE__ char
1117// I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
1118// I386-NETBSD:#define __INTMAX_TYPE__ long long int
1119// I386-NETBSD:#define __INTMAX_WIDTH__ 64
1120// I386-NETBSD:#define __INTPTR_TYPE__ int
1121// I386-NETBSD:#define __INTPTR_WIDTH__ 32
1122// I386-NETBSD:#define __INT_MAX__ 2147483647
1123// I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
1124// I386-NETBSD:#define __LDBL_DIG__ 18
1125// I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
1126// I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
1127// I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
1128// I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
1129// I386-NETBSD:#define __LDBL_MANT_DIG__ 64
1130// I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
1131// I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
1132// I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
1133// I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
1134// I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
1135// I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
1136// I386-NETBSD:#define __LITTLE_ENDIAN__ 1
1137// I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
1138// I386-NETBSD:#define __LONG_MAX__ 2147483647L
1139// I386-NETBSD-NOT:#define __LP64__
1140// I386-NETBSD:#define __NO_MATH_INLINES 1
1141// I386-NETBSD:#define __POINTER_WIDTH__ 32
1142// I386-NETBSD:#define __PTRDIFF_TYPE__ int
1143// I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
1144// I386-NETBSD:#define __REGISTER_PREFIX__
1145// I386-NETBSD:#define __SCHAR_MAX__ 127
1146// I386-NETBSD:#define __SHRT_MAX__ 32767
1147// I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
1148// I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
1149// I386-NETBSD:#define __SIZEOF_FLOAT__ 4
1150// I386-NETBSD:#define __SIZEOF_INT__ 4
1151// I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
1152// I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
1153// I386-NETBSD:#define __SIZEOF_LONG__ 4
1154// I386-NETBSD:#define __SIZEOF_POINTER__ 4
1155// I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
1156// I386-NETBSD:#define __SIZEOF_SHORT__ 2
1157// I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
1158// I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
1159// I386-NETBSD:#define __SIZEOF_WINT_T__ 4
1160// I386-NETBSD:#define __SIZE_MAX__ 4294967295U
1161// I386-NETBSD:#define __SIZE_TYPE__ unsigned int
1162// I386-NETBSD:#define __SIZE_WIDTH__ 32
1163// I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
1164// I386-NETBSD:#define __USER_LABEL_PREFIX__
1165// I386-NETBSD:#define __WCHAR_MAX__ 2147483647
1166// I386-NETBSD:#define __WCHAR_TYPE__ int
1167// I386-NETBSD:#define __WCHAR_WIDTH__ 32
1168// I386-NETBSD:#define __WINT_TYPE__ int
1169// I386-NETBSD:#define __WINT_WIDTH__ 32
1170// I386-NETBSD:#define __i386 1
1171// I386-NETBSD:#define __i386__ 1
1172// I386-NETBSD:#define i386 1
1173//
1174// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd -target-feature +sse2 < /dev/null | FileCheck -check-prefix I386-NETBSD-SSE %s
1175// I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
1176// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd6 < /dev/null | FileCheck -check-prefix I386-NETBSD6 %s
1177// I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
1178// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd6 -target-feature +sse2 < /dev/null | FileCheck -check-prefix I386-NETBSD6-SSE %s
1179// I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
1180
1181//
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001182// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -check-prefix MIPS32BE %s
1183//
1184// MIPS32BE:#define MIPSEB 1
1185// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001186// MIPS32BE-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001187// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00001188// MIPS32BE:#define _MIPS_ARCH "mips32r2"
1189// MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001190// MIPS32BE:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001191// MIPS32BE:#define _MIPS_SIM _ABIO32
1192// MIPS32BE:#define _MIPS_SZINT 32
1193// MIPS32BE:#define _MIPS_SZLONG 32
1194// MIPS32BE:#define _MIPS_SZPTR 32
Robert Lytton2c942c62014-03-10 12:06:29 +00001195// MIPS32BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001196// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001197// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
1198// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
1199// MIPS32BE:#define __CHAR_BIT__ 8
1200// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
1201// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1202// MIPS32BE:#define __DBL_DIG__ 15
1203// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1204// MIPS32BE:#define __DBL_HAS_DENORM__ 1
1205// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
1206// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
1207// MIPS32BE:#define __DBL_MANT_DIG__ 53
1208// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
1209// MIPS32BE:#define __DBL_MAX_EXP__ 1024
1210// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
1211// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
1212// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
1213// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
1214// MIPS32BE:#define __DECIMAL_DIG__ 17
1215// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1216// MIPS32BE:#define __FLT_DIG__ 6
1217// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
1218// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
1219// MIPS32BE:#define __FLT_HAS_DENORM__ 1
1220// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
1221// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
1222// MIPS32BE:#define __FLT_MANT_DIG__ 24
1223// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
1224// MIPS32BE:#define __FLT_MAX_EXP__ 128
1225// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
1226// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
1227// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
1228// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
1229// MIPS32BE:#define __FLT_RADIX__ 2
1230// MIPS32BE:#define __INT16_TYPE__ short
1231// MIPS32BE:#define __INT32_TYPE__ int
1232// MIPS32BE:#define __INT64_C_SUFFIX__ LL
1233// MIPS32BE:#define __INT64_TYPE__ long long int
1234// MIPS32BE:#define __INT8_TYPE__ char
1235// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
1236// MIPS32BE:#define __INTMAX_TYPE__ long long int
1237// MIPS32BE:#define __INTMAX_WIDTH__ 64
1238// MIPS32BE:#define __INTPTR_TYPE__ long int
1239// MIPS32BE:#define __INTPTR_WIDTH__ 32
1240// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001241// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001242// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001243// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001244// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
1245// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
1246// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
1247// MIPS32BE:#define __LDBL_MANT_DIG__ 53
1248// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
1249// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001250// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001251// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
1252// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001253// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001254// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1255// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001256// MIPS32BE-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001257// MIPS32BE:#define __MIPSEB 1
1258// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001259// MIPS32BE:#define __POINTER_WIDTH__ 32
1260// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
1261// MIPS32BE:#define __PTRDIFF_TYPE__ int
1262// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
1263// MIPS32BE:#define __REGISTER_PREFIX__
1264// MIPS32BE:#define __SCHAR_MAX__ 127
1265// MIPS32BE:#define __SHRT_MAX__ 32767
1266// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
1267// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
1268// MIPS32BE:#define __SIZEOF_FLOAT__ 4
1269// MIPS32BE:#define __SIZEOF_INT__ 4
1270// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
1271// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
1272// MIPS32BE:#define __SIZEOF_LONG__ 4
1273// MIPS32BE:#define __SIZEOF_POINTER__ 4
1274// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
1275// MIPS32BE:#define __SIZEOF_SHORT__ 2
1276// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
1277// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
1278// MIPS32BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001279// MIPS32BE:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001280// MIPS32BE:#define __SIZE_TYPE__ unsigned int
1281// MIPS32BE:#define __SIZE_WIDTH__ 32
1282// MIPS32BE:#define __STDC_HOSTED__ 0
1283// MIPS32BE:#define __STDC_VERSION__ 199901L
1284// MIPS32BE:#define __STDC__ 1
1285// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
1286// MIPS32BE:#define __USER_LABEL_PREFIX__ _
1287// MIPS32BE:#define __WCHAR_MAX__ 2147483647
1288// MIPS32BE:#define __WCHAR_TYPE__ int
1289// MIPS32BE:#define __WCHAR_WIDTH__ 32
1290// MIPS32BE:#define __WINT_TYPE__ int
1291// MIPS32BE:#define __WINT_WIDTH__ 32
1292// MIPS32BE:#define __clang__ 1
1293// MIPS32BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00001294// MIPS32BE:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001295// MIPS32BE:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001296// MIPS32BE:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001297// MIPS32BE:#define __mips_hard_float 1
1298// MIPS32BE:#define __mips_o32 1
1299// MIPS32BE:#define _mips 1
1300// MIPS32BE:#define mips 1
1301//
1302// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mipsel-none-none < /dev/null | FileCheck -check-prefix MIPS32EL %s
1303//
1304// MIPS32EL:#define MIPSEL 1
1305// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001306// MIPS32EL-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001307// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00001308// MIPS32EL:#define _MIPS_ARCH "mips32r2"
1309// MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001310// MIPS32EL:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001311// MIPS32EL:#define _MIPS_SIM _ABIO32
1312// MIPS32EL:#define _MIPS_SZINT 32
1313// MIPS32EL:#define _MIPS_SZLONG 32
1314// MIPS32EL:#define _MIPS_SZPTR 32
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001315// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001316// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
1317// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
1318// MIPS32EL:#define __CHAR_BIT__ 8
1319// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
1320// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1321// MIPS32EL:#define __DBL_DIG__ 15
1322// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
1323// MIPS32EL:#define __DBL_HAS_DENORM__ 1
1324// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
1325// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
1326// MIPS32EL:#define __DBL_MANT_DIG__ 53
1327// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
1328// MIPS32EL:#define __DBL_MAX_EXP__ 1024
1329// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
1330// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
1331// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
1332// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
1333// MIPS32EL:#define __DECIMAL_DIG__ 17
1334// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1335// MIPS32EL:#define __FLT_DIG__ 6
1336// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
1337// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
1338// MIPS32EL:#define __FLT_HAS_DENORM__ 1
1339// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
1340// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
1341// MIPS32EL:#define __FLT_MANT_DIG__ 24
1342// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
1343// MIPS32EL:#define __FLT_MAX_EXP__ 128
1344// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
1345// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
1346// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
1347// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
1348// MIPS32EL:#define __FLT_RADIX__ 2
1349// MIPS32EL:#define __INT16_TYPE__ short
1350// MIPS32EL:#define __INT32_TYPE__ int
1351// MIPS32EL:#define __INT64_C_SUFFIX__ LL
1352// MIPS32EL:#define __INT64_TYPE__ long long int
1353// MIPS32EL:#define __INT8_TYPE__ char
1354// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
1355// MIPS32EL:#define __INTMAX_TYPE__ long long int
1356// MIPS32EL:#define __INTMAX_WIDTH__ 64
1357// MIPS32EL:#define __INTPTR_TYPE__ long int
1358// MIPS32EL:#define __INTPTR_WIDTH__ 32
1359// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001360// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001361// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001362// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001363// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
1364// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
1365// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
1366// MIPS32EL:#define __LDBL_MANT_DIG__ 53
1367// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
1368// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001369// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001370// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
1371// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001372// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00001373// MIPS32EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001374// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
1375// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001376// MIPS32EL-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001377// MIPS32EL:#define __MIPSEL 1
1378// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001379// MIPS32EL:#define __POINTER_WIDTH__ 32
1380// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
1381// MIPS32EL:#define __PTRDIFF_TYPE__ int
1382// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
1383// MIPS32EL:#define __REGISTER_PREFIX__
1384// MIPS32EL:#define __SCHAR_MAX__ 127
1385// MIPS32EL:#define __SHRT_MAX__ 32767
1386// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
1387// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
1388// MIPS32EL:#define __SIZEOF_FLOAT__ 4
1389// MIPS32EL:#define __SIZEOF_INT__ 4
1390// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
1391// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
1392// MIPS32EL:#define __SIZEOF_LONG__ 4
1393// MIPS32EL:#define __SIZEOF_POINTER__ 4
1394// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
1395// MIPS32EL:#define __SIZEOF_SHORT__ 2
1396// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
1397// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
1398// MIPS32EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001399// MIPS32EL:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001400// MIPS32EL:#define __SIZE_TYPE__ unsigned int
1401// MIPS32EL:#define __SIZE_WIDTH__ 32
1402// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
1403// MIPS32EL:#define __USER_LABEL_PREFIX__ _
1404// MIPS32EL:#define __WCHAR_MAX__ 2147483647
1405// MIPS32EL:#define __WCHAR_TYPE__ int
1406// MIPS32EL:#define __WCHAR_WIDTH__ 32
1407// MIPS32EL:#define __WINT_TYPE__ int
1408// MIPS32EL:#define __WINT_WIDTH__ 32
1409// MIPS32EL:#define __clang__ 1
1410// MIPS32EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00001411// MIPS32EL:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001412// MIPS32EL:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001413// MIPS32EL:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001414// MIPS32EL:#define __mips_hard_float 1
1415// MIPS32EL:#define __mips_o32 1
1416// MIPS32EL:#define _mips 1
1417// MIPS32EL:#define mips 1
1418//
1419// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -check-prefix MIPS64BE %s
1420//
1421// MIPS64BE:#define MIPSEB 1
1422// MIPS64BE:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001423// MIPS64BE:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001424// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00001425// MIPS64BE:#define _MIPS_ARCH "mips64r2"
1426// MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001427// MIPS64BE:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001428// MIPS64BE:#define _MIPS_SIM _ABI64
1429// MIPS64BE:#define _MIPS_SZINT 32
1430// MIPS64BE:#define _MIPS_SZLONG 64
1431// MIPS64BE:#define _MIPS_SZPTR 64
Robert Lytton2c942c62014-03-10 12:06:29 +00001432// MIPS64BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001433// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001434// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
1435// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
1436// MIPS64BE:#define __CHAR_BIT__ 8
1437// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
1438// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1439// MIPS64BE:#define __DBL_DIG__ 15
1440// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1441// MIPS64BE:#define __DBL_HAS_DENORM__ 1
1442// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
1443// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
1444// MIPS64BE:#define __DBL_MANT_DIG__ 53
1445// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
1446// MIPS64BE:#define __DBL_MAX_EXP__ 1024
1447// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
1448// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
1449// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
1450// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
1451// MIPS64BE:#define __DECIMAL_DIG__ 36
1452// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1453// MIPS64BE:#define __FLT_DIG__ 6
1454// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
1455// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
1456// MIPS64BE:#define __FLT_HAS_DENORM__ 1
1457// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
1458// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
1459// MIPS64BE:#define __FLT_MANT_DIG__ 24
1460// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
1461// MIPS64BE:#define __FLT_MAX_EXP__ 128
1462// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
1463// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
1464// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
1465// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
1466// MIPS64BE:#define __FLT_RADIX__ 2
1467// MIPS64BE:#define __INT16_TYPE__ short
1468// MIPS64BE:#define __INT32_TYPE__ int
1469// MIPS64BE:#define __INT64_C_SUFFIX__ LL
1470// MIPS64BE:#define __INT64_TYPE__ long long int
1471// MIPS64BE:#define __INT8_TYPE__ char
1472// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807LL
1473// MIPS64BE:#define __INTMAX_TYPE__ long long int
1474// MIPS64BE:#define __INTMAX_WIDTH__ 64
1475// MIPS64BE:#define __INTPTR_TYPE__ long int
1476// MIPS64BE:#define __INTPTR_WIDTH__ 64
1477// MIPS64BE:#define __INT_MAX__ 2147483647
1478// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1479// MIPS64BE:#define __LDBL_DIG__ 33
1480// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1481// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
1482// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
1483// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
1484// MIPS64BE:#define __LDBL_MANT_DIG__ 113
1485// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
1486// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
1487// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1488// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
1489// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
1490// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1491// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1492// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001493// MIPS64BE:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001494// MIPS64BE:#define __MIPSEB 1
1495// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001496// MIPS64BE:#define __POINTER_WIDTH__ 64
1497// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
1498// MIPS64BE:#define __PTRDIFF_TYPE__ long int
1499// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
1500// MIPS64BE:#define __REGISTER_PREFIX__
1501// MIPS64BE:#define __SCHAR_MAX__ 127
1502// MIPS64BE:#define __SHRT_MAX__ 32767
1503// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
1504// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
1505// MIPS64BE:#define __SIZEOF_FLOAT__ 4
1506// MIPS64BE:#define __SIZEOF_INT__ 4
1507// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
1508// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
1509// MIPS64BE:#define __SIZEOF_LONG__ 8
1510// MIPS64BE:#define __SIZEOF_POINTER__ 8
1511// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
1512// MIPS64BE:#define __SIZEOF_SHORT__ 2
1513// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
1514// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
1515// MIPS64BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001516// MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001517// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
1518// MIPS64BE:#define __SIZE_WIDTH__ 64
1519// MIPS64BE:#define __UINTMAX_TYPE__ long long unsigned int
1520// MIPS64BE:#define __USER_LABEL_PREFIX__ _
1521// MIPS64BE:#define __WCHAR_MAX__ 2147483647
1522// MIPS64BE:#define __WCHAR_TYPE__ int
1523// MIPS64BE:#define __WCHAR_WIDTH__ 32
1524// MIPS64BE:#define __WINT_TYPE__ int
1525// MIPS64BE:#define __WINT_WIDTH__ 32
1526// MIPS64BE:#define __clang__ 1
1527// MIPS64BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00001528// MIPS64BE:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00001529// MIPS64BE:#define __mips64 1
1530// MIPS64BE:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001531// MIPS64BE:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001532// MIPS64BE:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001533// MIPS64BE:#define __mips_hard_float 1
1534// MIPS64BE:#define __mips_n64 1
1535// MIPS64BE:#define _mips 1
1536// MIPS64BE:#define mips 1
1537//
1538// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-none-none < /dev/null | FileCheck -check-prefix MIPS64EL %s
1539//
1540// MIPS64EL:#define MIPSEL 1
1541// MIPS64EL:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001542// MIPS64EL:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001543// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00001544// MIPS64EL:#define _MIPS_ARCH "mips64r2"
1545// MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001546// MIPS64EL:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001547// MIPS64EL:#define _MIPS_SIM _ABI64
1548// MIPS64EL:#define _MIPS_SZINT 32
1549// MIPS64EL:#define _MIPS_SZLONG 64
1550// MIPS64EL:#define _MIPS_SZPTR 64
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001551// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001552// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
1553// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
1554// MIPS64EL:#define __CHAR_BIT__ 8
1555// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
1556// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1557// MIPS64EL:#define __DBL_DIG__ 15
1558// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
1559// MIPS64EL:#define __DBL_HAS_DENORM__ 1
1560// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
1561// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
1562// MIPS64EL:#define __DBL_MANT_DIG__ 53
1563// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
1564// MIPS64EL:#define __DBL_MAX_EXP__ 1024
1565// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
1566// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
1567// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
1568// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
1569// MIPS64EL:#define __DECIMAL_DIG__ 36
1570// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1571// MIPS64EL:#define __FLT_DIG__ 6
1572// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
1573// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
1574// MIPS64EL:#define __FLT_HAS_DENORM__ 1
1575// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
1576// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
1577// MIPS64EL:#define __FLT_MANT_DIG__ 24
1578// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
1579// MIPS64EL:#define __FLT_MAX_EXP__ 128
1580// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
1581// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
1582// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
1583// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
1584// MIPS64EL:#define __FLT_RADIX__ 2
1585// MIPS64EL:#define __INT16_TYPE__ short
1586// MIPS64EL:#define __INT32_TYPE__ int
1587// MIPS64EL:#define __INT64_C_SUFFIX__ LL
1588// MIPS64EL:#define __INT64_TYPE__ long long int
1589// MIPS64EL:#define __INT8_TYPE__ char
1590// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807LL
1591// MIPS64EL:#define __INTMAX_TYPE__ long long int
1592// MIPS64EL:#define __INTMAX_WIDTH__ 64
1593// MIPS64EL:#define __INTPTR_TYPE__ long int
1594// MIPS64EL:#define __INTPTR_WIDTH__ 64
1595// MIPS64EL:#define __INT_MAX__ 2147483647
1596// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1597// MIPS64EL:#define __LDBL_DIG__ 33
1598// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1599// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
1600// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
1601// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
1602// MIPS64EL:#define __LDBL_MANT_DIG__ 113
1603// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
1604// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
1605// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1606// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
1607// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
1608// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
Robert Lytton2c942c62014-03-10 12:06:29 +00001609// MIPS64EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001610// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
1611// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001612// MIPS64EL:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001613// MIPS64EL:#define __MIPSEL 1
1614// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001615// MIPS64EL:#define __POINTER_WIDTH__ 64
1616// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
1617// MIPS64EL:#define __PTRDIFF_TYPE__ long int
1618// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
1619// MIPS64EL:#define __REGISTER_PREFIX__
1620// MIPS64EL:#define __SCHAR_MAX__ 127
1621// MIPS64EL:#define __SHRT_MAX__ 32767
1622// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
1623// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
1624// MIPS64EL:#define __SIZEOF_FLOAT__ 4
1625// MIPS64EL:#define __SIZEOF_INT__ 4
1626// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
1627// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
1628// MIPS64EL:#define __SIZEOF_LONG__ 8
1629// MIPS64EL:#define __SIZEOF_POINTER__ 8
1630// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
1631// MIPS64EL:#define __SIZEOF_SHORT__ 2
1632// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
1633// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
1634// MIPS64EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001635// MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001636// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
1637// MIPS64EL:#define __SIZE_WIDTH__ 64
1638// MIPS64EL:#define __UINTMAX_TYPE__ long long unsigned int
1639// MIPS64EL:#define __USER_LABEL_PREFIX__ _
1640// MIPS64EL:#define __WCHAR_MAX__ 2147483647
1641// MIPS64EL:#define __WCHAR_TYPE__ int
1642// MIPS64EL:#define __WCHAR_WIDTH__ 32
1643// MIPS64EL:#define __WINT_TYPE__ int
1644// MIPS64EL:#define __WINT_WIDTH__ 32
1645// MIPS64EL:#define __clang__ 1
1646// MIPS64EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00001647// MIPS64EL:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00001648// MIPS64EL:#define __mips64 1
1649// MIPS64EL:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001650// MIPS64EL:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001651// MIPS64EL:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00001652// MIPS64EL:#define __mips_hard_float 1
1653// MIPS64EL:#define __mips_n64 1
1654// MIPS64EL:#define _mips 1
1655// MIPS64EL:#define mips 1
1656//
Simon Atanasyan682b49b2014-01-27 13:58:54 +00001657// Check MIPS arch macros
1658//
1659// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
1660// RUN: < /dev/null \
1661// RUN: | FileCheck -check-prefix MIPS-ARCH-DEF32 %s
1662//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00001663// MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
1664// MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00001665//
1666// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
1667// RUN: -target-cpu mips32 < /dev/null \
1668// RUN: | FileCheck -check-prefix MIPS-ARCH-32 %s
1669//
1670// MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
1671// MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
1672//
1673// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
1674// RUN: -target-cpu mips32r2 < /dev/null \
1675// RUN: | FileCheck -check-prefix MIPS-ARCH-32R2 %s
1676//
1677// MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
1678// MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
1679//
1680// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1681// RUN: < /dev/null \
1682// RUN: | FileCheck -check-prefix MIPS-ARCH-DEF64 %s
1683//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00001684// MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
1685// MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00001686//
1687// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1688// RUN: -target-cpu mips64 < /dev/null \
1689// RUN: | FileCheck -check-prefix MIPS-ARCH-64 %s
1690//
1691// MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
1692// MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
1693//
1694// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1695// RUN: -target-cpu mips64r2 < /dev/null \
1696// RUN: | FileCheck -check-prefix MIPS-ARCH-64R2 %s
1697//
1698// MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
1699// MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
1700//
Simon Atanasyan5e21c802012-04-06 17:51:49 +00001701// Check MIPS float ABI macros
1702//
1703// RUN: %clang_cc1 -E -dM -ffreestanding \
1704// RUN: -triple=mips-none-none < /dev/null \
1705// RUN: | FileCheck -check-prefix MIPS-FABI-HARD %s
1706// MIPS-FABI-HARD:#define __mips_hard_float 1
1707//
1708// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
1709// RUN: -triple=mips-none-none < /dev/null \
1710// RUN: | FileCheck -check-prefix MIPS-FABI-SOFT %s
1711// MIPS-FABI-SOFT:#define __mips_soft_float 1
1712//
1713// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
1714// RUN: -triple=mips-none-none < /dev/null \
1715// RUN: | FileCheck -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyand3d173d2012-06-05 13:06:56 +00001716// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyan5e21c802012-04-06 17:51:49 +00001717// MIPS-FABI-SINGLE:#define __mips_single_float 1
1718//
Simon Atanasyan16071912013-04-14 14:07:30 +00001719// RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
1720// RUN: -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
1721// RUN: | FileCheck -check-prefix MIPS-FABI-SINGLE-SOFT %s
1722// MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
1723// MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
1724//
Simon Atanasyan72244b62012-07-05 16:06:06 +00001725// Check MIPS features macros
1726//
1727// RUN: %clang_cc1 -target-feature +mips16 \
1728// RUN: -E -dM -triple=mips-none-none < /dev/null \
1729// RUN: | FileCheck -check-prefix MIPS16 %s
1730// MIPS16:#define __mips16 1
1731//
1732// RUN: %clang_cc1 -target-feature -mips16 \
1733// RUN: -E -dM -triple=mips-none-none < /dev/null \
1734// RUN: | FileCheck -check-prefix NOMIPS16 %s
1735// NOMIPS16-NOT:#define __mips16 1
1736//
Simon Atanasyan60777612013-04-14 14:07:51 +00001737// RUN: %clang_cc1 -target-feature +micromips \
1738// RUN: -E -dM -triple=mips-none-none < /dev/null \
1739// RUN: | FileCheck -check-prefix MICROMIPS %s
1740// MICROMIPS:#define __mips_micromips 1
1741//
1742// RUN: %clang_cc1 -target-feature -micromips \
1743// RUN: -E -dM -triple=mips-none-none < /dev/null \
1744// RUN: | FileCheck -check-prefix NOMICROMIPS %s
1745// NOMICROMIPS-NOT:#define __mips_micromips 1
1746//
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00001747// RUN: %clang_cc1 -target-feature +dsp \
1748// RUN: -E -dM -triple=mips-none-none < /dev/null \
1749// RUN: | FileCheck -check-prefix MIPS-DSP %s
1750// MIPS-DSP:#define __mips_dsp 1
1751// MIPS-DSP:#define __mips_dsp_rev 1
1752// MIPS-DSP-NOT:#define __mips_dspr2 1
1753//
1754// RUN: %clang_cc1 -target-feature +dspr2 \
1755// RUN: -E -dM -triple=mips-none-none < /dev/null \
1756// RUN: | FileCheck -check-prefix MIPS-DSPR2 %s
1757// MIPS-DSPR2:#define __mips_dsp 1
1758// MIPS-DSPR2:#define __mips_dsp_rev 2
1759// MIPS-DSPR2:#define __mips_dspr2 1
1760//
Jack Carter44ff1e52013-08-12 17:20:29 +00001761// RUN: %clang_cc1 -target-feature +msa \
1762// RUN: -E -dM -triple=mips-none-none < /dev/null \
1763// RUN: | FileCheck -check-prefix MIPS-MSA %s
1764// MIPS-MSA:#define __mips_msa 1
1765//
Simon Atanasyan22127ce2013-09-24 09:09:16 +00001766// RUN: %clang_cc1 -target-feature +nan2008 \
1767// RUN: -E -dM -triple=mips-none-none < /dev/null \
1768// RUN: | FileCheck -check-prefix MIPS-NAN2008 %s
1769// MIPS-NAN2008:#define __mips_nan2008 1
1770//
Simon Atanasyan2c97a812013-10-18 13:13:53 +00001771// RUN: %clang_cc1 -target-feature -fp64 \
1772// RUN: -E -dM -triple=mips-none-none < /dev/null \
1773// RUN: | FileCheck -check-prefix MIPS32-MFP32 %s
1774// MIPS32-MFP32:#define _MIPS_FPSET 16
1775// MIPS32-MFP32:#define __mips_fpr 32
1776//
1777// RUN: %clang_cc1 -target-feature +fp64 \
1778// RUN: -E -dM -triple=mips-none-none < /dev/null \
1779// RUN: | FileCheck -check-prefix MIPS32-MFP64 %s
1780// MIPS32-MFP64:#define _MIPS_FPSET 32
1781// MIPS32-MFP64:#define __mips_fpr 64
1782//
1783// RUN: %clang_cc1 -target-feature +single-float \
1784// RUN: -E -dM -triple=mips-none-none < /dev/null \
1785// RUN: | FileCheck -check-prefix MIPS32-MFP32SF %s
1786// MIPS32-MFP32SF:#define _MIPS_FPSET 32
1787// MIPS32-MFP32SF:#define __mips_fpr 32
1788//
1789// RUN: %clang_cc1 -target-feature +fp64 \
1790// RUN: -E -dM -triple=mips64-none-none < /dev/null \
1791// RUN: | FileCheck -check-prefix MIPS64-MFP64 %s
1792// MIPS64-MFP64:#define _MIPS_FPSET 32
1793// MIPS64-MFP64:#define __mips_fpr 64
1794//
1795// RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
1796// RUN: -E -dM -triple=mips64-none-none < /dev/null \
1797// RUN: | FileCheck -check-prefix MIPS64-NOMFP64 %s
1798// MIPS64-NOMFP64:#define _MIPS_FPSET 32
1799// MIPS64-NOMFP64:#define __mips_fpr 32
1800//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +00001801// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -check-prefix MSP430 %s
Chris Lattnere963d092009-10-29 04:55:36 +00001802//
1803// MSP430:#define MSP430 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001804// MSP430-NOT:#define _LP64
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001805// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00001806// MSP430:#define __CHAR16_TYPE__ unsigned short
1807// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00001808// MSP430:#define __CHAR_BIT__ 8
1809// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1810// MSP430:#define __DBL_DIG__ 15
1811// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
1812// MSP430:#define __DBL_HAS_DENORM__ 1
1813// MSP430:#define __DBL_HAS_INFINITY__ 1
1814// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
1815// MSP430:#define __DBL_MANT_DIG__ 53
1816// MSP430:#define __DBL_MAX_10_EXP__ 308
1817// MSP430:#define __DBL_MAX_EXP__ 1024
1818// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
1819// MSP430:#define __DBL_MIN_10_EXP__ (-307)
1820// MSP430:#define __DBL_MIN_EXP__ (-1021)
1821// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
1822// MSP430:#define __DECIMAL_DIG__ 17
1823// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1824// MSP430:#define __FLT_DIG__ 6
1825// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
1826// MSP430:#define __FLT_EVAL_METHOD__ 0
1827// MSP430:#define __FLT_HAS_DENORM__ 1
1828// MSP430:#define __FLT_HAS_INFINITY__ 1
1829// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
1830// MSP430:#define __FLT_MANT_DIG__ 24
1831// MSP430:#define __FLT_MAX_10_EXP__ 38
1832// MSP430:#define __FLT_MAX_EXP__ 128
1833// MSP430:#define __FLT_MAX__ 3.40282347e+38F
1834// MSP430:#define __FLT_MIN_10_EXP__ (-37)
1835// MSP430:#define __FLT_MIN_EXP__ (-125)
1836// MSP430:#define __FLT_MIN__ 1.17549435e-38F
1837// MSP430:#define __FLT_RADIX__ 2
1838// MSP430:#define __INT16_TYPE__ short
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00001839// MSP430:#define __INT32_C_SUFFIX__ L
Chris Lattner55c98772009-11-12 08:08:27 +00001840// MSP430:#define __INT32_TYPE__ long int
Chris Lattnere963d092009-10-29 04:55:36 +00001841// MSP430:#define __INT8_TYPE__ char
Anton Korobeynikovef412902013-07-01 19:42:40 +00001842// MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
1843// MSP430:#define __INTMAX_TYPE__ long long int
1844// MSP430:#define __INTMAX_WIDTH__ 64
1845// MSP430:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00001846// MSP430:#define __INTPTR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00001847// MSP430:#define __INT_MAX__ 32767
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001848// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00001849// MSP430:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001850// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00001851// MSP430:#define __LDBL_HAS_DENORM__ 1
1852// MSP430:#define __LDBL_HAS_INFINITY__ 1
1853// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
1854// MSP430:#define __LDBL_MANT_DIG__ 53
1855// MSP430:#define __LDBL_MAX_10_EXP__ 308
1856// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001857// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00001858// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
1859// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001860// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00001861// MSP430:#define __LITTLE_ENDIAN__ 1
Anton Korobeynikov485810e2010-01-14 21:36:52 +00001862// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00001863// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001864// MSP430-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00001865// MSP430:#define __MSP430__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00001866// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck9b25f782009-11-19 13:18:59 +00001867// MSP430:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00001868// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00001869// MSP430:#define __SCHAR_MAX__ 127
1870// MSP430:#define __SHRT_MAX__ 32767
Ken Dyckadc85112009-11-22 15:41:04 +00001871// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00001872// MSP430:#define __SIZEOF_DOUBLE__ 8
1873// MSP430:#define __SIZEOF_FLOAT__ 4
1874// MSP430:#define __SIZEOF_INT__ 2
1875// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
1876// MSP430:#define __SIZEOF_LONG_LONG__ 8
1877// MSP430:#define __SIZEOF_LONG__ 4
1878// MSP430:#define __SIZEOF_POINTER__ 2
1879// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
1880// MSP430:#define __SIZEOF_SHORT__ 2
1881// MSP430:#define __SIZEOF_SIZE_T__ 2
1882// MSP430:#define __SIZEOF_WCHAR_T__ 2
1883// MSP430:#define __SIZEOF_WINT_T__ 2
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001884// MSP430:#define __SIZE_MAX__ 65535U
Chris Lattnere963d092009-10-29 04:55:36 +00001885// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00001886// MSP430:#define __SIZE_WIDTH__ 16
Anton Korobeynikovef412902013-07-01 19:42:40 +00001887// MSP430:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00001888// MSP430:#define __USER_LABEL_PREFIX__ _
Chris Lattner0fb5bbd2009-11-12 08:04:33 +00001889// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00001890// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00001891// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00001892// MSP430:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00001893// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00001894// MSP430:#define __clang__ 1
1895//
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001896// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -check-prefix NVPTX32 %s
1897//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001898// NVPTX32-NOT:#define _LP64
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001899// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001900// NVPTX32:#define __CHAR16_TYPE__ unsigned short
1901// NVPTX32:#define __CHAR32_TYPE__ unsigned int
1902// NVPTX32:#define __CHAR_BIT__ 8
1903// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
1904// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1905// NVPTX32:#define __DBL_DIG__ 15
1906// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
1907// NVPTX32:#define __DBL_HAS_DENORM__ 1
1908// NVPTX32:#define __DBL_HAS_INFINITY__ 1
1909// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
1910// NVPTX32:#define __DBL_MANT_DIG__ 53
1911// NVPTX32:#define __DBL_MAX_10_EXP__ 308
1912// NVPTX32:#define __DBL_MAX_EXP__ 1024
1913// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
1914// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
1915// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
1916// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
1917// NVPTX32:#define __DECIMAL_DIG__ 17
1918// NVPTX32:#define __FINITE_MATH_ONLY__ 0
1919// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1920// NVPTX32:#define __FLT_DIG__ 6
1921// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
1922// NVPTX32:#define __FLT_EVAL_METHOD__ 0
1923// NVPTX32:#define __FLT_HAS_DENORM__ 1
1924// NVPTX32:#define __FLT_HAS_INFINITY__ 1
1925// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
1926// NVPTX32:#define __FLT_MANT_DIG__ 24
1927// NVPTX32:#define __FLT_MAX_10_EXP__ 38
1928// NVPTX32:#define __FLT_MAX_EXP__ 128
1929// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
1930// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
1931// NVPTX32:#define __FLT_MIN_EXP__ (-125)
1932// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
1933// NVPTX32:#define __FLT_RADIX__ 2
1934// NVPTX32:#define __INT16_TYPE__ short
1935// NVPTX32:#define __INT32_TYPE__ int
1936// NVPTX32:#define __INT64_C_SUFFIX__ LL
1937// NVPTX32:#define __INT64_TYPE__ long long int
1938// NVPTX32:#define __INT8_TYPE__ char
1939// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
1940// NVPTX32:#define __INTMAX_TYPE__ long long int
1941// NVPTX32:#define __INTMAX_WIDTH__ 64
1942// NVPTX32:#define __INTPTR_TYPE__ unsigned int
1943// NVPTX32:#define __INTPTR_WIDTH__ 32
1944// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001945// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001946// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001947// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001948// NVPTX32:#define __LDBL_HAS_DENORM__ 1
1949// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
1950// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
1951// NVPTX32:#define __LDBL_MANT_DIG__ 53
1952// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
1953// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001954// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001955// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
1956// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001957// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00001958// NVPTX32:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001959// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
1960// NVPTX32:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001961// NVPTX32-NOT:#define __LP64__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001962// NVPTX32:#define __NVPTX__ 1
1963// NVPTX32:#define __POINTER_WIDTH__ 32
1964// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
1965// NVPTX32:#define __PTRDIFF_TYPE__ unsigned int
1966// NVPTX32:#define __PTRDIFF_WIDTH__ 32
1967// NVPTX32:#define __PTX__ 1
1968// NVPTX32:#define __SCHAR_MAX__ 127
1969// NVPTX32:#define __SHRT_MAX__ 32767
1970// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
1971// NVPTX32:#define __SIZEOF_DOUBLE__ 8
1972// NVPTX32:#define __SIZEOF_FLOAT__ 4
1973// NVPTX32:#define __SIZEOF_INT__ 4
1974// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
1975// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
1976// NVPTX32:#define __SIZEOF_LONG__ 8
1977// NVPTX32:#define __SIZEOF_POINTER__ 4
1978// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
1979// NVPTX32:#define __SIZEOF_SHORT__ 2
1980// NVPTX32:#define __SIZEOF_SIZE_T__ 4
1981// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
1982// NVPTX32:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001983// NVPTX32:#define __SIZE_MAX__ 4294967295U
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001984// NVPTX32:#define __SIZE_TYPE__ unsigned int
1985// NVPTX32:#define __SIZE_WIDTH__ 32
1986// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
1987// NVPTX32:#define __USER_LABEL_PREFIX__ _
1988// NVPTX32:#define __WCHAR_MAX__ 2147483647
1989// NVPTX32:#define __WCHAR_TYPE__ int
1990// NVPTX32:#define __WCHAR_WIDTH__ 32
1991// NVPTX32:#define __WINT_TYPE__ int
1992// NVPTX32:#define __WINT_WIDTH__ 32
1993//
1994// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -check-prefix NVPTX64 %s
1995//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001996// NVPTX64:#define _LP64 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001997// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00001998// NVPTX64:#define __CHAR16_TYPE__ unsigned short
1999// NVPTX64:#define __CHAR32_TYPE__ unsigned int
2000// NVPTX64:#define __CHAR_BIT__ 8
2001// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
2002// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2003// NVPTX64:#define __DBL_DIG__ 15
2004// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
2005// NVPTX64:#define __DBL_HAS_DENORM__ 1
2006// NVPTX64:#define __DBL_HAS_INFINITY__ 1
2007// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
2008// NVPTX64:#define __DBL_MANT_DIG__ 53
2009// NVPTX64:#define __DBL_MAX_10_EXP__ 308
2010// NVPTX64:#define __DBL_MAX_EXP__ 1024
2011// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
2012// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
2013// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
2014// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
2015// NVPTX64:#define __DECIMAL_DIG__ 17
2016// NVPTX64:#define __FINITE_MATH_ONLY__ 0
2017// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2018// NVPTX64:#define __FLT_DIG__ 6
2019// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
2020// NVPTX64:#define __FLT_EVAL_METHOD__ 0
2021// NVPTX64:#define __FLT_HAS_DENORM__ 1
2022// NVPTX64:#define __FLT_HAS_INFINITY__ 1
2023// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
2024// NVPTX64:#define __FLT_MANT_DIG__ 24
2025// NVPTX64:#define __FLT_MAX_10_EXP__ 38
2026// NVPTX64:#define __FLT_MAX_EXP__ 128
2027// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
2028// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
2029// NVPTX64:#define __FLT_MIN_EXP__ (-125)
2030// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
2031// NVPTX64:#define __FLT_RADIX__ 2
2032// NVPTX64:#define __INT16_TYPE__ short
2033// NVPTX64:#define __INT32_TYPE__ int
2034// NVPTX64:#define __INT64_C_SUFFIX__ LL
2035// NVPTX64:#define __INT64_TYPE__ long long int
2036// NVPTX64:#define __INT8_TYPE__ char
2037// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
2038// NVPTX64:#define __INTMAX_TYPE__ long long int
2039// NVPTX64:#define __INTMAX_WIDTH__ 64
2040// NVPTX64:#define __INTPTR_TYPE__ long long unsigned int
2041// NVPTX64:#define __INTPTR_WIDTH__ 64
2042// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002043// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00002044// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002045// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00002046// NVPTX64:#define __LDBL_HAS_DENORM__ 1
2047// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
2048// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
2049// NVPTX64:#define __LDBL_MANT_DIG__ 53
2050// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
2051// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002052// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00002053// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
2054// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002055// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00002056// NVPTX64:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00002057// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
2058// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002059// NVPTX64:#define __LP64__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00002060// NVPTX64:#define __NVPTX__ 1
2061// NVPTX64:#define __POINTER_WIDTH__ 64
2062// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
2063// NVPTX64:#define __PTRDIFF_TYPE__ long long unsigned int
2064// NVPTX64:#define __PTRDIFF_WIDTH__ 64
2065// NVPTX64:#define __PTX__ 1
2066// NVPTX64:#define __SCHAR_MAX__ 127
2067// NVPTX64:#define __SHRT_MAX__ 32767
2068// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
2069// NVPTX64:#define __SIZEOF_DOUBLE__ 8
2070// NVPTX64:#define __SIZEOF_FLOAT__ 4
2071// NVPTX64:#define __SIZEOF_INT__ 4
2072// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
2073// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
2074// NVPTX64:#define __SIZEOF_LONG__ 8
2075// NVPTX64:#define __SIZEOF_POINTER__ 8
2076// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
2077// NVPTX64:#define __SIZEOF_SHORT__ 2
2078// NVPTX64:#define __SIZEOF_SIZE_T__ 8
2079// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
2080// NVPTX64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002081// NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00002082// NVPTX64:#define __SIZE_TYPE__ long long unsigned int
2083// NVPTX64:#define __SIZE_WIDTH__ 64
2084// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
2085// NVPTX64:#define __USER_LABEL_PREFIX__ _
2086// NVPTX64:#define __WCHAR_MAX__ 2147483647
2087// NVPTX64:#define __WCHAR_TYPE__ int
2088// NVPTX64:#define __WCHAR_WIDTH__ 32
2089// NVPTX64:#define __WINT_TYPE__ int
2090// NVPTX64:#define __WINT_WIDTH__ 32
2091//
Hal Finkel6b984f02012-07-03 16:51:04 +00002092// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -check-prefix PPC603E %s
2093//
2094// PPC603E:#define _ARCH_603 1
2095// PPC603E:#define _ARCH_603E 1
2096// PPC603E:#define _ARCH_PPC 1
2097// PPC603E:#define _ARCH_PPCGR 1
2098// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002099// PPC603E-NOT:#define _LP64
Hal Finkel6b984f02012-07-03 16:51:04 +00002100// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002101// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel6b984f02012-07-03 16:51:04 +00002102// PPC603E:#define __CHAR16_TYPE__ unsigned short
2103// PPC603E:#define __CHAR32_TYPE__ unsigned int
2104// PPC603E:#define __CHAR_BIT__ 8
2105// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2106// PPC603E:#define __DBL_DIG__ 15
2107// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
2108// PPC603E:#define __DBL_HAS_DENORM__ 1
2109// PPC603E:#define __DBL_HAS_INFINITY__ 1
2110// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
2111// PPC603E:#define __DBL_MANT_DIG__ 53
2112// PPC603E:#define __DBL_MAX_10_EXP__ 308
2113// PPC603E:#define __DBL_MAX_EXP__ 1024
2114// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
2115// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
2116// PPC603E:#define __DBL_MIN_EXP__ (-1021)
2117// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
2118// PPC603E:#define __DECIMAL_DIG__ 33
2119// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2120// PPC603E:#define __FLT_DIG__ 6
2121// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
2122// PPC603E:#define __FLT_EVAL_METHOD__ 0
2123// PPC603E:#define __FLT_HAS_DENORM__ 1
2124// PPC603E:#define __FLT_HAS_INFINITY__ 1
2125// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
2126// PPC603E:#define __FLT_MANT_DIG__ 24
2127// PPC603E:#define __FLT_MAX_10_EXP__ 38
2128// PPC603E:#define __FLT_MAX_EXP__ 128
2129// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
2130// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
2131// PPC603E:#define __FLT_MIN_EXP__ (-125)
2132// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
2133// PPC603E:#define __FLT_RADIX__ 2
2134// PPC603E:#define __INT16_TYPE__ short
2135// PPC603E:#define __INT32_TYPE__ int
2136// PPC603E:#define __INT64_C_SUFFIX__ LL
2137// PPC603E:#define __INT64_TYPE__ long long int
2138// PPC603E:#define __INT8_TYPE__ char
2139// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
2140// PPC603E:#define __INTMAX_TYPE__ long long int
2141// PPC603E:#define __INTMAX_WIDTH__ 64
2142// PPC603E:#define __INTPTR_TYPE__ long int
2143// PPC603E:#define __INTPTR_WIDTH__ 32
2144// PPC603E:#define __INT_MAX__ 2147483647
2145// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
2146// PPC603E:#define __LDBL_DIG__ 31
2147// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
2148// PPC603E:#define __LDBL_HAS_DENORM__ 1
2149// PPC603E:#define __LDBL_HAS_INFINITY__ 1
2150// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
2151// PPC603E:#define __LDBL_MANT_DIG__ 106
2152// PPC603E:#define __LDBL_MAX_10_EXP__ 308
2153// PPC603E:#define __LDBL_MAX_EXP__ 1024
2154// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
2155// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
2156// PPC603E:#define __LDBL_MIN_EXP__ (-968)
2157// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
2158// PPC603E:#define __LONG_DOUBLE_128__ 1
2159// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
2160// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002161// PPC603E-NOT:#define __LP64__
Hal Finkel6b984f02012-07-03 16:51:04 +00002162// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00002163// PPC603E:#define __POINTER_WIDTH__ 32
2164// PPC603E:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00002165// PPC603E:#define __PPC__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00002166// PPC603E:#define __PTRDIFF_TYPE__ long int
2167// PPC603E:#define __PTRDIFF_WIDTH__ 32
2168// PPC603E:#define __REGISTER_PREFIX__
2169// PPC603E:#define __SCHAR_MAX__ 127
2170// PPC603E:#define __SHRT_MAX__ 32767
2171// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
2172// PPC603E:#define __SIZEOF_DOUBLE__ 8
2173// PPC603E:#define __SIZEOF_FLOAT__ 4
2174// PPC603E:#define __SIZEOF_INT__ 4
2175// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
2176// PPC603E:#define __SIZEOF_LONG_LONG__ 8
2177// PPC603E:#define __SIZEOF_LONG__ 4
2178// PPC603E:#define __SIZEOF_POINTER__ 4
2179// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
2180// PPC603E:#define __SIZEOF_SHORT__ 2
2181// PPC603E:#define __SIZEOF_SIZE_T__ 4
2182// PPC603E:#define __SIZEOF_WCHAR_T__ 4
2183// PPC603E:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002184// PPC603E:#define __SIZE_MAX__ 4294967295U
Hal Finkel6b984f02012-07-03 16:51:04 +00002185// PPC603E:#define __SIZE_TYPE__ long unsigned int
2186// PPC603E:#define __SIZE_WIDTH__ 32
2187// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
2188// PPC603E:#define __USER_LABEL_PREFIX__ _
2189// PPC603E:#define __WCHAR_MAX__ 2147483647
2190// PPC603E:#define __WCHAR_TYPE__ int
2191// PPC603E:#define __WCHAR_WIDTH__ 32
2192// PPC603E:#define __WINT_TYPE__ int
2193// PPC603E:#define __WINT_WIDTH__ 32
2194// PPC603E:#define __powerpc__ 1
2195// PPC603E:#define __ppc__ 1
2196//
Hal Finkel8eb59282012-06-11 22:35:19 +00002197// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64 %s
Chris Lattnere963d092009-10-29 04:55:36 +00002198//
2199// PPC64:#define _ARCH_PPC 1
2200// PPC64:#define _ARCH_PPC64 1
Hal Finkel6b984f02012-07-03 16:51:04 +00002201// PPC64:#define _ARCH_PPCGR 1
2202// PPC64:#define _ARCH_PPCSQ 1
2203// PPC64:#define _ARCH_PWR4 1
2204// PPC64:#define _ARCH_PWR5 1
2205// PPC64:#define _ARCH_PWR6 1
Hal Finkel8eb59282012-06-11 22:35:19 +00002206// PPC64:#define _ARCH_PWR7 1
Chris Lattnere963d092009-10-29 04:55:36 +00002207// PPC64:#define _BIG_ENDIAN 1
2208// PPC64:#define _LP64 1
2209// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002210// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002211// PPC64:#define __CHAR16_TYPE__ unsigned short
2212// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002213// PPC64:#define __CHAR_BIT__ 8
2214// PPC64:#define __CHAR_UNSIGNED__ 1
2215// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2216// PPC64:#define __DBL_DIG__ 15
2217// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
2218// PPC64:#define __DBL_HAS_DENORM__ 1
2219// PPC64:#define __DBL_HAS_INFINITY__ 1
2220// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
2221// PPC64:#define __DBL_MANT_DIG__ 53
2222// PPC64:#define __DBL_MAX_10_EXP__ 308
2223// PPC64:#define __DBL_MAX_EXP__ 1024
2224// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
2225// PPC64:#define __DBL_MIN_10_EXP__ (-307)
2226// PPC64:#define __DBL_MIN_EXP__ (-1021)
2227// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Nico Weber3435ede2012-01-31 02:07:33 +00002228// PPC64:#define __DECIMAL_DIG__ 33
Chris Lattnere963d092009-10-29 04:55:36 +00002229// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2230// PPC64:#define __FLT_DIG__ 6
2231// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
2232// PPC64:#define __FLT_EVAL_METHOD__ 0
2233// PPC64:#define __FLT_HAS_DENORM__ 1
2234// PPC64:#define __FLT_HAS_INFINITY__ 1
2235// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
2236// PPC64:#define __FLT_MANT_DIG__ 24
2237// PPC64:#define __FLT_MAX_10_EXP__ 38
2238// PPC64:#define __FLT_MAX_EXP__ 128
2239// PPC64:#define __FLT_MAX__ 3.40282347e+38F
2240// PPC64:#define __FLT_MIN_10_EXP__ (-37)
2241// PPC64:#define __FLT_MIN_EXP__ (-125)
2242// PPC64:#define __FLT_MIN__ 1.17549435e-38F
2243// PPC64:#define __FLT_RADIX__ 2
2244// PPC64:#define __INT16_TYPE__ short
2245// PPC64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002246// PPC64:#define __INT64_C_SUFFIX__ L
Chris Lattnere963d092009-10-29 04:55:36 +00002247// PPC64:#define __INT64_TYPE__ long int
2248// PPC64:#define __INT8_TYPE__ char
2249// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00002250// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002251// PPC64:#define __INTMAX_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00002252// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002253// PPC64:#define __INTPTR_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00002254// PPC64:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00002255// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
2256// PPC64:#define __LDBL_DIG__ 31
2257// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00002258// PPC64:#define __LDBL_HAS_DENORM__ 1
2259// PPC64:#define __LDBL_HAS_INFINITY__ 1
2260// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00002261// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00002262// PPC64:#define __LDBL_MAX_10_EXP__ 308
2263// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00002264// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
2265// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
2266// PPC64:#define __LDBL_MIN_EXP__ (-968)
2267// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnere963d092009-10-29 04:55:36 +00002268// PPC64:#define __LONG_DOUBLE_128__ 1
2269// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
2270// PPC64:#define __LONG_MAX__ 9223372036854775807L
2271// PPC64:#define __LP64__ 1
2272// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002273// PPC64:#define __POINTER_WIDTH__ 64
2274// PPC64:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00002275// PPC64:#define __PPC64__ 1
2276// PPC64:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00002277// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00002278// PPC64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00002279// PPC64:#define __REGISTER_PREFIX__
2280// PPC64:#define __SCHAR_MAX__ 127
2281// PPC64:#define __SHRT_MAX__ 32767
Ken Dyckadc85112009-11-22 15:41:04 +00002282// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002283// PPC64:#define __SIZEOF_DOUBLE__ 8
2284// PPC64:#define __SIZEOF_FLOAT__ 4
2285// PPC64:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00002286// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00002287// PPC64:#define __SIZEOF_LONG_LONG__ 8
2288// PPC64:#define __SIZEOF_LONG__ 8
2289// PPC64:#define __SIZEOF_POINTER__ 8
2290// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
2291// PPC64:#define __SIZEOF_SHORT__ 2
2292// PPC64:#define __SIZEOF_SIZE_T__ 8
2293// PPC64:#define __SIZEOF_WCHAR_T__ 4
2294// PPC64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002295// PPC64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00002296// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002297// PPC64:#define __SIZE_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00002298// PPC64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002299// PPC64:#define __USER_LABEL_PREFIX__ _
2300// PPC64:#define __WCHAR_MAX__ 2147483647
2301// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002302// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002303// PPC64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002304// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002305// PPC64:#define __ppc64__ 1
2306// PPC64:#define __ppc__ 1
2307//
Bill Schmidt778d3872013-07-26 01:36:11 +00002308// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64LE %s
2309//
2310// PPC64LE:#define _ARCH_PPC 1
2311// PPC64LE:#define _ARCH_PPC64 1
2312// PPC64LE:#define _ARCH_PPCGR 1
2313// PPC64LE:#define _ARCH_PPCSQ 1
2314// PPC64LE:#define _ARCH_PWR4 1
2315// PPC64LE:#define _ARCH_PWR5 1
2316// PPC64LE:#define _ARCH_PWR5X 1
2317// PPC64LE:#define _ARCH_PWR6 1
2318// PPC64LE:#define _ARCH_PWR6X 1
2319// PPC64LE:#define _ARCH_PWR7 1
Will Schmidt5fa50f3c2014-03-24 21:09:16 +00002320// PPC64LE:#define _CALL_ELF 2
Bill Schmidt778d3872013-07-26 01:36:11 +00002321// PPC64LE:#define _LITTLE_ENDIAN 1
2322// PPC64LE:#define _LP64 1
2323// PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2324// PPC64LE:#define __CHAR16_TYPE__ unsigned short
2325// PPC64LE:#define __CHAR32_TYPE__ unsigned int
2326// PPC64LE:#define __CHAR_BIT__ 8
2327// PPC64LE:#define __CHAR_UNSIGNED__ 1
2328// PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2329// PPC64LE:#define __DBL_DIG__ 15
2330// PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
2331// PPC64LE:#define __DBL_HAS_DENORM__ 1
2332// PPC64LE:#define __DBL_HAS_INFINITY__ 1
2333// PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
2334// PPC64LE:#define __DBL_MANT_DIG__ 53
2335// PPC64LE:#define __DBL_MAX_10_EXP__ 308
2336// PPC64LE:#define __DBL_MAX_EXP__ 1024
2337// PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
2338// PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
2339// PPC64LE:#define __DBL_MIN_EXP__ (-1021)
2340// PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
2341// PPC64LE:#define __DECIMAL_DIG__ 33
2342// PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2343// PPC64LE:#define __FLT_DIG__ 6
2344// PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
2345// PPC64LE:#define __FLT_EVAL_METHOD__ 0
2346// PPC64LE:#define __FLT_HAS_DENORM__ 1
2347// PPC64LE:#define __FLT_HAS_INFINITY__ 1
2348// PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
2349// PPC64LE:#define __FLT_MANT_DIG__ 24
2350// PPC64LE:#define __FLT_MAX_10_EXP__ 38
2351// PPC64LE:#define __FLT_MAX_EXP__ 128
2352// PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
2353// PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
2354// PPC64LE:#define __FLT_MIN_EXP__ (-125)
2355// PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
2356// PPC64LE:#define __FLT_RADIX__ 2
2357// PPC64LE:#define __INT16_TYPE__ short
2358// PPC64LE:#define __INT32_TYPE__ int
2359// PPC64LE:#define __INT64_C_SUFFIX__ L
2360// PPC64LE:#define __INT64_TYPE__ long int
2361// PPC64LE:#define __INT8_TYPE__ char
2362// PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
2363// PPC64LE:#define __INTMAX_TYPE__ long int
2364// PPC64LE:#define __INTMAX_WIDTH__ 64
2365// PPC64LE:#define __INTPTR_TYPE__ long int
2366// PPC64LE:#define __INTPTR_WIDTH__ 64
2367// PPC64LE:#define __INT_MAX__ 2147483647
2368// PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
2369// PPC64LE:#define __LDBL_DIG__ 31
2370// PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
2371// PPC64LE:#define __LDBL_HAS_DENORM__ 1
2372// PPC64LE:#define __LDBL_HAS_INFINITY__ 1
2373// PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
2374// PPC64LE:#define __LDBL_MANT_DIG__ 106
2375// PPC64LE:#define __LDBL_MAX_10_EXP__ 308
2376// PPC64LE:#define __LDBL_MAX_EXP__ 1024
2377// PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
2378// PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
2379// PPC64LE:#define __LDBL_MIN_EXP__ (-968)
2380// PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
2381// PPC64LE:#define __LITTLE_ENDIAN__ 1
2382// PPC64LE:#define __LONG_DOUBLE_128__ 1
2383// PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
2384// PPC64LE:#define __LONG_MAX__ 9223372036854775807L
2385// PPC64LE:#define __LP64__ 1
2386// PPC64LE:#define __NATURAL_ALIGNMENT__ 1
2387// PPC64LE:#define __POINTER_WIDTH__ 64
2388// PPC64LE:#define __POWERPC__ 1
2389// PPC64LE:#define __PPC64__ 1
2390// PPC64LE:#define __PPC__ 1
2391// PPC64LE:#define __PTRDIFF_TYPE__ long int
2392// PPC64LE:#define __PTRDIFF_WIDTH__ 64
2393// PPC64LE:#define __REGISTER_PREFIX__
2394// PPC64LE:#define __SCHAR_MAX__ 127
2395// PPC64LE:#define __SHRT_MAX__ 32767
2396// PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
2397// PPC64LE:#define __SIZEOF_DOUBLE__ 8
2398// PPC64LE:#define __SIZEOF_FLOAT__ 4
2399// PPC64LE:#define __SIZEOF_INT__ 4
2400// PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
2401// PPC64LE:#define __SIZEOF_LONG_LONG__ 8
2402// PPC64LE:#define __SIZEOF_LONG__ 8
2403// PPC64LE:#define __SIZEOF_POINTER__ 8
2404// PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
2405// PPC64LE:#define __SIZEOF_SHORT__ 2
2406// PPC64LE:#define __SIZEOF_SIZE_T__ 8
2407// PPC64LE:#define __SIZEOF_WCHAR_T__ 4
2408// PPC64LE:#define __SIZEOF_WINT_T__ 4
2409// PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
2410// PPC64LE:#define __SIZE_TYPE__ long unsigned int
2411// PPC64LE:#define __SIZE_WIDTH__ 64
2412// PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
2413// PPC64LE:#define __USER_LABEL_PREFIX__ _
2414// PPC64LE:#define __WCHAR_MAX__ 2147483647
2415// PPC64LE:#define __WCHAR_TYPE__ int
2416// PPC64LE:#define __WCHAR_WIDTH__ 32
2417// PPC64LE:#define __WINT_TYPE__ int
2418// PPC64LE:#define __WINT_WIDTH__ 32
2419// PPC64LE:#define __ppc64__ 1
2420// PPC64LE:#define __ppc__ 1
2421//
Hal Finkeldf1e4bf2013-02-01 05:53:33 +00002422// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu a2q -fno-signed-char < /dev/null | FileCheck -check-prefix PPCA2Q %s
2423//
2424// PPCA2Q:#define _ARCH_A2 1
2425// PPCA2Q:#define _ARCH_A2Q 1
2426// PPCA2Q:#define _ARCH_PPC 1
2427// PPCA2Q:#define _ARCH_PPC64 1
2428// PPCA2Q:#define _ARCH_QP 1
2429//
2430// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-bgq-linux -fno-signed-char < /dev/null | FileCheck -check-prefix PPCBGQ %s
2431//
2432// PPCBGQ:#define __THW_BLUEGENE__ 1
2433// PPCBGQ:#define __TOS_BGQ__ 1
2434// PPCBGQ:#define __bg__ 1
2435// PPCBGQ:#define __bgq__ 1
2436//
Bill Schmidt38378a02013-02-01 20:23:10 +00002437// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu 630 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC630 %s
2438//
2439// PPC630:#define _ARCH_630 1
2440// PPC630:#define _ARCH_PPC 1
2441// PPC630:#define _ARCH_PPC64 1
2442// PPC630:#define _ARCH_PPCGR 1
2443//
2444// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr3 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR3 %s
2445//
2446// PPCPWR3:#define _ARCH_PPC 1
2447// PPCPWR3:#define _ARCH_PPC64 1
2448// PPCPWR3:#define _ARCH_PPCGR 1
2449//
2450// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power3 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER3 %s
2451//
2452// PPCPOWER3:#define _ARCH_PPC 1
2453// PPCPOWER3:#define _ARCH_PPC64 1
2454// PPCPOWER3:#define _ARCH_PPCGR 1
2455//
2456// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr4 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR4 %s
2457//
2458// PPCPWR4:#define _ARCH_PPC 1
2459// PPCPWR4:#define _ARCH_PPC64 1
2460// PPCPWR4:#define _ARCH_PPCGR 1
2461// PPCPWR4:#define _ARCH_PPCSQ 1
2462// PPCPWR4:#define _ARCH_PWR4 1
2463//
2464// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power4 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER4 %s
2465//
2466// PPCPOWER4:#define _ARCH_PPC 1
2467// PPCPOWER4:#define _ARCH_PPC64 1
2468// PPCPOWER4:#define _ARCH_PPCGR 1
2469// PPCPOWER4:#define _ARCH_PPCSQ 1
2470// PPCPOWER4:#define _ARCH_PWR4 1
2471//
2472// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR5 %s
2473//
2474// PPCPWR5:#define _ARCH_PPC 1
2475// PPCPWR5:#define _ARCH_PPC64 1
2476// PPCPWR5:#define _ARCH_PPCGR 1
2477// PPCPWR5:#define _ARCH_PPCSQ 1
2478// PPCPWR5:#define _ARCH_PWR4 1
2479// PPCPWR5:#define _ARCH_PWR5 1
2480//
2481// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power5 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER5 %s
2482//
2483// PPCPOWER5:#define _ARCH_PPC 1
2484// PPCPOWER5:#define _ARCH_PPC64 1
2485// PPCPOWER5:#define _ARCH_PPCGR 1
2486// PPCPOWER5:#define _ARCH_PPCSQ 1
2487// PPCPOWER5:#define _ARCH_PWR4 1
2488// PPCPOWER5:#define _ARCH_PWR5 1
2489//
2490// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5x -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR5X %s
2491//
2492// PPCPWR5X:#define _ARCH_PPC 1
2493// PPCPWR5X:#define _ARCH_PPC64 1
2494// PPCPWR5X:#define _ARCH_PPCGR 1
2495// PPCPWR5X:#define _ARCH_PPCSQ 1
2496// PPCPWR5X:#define _ARCH_PWR4 1
2497// PPCPWR5X:#define _ARCH_PWR5 1
2498// PPCPWR5X:#define _ARCH_PWR5X 1
2499//
2500// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power5x -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER5X %s
2501//
2502// PPCPOWER5X:#define _ARCH_PPC 1
2503// PPCPOWER5X:#define _ARCH_PPC64 1
2504// PPCPOWER5X:#define _ARCH_PPCGR 1
2505// PPCPOWER5X:#define _ARCH_PPCSQ 1
2506// PPCPOWER5X:#define _ARCH_PWR4 1
2507// PPCPOWER5X:#define _ARCH_PWR5 1
2508// PPCPOWER5X:#define _ARCH_PWR5X 1
2509//
2510// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr6 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR6 %s
2511//
2512// PPCPWR6:#define _ARCH_PPC 1
2513// PPCPWR6:#define _ARCH_PPC64 1
2514// PPCPWR6:#define _ARCH_PPCGR 1
2515// PPCPWR6:#define _ARCH_PPCSQ 1
2516// PPCPWR6:#define _ARCH_PWR4 1
2517// PPCPWR6:#define _ARCH_PWR5 1
2518// PPCPWR6:#define _ARCH_PWR5X 1
2519// PPCPWR6:#define _ARCH_PWR6 1
2520//
2521// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power6 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER6 %s
2522//
2523// PPCPOWER6:#define _ARCH_PPC 1
2524// PPCPOWER6:#define _ARCH_PPC64 1
2525// PPCPOWER6:#define _ARCH_PPCGR 1
2526// PPCPOWER6:#define _ARCH_PPCSQ 1
2527// PPCPOWER6:#define _ARCH_PWR4 1
2528// PPCPOWER6:#define _ARCH_PWR5 1
2529// PPCPOWER6:#define _ARCH_PWR5X 1
2530// PPCPOWER6:#define _ARCH_PWR6 1
2531//
2532// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr6x -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR6X %s
2533//
2534// PPCPWR6X:#define _ARCH_PPC 1
2535// PPCPWR6X:#define _ARCH_PPC64 1
2536// PPCPWR6X:#define _ARCH_PPCGR 1
2537// PPCPWR6X:#define _ARCH_PPCSQ 1
2538// PPCPWR6X:#define _ARCH_PWR4 1
2539// PPCPWR6X:#define _ARCH_PWR5 1
2540// PPCPWR6X:#define _ARCH_PWR5X 1
2541// PPCPWR6X:#define _ARCH_PWR6 1
2542// PPCPWR6X:#define _ARCH_PWR6X 1
2543//
2544// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power6x -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER6X %s
2545//
2546// PPCPOWER6X:#define _ARCH_PPC 1
2547// PPCPOWER6X:#define _ARCH_PPC64 1
2548// PPCPOWER6X:#define _ARCH_PPCGR 1
2549// PPCPOWER6X:#define _ARCH_PPCSQ 1
2550// PPCPOWER6X:#define _ARCH_PWR4 1
2551// PPCPOWER6X:#define _ARCH_PWR5 1
2552// PPCPOWER6X:#define _ARCH_PWR5X 1
2553// PPCPOWER6X:#define _ARCH_PWR6 1
2554// PPCPOWER6X:#define _ARCH_PWR6X 1
2555//
2556// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPWR7 %s
2557//
2558// PPCPWR7:#define _ARCH_PPC 1
2559// PPCPWR7:#define _ARCH_PPC64 1
2560// PPCPWR7:#define _ARCH_PPCGR 1
2561// PPCPWR7:#define _ARCH_PPCSQ 1
2562// PPCPWR7:#define _ARCH_PWR4 1
2563// PPCPWR7:#define _ARCH_PWR5 1
2564// PPCPWR7:#define _ARCH_PWR5X 1
2565// PPCPWR7:#define _ARCH_PWR6 1
2566// PPCPWR7:#define _ARCH_PWR6X 1
2567// PPCPWR7:#define _ARCH_PWR7 1
2568//
2569// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power7 -fno-signed-char < /dev/null | FileCheck -check-prefix PPCPOWER7 %s
2570//
2571// PPCPOWER7:#define _ARCH_PPC 1
2572// PPCPOWER7:#define _ARCH_PPC64 1
2573// PPCPOWER7:#define _ARCH_PPCGR 1
2574// PPCPOWER7:#define _ARCH_PPCSQ 1
2575// PPCPOWER7:#define _ARCH_PWR4 1
2576// PPCPOWER7:#define _ARCH_PWR5 1
2577// PPCPOWER7:#define _ARCH_PWR5X 1
2578// PPCPOWER7:#define _ARCH_PWR6 1
2579// PPCPOWER7:#define _ARCH_PWR6X 1
2580// PPCPOWER7:#define _ARCH_PWR7 1
2581//
Nico Weber3435ede2012-01-31 02:07:33 +00002582// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64-LINUX %s
2583//
2584// PPC64-LINUX:#define _ARCH_PPC 1
2585// PPC64-LINUX:#define _ARCH_PPC64 1
2586// PPC64-LINUX:#define _BIG_ENDIAN 1
2587// PPC64-LINUX:#define _LP64 1
2588// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002589// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00002590// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
2591// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
2592// PPC64-LINUX:#define __CHAR_BIT__ 8
2593// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
2594// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2595// PPC64-LINUX:#define __DBL_DIG__ 15
2596// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2597// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
2598// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
2599// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2600// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
2601// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
2602// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
2603// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2604// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2605// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
2606// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
2607// PPC64-LINUX:#define __DECIMAL_DIG__ 33
2608// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2609// PPC64-LINUX:#define __FLT_DIG__ 6
2610// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2611// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
2612// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
2613// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
2614// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2615// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
2616// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
2617// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
2618// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2619// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2620// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
2621// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2622// PPC64-LINUX:#define __FLT_RADIX__ 2
2623// PPC64-LINUX:#define __INT16_TYPE__ short
2624// PPC64-LINUX:#define __INT32_TYPE__ int
2625// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
2626// PPC64-LINUX:#define __INT64_TYPE__ long int
2627// PPC64-LINUX:#define __INT8_TYPE__ char
2628// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
2629// PPC64-LINUX:#define __INTMAX_TYPE__ long int
2630// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
2631// PPC64-LINUX:#define __INTPTR_TYPE__ long int
2632// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
2633// PPC64-LINUX:#define __INT_MAX__ 2147483647
2634// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
2635// PPC64-LINUX:#define __LDBL_DIG__ 31
2636// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
2637// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
2638// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
2639// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2640// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
2641// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
2642// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
2643// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
2644// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
2645// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
2646// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
2647// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
2648// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2649// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
2650// PPC64-LINUX:#define __LP64__ 1
2651// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00002652// PPC64-LINUX:#define __POINTER_WIDTH__ 64
2653// PPC64-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00002654// PPC64-LINUX:#define __PPC64__ 1
2655// PPC64-LINUX:#define __PPC__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00002656// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
2657// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
2658// PPC64-LINUX:#define __REGISTER_PREFIX__
2659// PPC64-LINUX:#define __SCHAR_MAX__ 127
2660// PPC64-LINUX:#define __SHRT_MAX__ 32767
2661// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2662// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
2663// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
2664// PPC64-LINUX:#define __SIZEOF_INT__ 4
2665// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
2666// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
2667// PPC64-LINUX:#define __SIZEOF_LONG__ 8
2668// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
2669// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
2670// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
2671// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
2672// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
2673// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002674// PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00002675// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
2676// PPC64-LINUX:#define __SIZE_WIDTH__ 64
2677// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
2678// PPC64-LINUX:#define __USER_LABEL_PREFIX__
2679// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
2680// PPC64-LINUX:#define __WCHAR_TYPE__ int
2681// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
2682// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
2683// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
2684// PPC64-LINUX:#define __WINT_WIDTH__ 32
2685// PPC64-LINUX:#define __powerpc64__ 1
2686// PPC64-LINUX:#define __powerpc__ 1
2687// PPC64-LINUX:#define __ppc64__ 1
2688// PPC64-LINUX:#define __ppc__ 1
2689//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +00002690// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix PPC %s
Chris Lattnere963d092009-10-29 04:55:36 +00002691//
2692// PPC:#define _ARCH_PPC 1
2693// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002694// PPC-NOT:#define _LP64
Chris Lattnere963d092009-10-29 04:55:36 +00002695// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002696// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002697// PPC:#define __CHAR16_TYPE__ unsigned short
2698// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002699// PPC:#define __CHAR_BIT__ 8
2700// PPC:#define __CHAR_UNSIGNED__ 1
2701// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2702// PPC:#define __DBL_DIG__ 15
2703// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
2704// PPC:#define __DBL_HAS_DENORM__ 1
2705// PPC:#define __DBL_HAS_INFINITY__ 1
2706// PPC:#define __DBL_HAS_QUIET_NAN__ 1
2707// PPC:#define __DBL_MANT_DIG__ 53
2708// PPC:#define __DBL_MAX_10_EXP__ 308
2709// PPC:#define __DBL_MAX_EXP__ 1024
2710// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
2711// PPC:#define __DBL_MIN_10_EXP__ (-307)
2712// PPC:#define __DBL_MIN_EXP__ (-1021)
2713// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Nico Weber3435ede2012-01-31 02:07:33 +00002714// PPC:#define __DECIMAL_DIG__ 33
Chris Lattnere963d092009-10-29 04:55:36 +00002715// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2716// PPC:#define __FLT_DIG__ 6
2717// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
2718// PPC:#define __FLT_EVAL_METHOD__ 0
2719// PPC:#define __FLT_HAS_DENORM__ 1
2720// PPC:#define __FLT_HAS_INFINITY__ 1
2721// PPC:#define __FLT_HAS_QUIET_NAN__ 1
2722// PPC:#define __FLT_MANT_DIG__ 24
2723// PPC:#define __FLT_MAX_10_EXP__ 38
2724// PPC:#define __FLT_MAX_EXP__ 128
2725// PPC:#define __FLT_MAX__ 3.40282347e+38F
2726// PPC:#define __FLT_MIN_10_EXP__ (-37)
2727// PPC:#define __FLT_MIN_EXP__ (-125)
2728// PPC:#define __FLT_MIN__ 1.17549435e-38F
2729// PPC:#define __FLT_RADIX__ 2
2730// PPC:#define __INT16_TYPE__ short
2731// PPC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002732// PPC:#define __INT64_C_SUFFIX__ LL
Chris Lattnere963d092009-10-29 04:55:36 +00002733// PPC:#define __INT64_TYPE__ long long int
2734// PPC:#define __INT8_TYPE__ char
2735// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00002736// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002737// PPC:#define __INTMAX_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00002738// PPC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002739// PPC:#define __INTPTR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002740// PPC:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00002741// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
2742// PPC:#define __LDBL_DIG__ 31
2743// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00002744// PPC:#define __LDBL_HAS_DENORM__ 1
2745// PPC:#define __LDBL_HAS_INFINITY__ 1
2746// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00002747// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00002748// PPC:#define __LDBL_MAX_10_EXP__ 308
2749// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00002750// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
2751// PPC:#define __LDBL_MIN_10_EXP__ (-291)
2752// PPC:#define __LDBL_MIN_EXP__ (-968)
2753// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnere963d092009-10-29 04:55:36 +00002754// PPC:#define __LONG_DOUBLE_128__ 1
2755// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
2756// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002757// PPC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00002758// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002759// PPC:#define __POINTER_WIDTH__ 32
2760// PPC:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00002761// PPC:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00002762// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00002763// PPC:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002764// PPC:#define __REGISTER_PREFIX__
2765// PPC:#define __SCHAR_MAX__ 127
2766// PPC:#define __SHRT_MAX__ 32767
Ken Dyckadc85112009-11-22 15:41:04 +00002767// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002768// PPC:#define __SIZEOF_DOUBLE__ 8
2769// PPC:#define __SIZEOF_FLOAT__ 4
2770// PPC:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00002771// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00002772// PPC:#define __SIZEOF_LONG_LONG__ 8
2773// PPC:#define __SIZEOF_LONG__ 4
2774// PPC:#define __SIZEOF_POINTER__ 4
2775// PPC:#define __SIZEOF_PTRDIFF_T__ 4
2776// PPC:#define __SIZEOF_SHORT__ 2
2777// PPC:#define __SIZEOF_SIZE_T__ 4
2778// PPC:#define __SIZEOF_WCHAR_T__ 4
2779// PPC:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002780// PPC:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00002781// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002782// PPC:#define __SIZE_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00002783// PPC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002784// PPC:#define __USER_LABEL_PREFIX__ _
2785// PPC:#define __WCHAR_MAX__ 2147483647
2786// PPC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002787// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002788// PPC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002789// PPC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002790// PPC:#define __ppc__ 1
2791//
Nico Weber3435ede2012-01-31 02:07:33 +00002792// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-LINUX %s
2793//
2794// PPC-LINUX:#define _ARCH_PPC 1
2795// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002796// PPC-LINUX-NOT:#define _LP64
Nico Weber3435ede2012-01-31 02:07:33 +00002797// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002798// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00002799// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
2800// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
2801// PPC-LINUX:#define __CHAR_BIT__ 8
2802// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
2803// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2804// PPC-LINUX:#define __DBL_DIG__ 15
2805// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2806// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
2807// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
2808// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2809// PPC-LINUX:#define __DBL_MANT_DIG__ 53
2810// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
2811// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
2812// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2813// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2814// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
2815// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
2816// PPC-LINUX:#define __DECIMAL_DIG__ 33
2817// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2818// PPC-LINUX:#define __FLT_DIG__ 6
2819// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2820// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
2821// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
2822// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
2823// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2824// PPC-LINUX:#define __FLT_MANT_DIG__ 24
2825// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
2826// PPC-LINUX:#define __FLT_MAX_EXP__ 128
2827// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2828// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2829// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
2830// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2831// PPC-LINUX:#define __FLT_RADIX__ 2
2832// PPC-LINUX:#define __INT16_TYPE__ short
2833// PPC-LINUX:#define __INT32_TYPE__ int
2834// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
2835// PPC-LINUX:#define __INT64_TYPE__ long long int
2836// PPC-LINUX:#define __INT8_TYPE__ char
2837// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2838// PPC-LINUX:#define __INTMAX_TYPE__ long long int
2839// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Hal Finkel26908382012-03-02 20:54:36 +00002840// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00002841// PPC-LINUX:#define __INTPTR_WIDTH__ 32
2842// PPC-LINUX:#define __INT_MAX__ 2147483647
2843// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
2844// PPC-LINUX:#define __LDBL_DIG__ 31
2845// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
2846// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
2847// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
2848// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2849// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
2850// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
2851// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
2852// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
2853// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
2854// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
2855// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
2856// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
2857// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2858// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002859// PPC-LINUX-NOT:#define __LP64__
Nico Weber3435ede2012-01-31 02:07:33 +00002860// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00002861// PPC-LINUX:#define __POINTER_WIDTH__ 32
2862// PPC-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00002863// PPC-LINUX:#define __PPC__ 1
Hal Finkel26908382012-03-02 20:54:36 +00002864// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00002865// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
2866// PPC-LINUX:#define __REGISTER_PREFIX__
2867// PPC-LINUX:#define __SCHAR_MAX__ 127
2868// PPC-LINUX:#define __SHRT_MAX__ 32767
2869// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2870// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
2871// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
2872// PPC-LINUX:#define __SIZEOF_INT__ 4
2873// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
2874// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
2875// PPC-LINUX:#define __SIZEOF_LONG__ 4
2876// PPC-LINUX:#define __SIZEOF_POINTER__ 4
2877// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2878// PPC-LINUX:#define __SIZEOF_SHORT__ 2
2879// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
2880// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
2881// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002882// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
Nico Weber3435ede2012-01-31 02:07:33 +00002883// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
2884// PPC-LINUX:#define __SIZE_WIDTH__ 32
2885// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
2886// PPC-LINUX:#define __USER_LABEL_PREFIX__
2887// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
2888// PPC-LINUX:#define __WCHAR_TYPE__ int
2889// PPC-LINUX:#define __WCHAR_WIDTH__ 32
2890// PPC-LINUX:#define __WINT_TYPE__ unsigned int
2891// PPC-LINUX:#define __WINT_UNSIGNED__ 1
2892// PPC-LINUX:#define __WINT_WIDTH__ 32
2893// PPC-LINUX:#define __powerpc__ 1
2894// PPC-LINUX:#define __ppc__ 1
2895//
David Fang072d47b2013-05-16 17:51:48 +00002896// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-apple-darwin8 < /dev/null | FileCheck -check-prefix PPC-DARWIN %s
2897//
2898// PPC-DARWIN:#define _ARCH_PPC 1
2899// PPC-DARWIN:#define _BIG_ENDIAN 1
2900// PPC-DARWIN:#define __BIG_ENDIAN__ 1
2901// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
2902// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
2903// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
2904// PPC-DARWIN:#define __CHAR_BIT__ 8
2905// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2906// PPC-DARWIN:#define __DBL_DIG__ 15
2907// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
2908// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
2909// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
2910// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
2911// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
2912// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
2913// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
2914// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
2915// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
2916// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
2917// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
2918// PPC-DARWIN:#define __DECIMAL_DIG__ 33
2919// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2920// PPC-DARWIN:#define __FLT_DIG__ 6
2921// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
2922// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
2923// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
2924// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
2925// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
2926// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
2927// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
2928// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
2929// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
2930// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
2931// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
2932// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
2933// PPC-DARWIN:#define __FLT_RADIX__ 2
2934// PPC-DARWIN:#define __INT16_TYPE__ short
2935// PPC-DARWIN:#define __INT32_TYPE__ int
2936// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
2937// PPC-DARWIN:#define __INT64_TYPE__ long long int
2938// PPC-DARWIN:#define __INT8_TYPE__ char
2939// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
2940// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
2941// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
2942// PPC-DARWIN:#define __INTPTR_TYPE__ long int
2943// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
2944// PPC-DARWIN:#define __INT_MAX__ 2147483647
2945// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
2946// PPC-DARWIN:#define __LDBL_DIG__ 31
2947// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
2948// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
2949// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
2950// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
2951// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
2952// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
2953// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
2954// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
2955// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
2956// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
2957// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
2958// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
2959// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
2960// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
2961// PPC-DARWIN:#define __MACH__ 1
2962// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
2963// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
2964// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
2965// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
2966// PPC-DARWIN:#define __POINTER_WIDTH__ 32
2967// PPC-DARWIN:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00002968// PPC-DARWIN:#define __PPC__ 1
David Fang072d47b2013-05-16 17:51:48 +00002969// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
2970// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
2971// PPC-DARWIN:#define __REGISTER_PREFIX__
2972// PPC-DARWIN:#define __SCHAR_MAX__ 127
2973// PPC-DARWIN:#define __SHRT_MAX__ 32767
2974// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
2975// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
2976// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
2977// PPC-DARWIN:#define __SIZEOF_INT__ 4
2978// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
2979// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
2980// PPC-DARWIN:#define __SIZEOF_LONG__ 4
2981// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
2982// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
2983// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
2984// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
2985// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
2986// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
2987// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
2988// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
2989// PPC-DARWIN:#define __SIZE_WIDTH__ 32
2990// PPC-DARWIN:#define __STDC_HOSTED__ 0
2991// PPC-DARWIN:#define __STDC_VERSION__ 199901L
2992// PPC-DARWIN:#define __STDC__ 1
2993// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
2994// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
2995// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
2996// PPC-DARWIN:#define __WCHAR_TYPE__ int
2997// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
2998// PPC-DARWIN:#define __WINT_TYPE__ int
2999// PPC-DARWIN:#define __WINT_WIDTH__ 32
3000// PPC-DARWIN:#define __powerpc__ 1
3001// PPC-DARWIN:#define __ppc__ 1
3002//
Ulrich Weigand47445072013-05-06 16:26:41 +00003003// RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix S390X %s
3004//
3005// S390X:#define __CHAR16_TYPE__ unsigned short
3006// S390X:#define __CHAR32_TYPE__ unsigned int
3007// S390X:#define __CHAR_BIT__ 8
3008// S390X:#define __CHAR_UNSIGNED__ 1
3009// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3010// S390X:#define __DBL_DIG__ 15
3011// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
3012// S390X:#define __DBL_HAS_DENORM__ 1
3013// S390X:#define __DBL_HAS_INFINITY__ 1
3014// S390X:#define __DBL_HAS_QUIET_NAN__ 1
3015// S390X:#define __DBL_MANT_DIG__ 53
3016// S390X:#define __DBL_MAX_10_EXP__ 308
3017// S390X:#define __DBL_MAX_EXP__ 1024
3018// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
3019// S390X:#define __DBL_MIN_10_EXP__ (-307)
3020// S390X:#define __DBL_MIN_EXP__ (-1021)
3021// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
3022// S390X:#define __DECIMAL_DIG__ 36
3023// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3024// S390X:#define __FLT_DIG__ 6
3025// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
3026// S390X:#define __FLT_EVAL_METHOD__ 0
3027// S390X:#define __FLT_HAS_DENORM__ 1
3028// S390X:#define __FLT_HAS_INFINITY__ 1
3029// S390X:#define __FLT_HAS_QUIET_NAN__ 1
3030// S390X:#define __FLT_MANT_DIG__ 24
3031// S390X:#define __FLT_MAX_10_EXP__ 38
3032// S390X:#define __FLT_MAX_EXP__ 128
3033// S390X:#define __FLT_MAX__ 3.40282347e+38F
3034// S390X:#define __FLT_MIN_10_EXP__ (-37)
3035// S390X:#define __FLT_MIN_EXP__ (-125)
3036// S390X:#define __FLT_MIN__ 1.17549435e-38F
3037// S390X:#define __FLT_RADIX__ 2
3038// S390X:#define __INT16_TYPE__ short
3039// S390X:#define __INT32_TYPE__ int
3040// S390X:#define __INT64_C_SUFFIX__ L
3041// S390X:#define __INT64_TYPE__ long long int
3042// S390X:#define __INT8_TYPE__ char
3043// S390X:#define __INTMAX_MAX__ 9223372036854775807LL
3044// S390X:#define __INTMAX_TYPE__ long long int
3045// S390X:#define __INTMAX_WIDTH__ 64
3046// S390X:#define __INTPTR_TYPE__ long int
3047// S390X:#define __INTPTR_WIDTH__ 64
3048// S390X:#define __INT_MAX__ 2147483647
3049// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3050// S390X:#define __LDBL_DIG__ 33
3051// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3052// S390X:#define __LDBL_HAS_DENORM__ 1
3053// S390X:#define __LDBL_HAS_INFINITY__ 1
3054// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
3055// S390X:#define __LDBL_MANT_DIG__ 113
3056// S390X:#define __LDBL_MAX_10_EXP__ 4932
3057// S390X:#define __LDBL_MAX_EXP__ 16384
3058// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3059// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
3060// S390X:#define __LDBL_MIN_EXP__ (-16381)
3061// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3062// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
3063// S390X:#define __LONG_MAX__ 9223372036854775807L
3064// S390X:#define __NO_INLINE__ 1
3065// S390X:#define __POINTER_WIDTH__ 64
3066// S390X:#define __PTRDIFF_TYPE__ long int
3067// S390X:#define __PTRDIFF_WIDTH__ 64
3068// S390X:#define __SCHAR_MAX__ 127
3069// S390X:#define __SHRT_MAX__ 32767
3070// S390X:#define __SIG_ATOMIC_WIDTH__ 32
3071// S390X:#define __SIZEOF_DOUBLE__ 8
3072// S390X:#define __SIZEOF_FLOAT__ 4
3073// S390X:#define __SIZEOF_INT__ 4
3074// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
3075// S390X:#define __SIZEOF_LONG_LONG__ 8
3076// S390X:#define __SIZEOF_LONG__ 8
3077// S390X:#define __SIZEOF_POINTER__ 8
3078// S390X:#define __SIZEOF_PTRDIFF_T__ 8
3079// S390X:#define __SIZEOF_SHORT__ 2
3080// S390X:#define __SIZEOF_SIZE_T__ 8
3081// S390X:#define __SIZEOF_WCHAR_T__ 4
3082// S390X:#define __SIZEOF_WINT_T__ 4
3083// S390X:#define __SIZE_TYPE__ long unsigned int
3084// S390X:#define __SIZE_WIDTH__ 64
3085// S390X:#define __UINTMAX_TYPE__ long long unsigned int
3086// S390X:#define __USER_LABEL_PREFIX__ _
3087// S390X:#define __WCHAR_MAX__ 2147483647
3088// S390X:#define __WCHAR_TYPE__ int
3089// S390X:#define __WCHAR_WIDTH__ 32
3090// S390X:#define __WINT_TYPE__ int
3091// S390X:#define __WINT_WIDTH__ 32
3092// S390X:#define __s390__ 1
3093// S390X:#define __s390x__ 1
3094//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +00003095// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -check-prefix SPARC %s
Chris Lattnere963d092009-10-29 04:55:36 +00003096//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003097// SPARC-NOT:#define _LP64
Robert Lytton2c942c62014-03-10 12:06:29 +00003098// SPARC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003099// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00003100// SPARC:#define __CHAR16_TYPE__ unsigned short
3101// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00003102// SPARC:#define __CHAR_BIT__ 8
3103// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3104// SPARC:#define __DBL_DIG__ 15
3105// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
3106// SPARC:#define __DBL_HAS_DENORM__ 1
3107// SPARC:#define __DBL_HAS_INFINITY__ 1
3108// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
3109// SPARC:#define __DBL_MANT_DIG__ 53
3110// SPARC:#define __DBL_MAX_10_EXP__ 308
3111// SPARC:#define __DBL_MAX_EXP__ 1024
3112// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
3113// SPARC:#define __DBL_MIN_10_EXP__ (-307)
3114// SPARC:#define __DBL_MIN_EXP__ (-1021)
3115// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
3116// SPARC:#define __DECIMAL_DIG__ 17
3117// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3118// SPARC:#define __FLT_DIG__ 6
3119// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
3120// SPARC:#define __FLT_EVAL_METHOD__ 0
3121// SPARC:#define __FLT_HAS_DENORM__ 1
3122// SPARC:#define __FLT_HAS_INFINITY__ 1
3123// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
3124// SPARC:#define __FLT_MANT_DIG__ 24
3125// SPARC:#define __FLT_MAX_10_EXP__ 38
3126// SPARC:#define __FLT_MAX_EXP__ 128
3127// SPARC:#define __FLT_MAX__ 3.40282347e+38F
3128// SPARC:#define __FLT_MIN_10_EXP__ (-37)
3129// SPARC:#define __FLT_MIN_EXP__ (-125)
3130// SPARC:#define __FLT_MIN__ 1.17549435e-38F
3131// SPARC:#define __FLT_RADIX__ 2
3132// SPARC:#define __INT16_TYPE__ short
3133// SPARC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00003134// SPARC:#define __INT64_C_SUFFIX__ LL
Chris Lattnere963d092009-10-29 04:55:36 +00003135// SPARC:#define __INT64_TYPE__ long long int
3136// SPARC:#define __INT8_TYPE__ char
3137// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00003138// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00003139// SPARC:#define __INTMAX_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00003140// SPARC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00003141// SPARC:#define __INTPTR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003142// SPARC:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003143// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00003144// SPARC:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003145// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00003146// SPARC:#define __LDBL_HAS_DENORM__ 1
3147// SPARC:#define __LDBL_HAS_INFINITY__ 1
3148// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
3149// SPARC:#define __LDBL_MANT_DIG__ 53
3150// SPARC:#define __LDBL_MAX_10_EXP__ 308
3151// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003152// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00003153// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
3154// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003155// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00003156// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
3157// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003158// SPARC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00003159// SPARC:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00003160// SPARC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00003161// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00003162// SPARC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00003163// SPARC:#define __SCHAR_MAX__ 127
3164// SPARC:#define __SHRT_MAX__ 32767
Ken Dyckadc85112009-11-22 15:41:04 +00003165// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00003166// SPARC:#define __SIZEOF_DOUBLE__ 8
3167// SPARC:#define __SIZEOF_FLOAT__ 4
3168// SPARC:#define __SIZEOF_INT__ 4
3169// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
3170// SPARC:#define __SIZEOF_LONG_LONG__ 8
3171// SPARC:#define __SIZEOF_LONG__ 4
3172// SPARC:#define __SIZEOF_POINTER__ 4
3173// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
3174// SPARC:#define __SIZEOF_SHORT__ 2
3175// SPARC:#define __SIZEOF_SIZE_T__ 4
3176// SPARC:#define __SIZEOF_WCHAR_T__ 4
3177// SPARC:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003178// SPARC:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00003179// SPARC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00003180// SPARC:#define __SIZE_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00003181// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00003182// SPARC:#define __USER_LABEL_PREFIX__ _
Daniel Dunbar3b17a862011-03-31 00:53:51 +00003183// SPARC:#define __VERSION__ "4.2.1 Compatible
Chris Lattnere963d092009-10-29 04:55:36 +00003184// SPARC:#define __WCHAR_MAX__ 2147483647
3185// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00003186// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003187// SPARC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00003188// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003189// SPARC:#define __sparc 1
3190// SPARC:#define __sparc__ 1
3191// SPARC:#define __sparcv8 1
3192// SPARC:#define sparc 1
3193//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +00003194// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s
Chris Lattnere963d092009-10-29 04:55:36 +00003195//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003196// TCE-NOT:#define _LP64
Robert Lytton2c942c62014-03-10 12:06:29 +00003197// TCE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003198// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00003199// TCE:#define __CHAR16_TYPE__ unsigned short
3200// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00003201// TCE:#define __CHAR_BIT__ 8
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003202// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnere963d092009-10-29 04:55:36 +00003203// TCE:#define __DBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003204// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnere963d092009-10-29 04:55:36 +00003205// TCE:#define __DBL_HAS_DENORM__ 1
3206// TCE:#define __DBL_HAS_INFINITY__ 1
3207// TCE:#define __DBL_HAS_QUIET_NAN__ 1
3208// TCE:#define __DBL_MANT_DIG__ 24
3209// TCE:#define __DBL_MAX_10_EXP__ 38
3210// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003211// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnere963d092009-10-29 04:55:36 +00003212// TCE:#define __DBL_MIN_10_EXP__ (-37)
3213// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003214// TCE:#define __DBL_MIN__ 1.17549435e-38
Chris Lattnere963d092009-10-29 04:55:36 +00003215// TCE:#define __DECIMAL_DIG__ -1
3216// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3217// TCE:#define __FLT_DIG__ 6
3218// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
3219// TCE:#define __FLT_EVAL_METHOD__ 0
3220// TCE:#define __FLT_HAS_DENORM__ 1
3221// TCE:#define __FLT_HAS_INFINITY__ 1
3222// TCE:#define __FLT_HAS_QUIET_NAN__ 1
3223// TCE:#define __FLT_MANT_DIG__ 24
3224// TCE:#define __FLT_MAX_10_EXP__ 38
3225// TCE:#define __FLT_MAX_EXP__ 128
3226// TCE:#define __FLT_MAX__ 3.40282347e+38F
3227// TCE:#define __FLT_MIN_10_EXP__ (-37)
3228// TCE:#define __FLT_MIN_EXP__ (-125)
3229// TCE:#define __FLT_MIN__ 1.17549435e-38F
3230// TCE:#define __FLT_RADIX__ 2
3231// TCE:#define __INT16_TYPE__ short
3232// TCE:#define __INT32_TYPE__ int
3233// TCE:#define __INT8_TYPE__ char
3234// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00003235// TCE:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00003236// TCE:#define __INTMAX_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00003237// TCE:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00003238// TCE:#define __INTPTR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003239// TCE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003240// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnere963d092009-10-29 04:55:36 +00003241// TCE:#define __LDBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003242// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnere963d092009-10-29 04:55:36 +00003243// TCE:#define __LDBL_HAS_DENORM__ 1
3244// TCE:#define __LDBL_HAS_INFINITY__ 1
3245// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
3246// TCE:#define __LDBL_MANT_DIG__ 24
3247// TCE:#define __LDBL_MAX_10_EXP__ 38
3248// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003249// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnere963d092009-10-29 04:55:36 +00003250// TCE:#define __LDBL_MIN_10_EXP__ (-37)
3251// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003252// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnere963d092009-10-29 04:55:36 +00003253// TCE:#define __LONG_LONG_MAX__ 2147483647LL
3254// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003255// TCE-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00003256// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00003257// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00003258// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003259// TCE:#define __SCHAR_MAX__ 127
3260// TCE:#define __SHRT_MAX__ 32767
Ken Dyckadc85112009-11-22 15:41:04 +00003261// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00003262// TCE:#define __SIZEOF_DOUBLE__ 4
3263// TCE:#define __SIZEOF_FLOAT__ 4
3264// TCE:#define __SIZEOF_INT__ 4
3265// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
3266// TCE:#define __SIZEOF_LONG_LONG__ 4
3267// TCE:#define __SIZEOF_LONG__ 4
3268// TCE:#define __SIZEOF_POINTER__ 4
3269// TCE:#define __SIZEOF_PTRDIFF_T__ 4
3270// TCE:#define __SIZEOF_SHORT__ 2
3271// TCE:#define __SIZEOF_SIZE_T__ 4
3272// TCE:#define __SIZEOF_WCHAR_T__ 4
3273// TCE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003274// TCE:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00003275// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00003276// TCE:#define __SIZE_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003277// TCE:#define __TCE_V1__ 1
3278// TCE:#define __TCE__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00003279// TCE:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00003280// TCE:#define __USER_LABEL_PREFIX__ _
3281// TCE:#define __WCHAR_MAX__ 2147483647
3282// TCE:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00003283// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003284// TCE:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00003285// TCE:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003286// TCE:#define __tce 1
3287// TCE:#define __tce__ 1
3288// TCE:#define tce 1
3289//
Daniel Dunbar8fbe78f2009-12-15 20:14:24 +00003290// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -check-prefix X86_64 %s
Chris Lattnere963d092009-10-29 04:55:36 +00003291//
3292// X86_64:#define _LP64 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003293// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00003294// X86_64:#define __CHAR16_TYPE__ unsigned short
3295// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00003296// X86_64:#define __CHAR_BIT__ 8
3297// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3298// X86_64:#define __DBL_DIG__ 15
3299// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
3300// X86_64:#define __DBL_HAS_DENORM__ 1
3301// X86_64:#define __DBL_HAS_INFINITY__ 1
3302// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
3303// X86_64:#define __DBL_MANT_DIG__ 53
3304// X86_64:#define __DBL_MAX_10_EXP__ 308
3305// X86_64:#define __DBL_MAX_EXP__ 1024
3306// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
3307// X86_64:#define __DBL_MIN_10_EXP__ (-307)
3308// X86_64:#define __DBL_MIN_EXP__ (-1021)
3309// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
3310// X86_64:#define __DECIMAL_DIG__ 21
3311// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3312// X86_64:#define __FLT_DIG__ 6
3313// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
3314// X86_64:#define __FLT_EVAL_METHOD__ 0
3315// X86_64:#define __FLT_HAS_DENORM__ 1
3316// X86_64:#define __FLT_HAS_INFINITY__ 1
3317// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
3318// X86_64:#define __FLT_MANT_DIG__ 24
3319// X86_64:#define __FLT_MAX_10_EXP__ 38
3320// X86_64:#define __FLT_MAX_EXP__ 128
3321// X86_64:#define __FLT_MAX__ 3.40282347e+38F
3322// X86_64:#define __FLT_MIN_10_EXP__ (-37)
3323// X86_64:#define __FLT_MIN_EXP__ (-125)
3324// X86_64:#define __FLT_MIN__ 1.17549435e-38F
3325// X86_64:#define __FLT_RADIX__ 2
3326// X86_64:#define __INT16_TYPE__ short
3327// X86_64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00003328// X86_64:#define __INT64_C_SUFFIX__ L
Chris Lattnere963d092009-10-29 04:55:36 +00003329// X86_64:#define __INT64_TYPE__ long int
3330// X86_64:#define __INT8_TYPE__ char
3331// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00003332// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00003333// X86_64:#define __INTMAX_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00003334// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00003335// X86_64:#define __INTPTR_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00003336// X86_64:#define __INT_MAX__ 2147483647
3337// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
3338// X86_64:#define __LDBL_DIG__ 18
3339// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
3340// X86_64:#define __LDBL_HAS_DENORM__ 1
3341// X86_64:#define __LDBL_HAS_INFINITY__ 1
3342// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
3343// X86_64:#define __LDBL_MANT_DIG__ 64
3344// X86_64:#define __LDBL_MAX_10_EXP__ 4932
3345// X86_64:#define __LDBL_MAX_EXP__ 16384
3346// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
3347// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
3348// X86_64:#define __LDBL_MIN_EXP__ (-16381)
3349// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
3350// X86_64:#define __LITTLE_ENDIAN__ 1
3351// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
3352// X86_64:#define __LONG_MAX__ 9223372036854775807L
3353// X86_64:#define __LP64__ 1
3354// X86_64:#define __MMX__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00003355// X86_64:#define __NO_MATH_INLINES 1
3356// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00003357// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00003358// X86_64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00003359// X86_64:#define __REGISTER_PREFIX__
3360// X86_64:#define __SCHAR_MAX__ 127
3361// X86_64:#define __SHRT_MAX__ 32767
Ken Dyckadc85112009-11-22 15:41:04 +00003362// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00003363// X86_64:#define __SIZEOF_DOUBLE__ 8
3364// X86_64:#define __SIZEOF_FLOAT__ 4
3365// X86_64:#define __SIZEOF_INT__ 4
3366// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
3367// X86_64:#define __SIZEOF_LONG_LONG__ 8
3368// X86_64:#define __SIZEOF_LONG__ 8
3369// X86_64:#define __SIZEOF_POINTER__ 8
3370// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
3371// X86_64:#define __SIZEOF_SHORT__ 2
3372// X86_64:#define __SIZEOF_SIZE_T__ 8
3373// X86_64:#define __SIZEOF_WCHAR_T__ 4
3374// X86_64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003375// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00003376// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00003377// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00003378// X86_64:#define __SSE2_MATH__ 1
3379// X86_64:#define __SSE2__ 1
3380// X86_64:#define __SSE_MATH__ 1
3381// X86_64:#define __SSE__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00003382// X86_64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00003383// X86_64:#define __USER_LABEL_PREFIX__ _
3384// X86_64:#define __WCHAR_MAX__ 2147483647
3385// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00003386// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003387// X86_64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00003388// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00003389// X86_64:#define __amd64 1
3390// X86_64:#define __amd64__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00003391// X86_64:#define __x86_64 1
3392// X86_64:#define __x86_64__ 1
3393//
Douglas Gregore6d6e512011-01-12 21:19:25 +00003394// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -check-prefix X86_64-LINUX %s
3395//
3396// X86_64-LINUX:#define _LP64 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003397// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00003398// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
3399// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
3400// X86_64-LINUX:#define __CHAR_BIT__ 8
3401// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3402// X86_64-LINUX:#define __DBL_DIG__ 15
3403// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
3404// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
3405// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
3406// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
3407// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
3408// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
3409// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
3410// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
3411// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
3412// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
3413// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
3414// X86_64-LINUX:#define __DECIMAL_DIG__ 21
3415// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3416// X86_64-LINUX:#define __FLT_DIG__ 6
3417// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
3418// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
3419// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
3420// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
3421// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
3422// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
3423// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
3424// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
3425// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
3426// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
3427// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
3428// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
3429// X86_64-LINUX:#define __FLT_RADIX__ 2
3430// X86_64-LINUX:#define __INT16_TYPE__ short
3431// X86_64-LINUX:#define __INT32_TYPE__ int
3432// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
3433// X86_64-LINUX:#define __INT64_TYPE__ long int
3434// X86_64-LINUX:#define __INT8_TYPE__ char
3435// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
3436// X86_64-LINUX:#define __INTMAX_TYPE__ long int
3437// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
3438// X86_64-LINUX:#define __INTPTR_TYPE__ long int
3439// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
3440// X86_64-LINUX:#define __INT_MAX__ 2147483647
3441// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
3442// X86_64-LINUX:#define __LDBL_DIG__ 18
3443// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
3444// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
3445// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
3446// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
3447// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
3448// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
3449// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
3450// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
3451// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
3452// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
3453// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
3454// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
3455// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
3456// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
3457// X86_64-LINUX:#define __LP64__ 1
3458// X86_64-LINUX:#define __MMX__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00003459// X86_64-LINUX:#define __NO_MATH_INLINES 1
3460// X86_64-LINUX:#define __POINTER_WIDTH__ 64
3461// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
3462// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
3463// X86_64-LINUX:#define __REGISTER_PREFIX__
3464// X86_64-LINUX:#define __SCHAR_MAX__ 127
3465// X86_64-LINUX:#define __SHRT_MAX__ 32767
3466// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
3467// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
3468// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
3469// X86_64-LINUX:#define __SIZEOF_INT__ 4
3470// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
3471// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
3472// X86_64-LINUX:#define __SIZEOF_LONG__ 8
3473// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
3474// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
3475// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
3476// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
3477// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
3478// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003479// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00003480// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
3481// X86_64-LINUX:#define __SIZE_WIDTH__ 64
3482// X86_64-LINUX:#define __SSE2_MATH__ 1
3483// X86_64-LINUX:#define __SSE2__ 1
3484// X86_64-LINUX:#define __SSE_MATH__ 1
3485// X86_64-LINUX:#define __SSE__ 1
3486// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
3487// X86_64-LINUX:#define __USER_LABEL_PREFIX__
3488// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
3489// X86_64-LINUX:#define __WCHAR_TYPE__ int
3490// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
3491// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
3492// X86_64-LINUX:#define __WINT_WIDTH__ 32
3493// X86_64-LINUX:#define __amd64 1
3494// X86_64-LINUX:#define __amd64__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00003495// X86_64-LINUX:#define __x86_64 1
3496// X86_64-LINUX:#define __x86_64__ 1
3497//
Ed Schoutend0621462013-09-29 07:54:52 +00003498// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-unknown-freebsd9.1 < /dev/null | FileCheck -check-prefix X86_64-FREEBSD %s
3499//
3500// X86_64-FREEBSD:#define __FreeBSD__ 9
3501// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
3502// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
3503//
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003504// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-netbsd < /dev/null | FileCheck -check-prefix X86_64-NETBSD %s
3505//
3506// X86_64-NETBSD:#define _LP64 1
3507// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3508// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
3509// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
3510// X86_64-NETBSD:#define __CHAR_BIT__ 8
3511// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3512// X86_64-NETBSD:#define __DBL_DIG__ 15
3513// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
3514// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
3515// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
3516// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
3517// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
3518// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
3519// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
3520// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
3521// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
3522// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
3523// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
3524// X86_64-NETBSD:#define __DECIMAL_DIG__ 21
3525// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3526// X86_64-NETBSD:#define __FLT_DIG__ 6
3527// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
3528// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
3529// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
3530// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
3531// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
3532// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
3533// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
3534// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
3535// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
3536// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
3537// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
3538// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
3539// X86_64-NETBSD:#define __FLT_RADIX__ 2
3540// X86_64-NETBSD:#define __INT16_TYPE__ short
3541// X86_64-NETBSD:#define __INT32_TYPE__ int
3542// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
3543// X86_64-NETBSD:#define __INT64_TYPE__ long int
3544// X86_64-NETBSD:#define __INT8_TYPE__ char
3545// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
3546// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
3547// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
3548// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
3549// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
3550// X86_64-NETBSD:#define __INT_MAX__ 2147483647
3551// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
3552// X86_64-NETBSD:#define __LDBL_DIG__ 18
3553// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
3554// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
3555// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
3556// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
3557// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
3558// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
3559// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
3560// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
3561// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
3562// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
3563// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
3564// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
3565// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
3566// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
3567// X86_64-NETBSD:#define __LP64__ 1
3568// X86_64-NETBSD:#define __MMX__ 1
3569// X86_64-NETBSD:#define __NO_MATH_INLINES 1
3570// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
3571// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
3572// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
3573// X86_64-NETBSD:#define __REGISTER_PREFIX__
3574// X86_64-NETBSD:#define __SCHAR_MAX__ 127
3575// X86_64-NETBSD:#define __SHRT_MAX__ 32767
3576// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
3577// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
3578// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
3579// X86_64-NETBSD:#define __SIZEOF_INT__ 4
3580// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
3581// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
3582// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
3583// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
3584// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
3585// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
3586// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
3587// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
3588// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
3589// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
3590// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
3591// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
3592// X86_64-NETBSD:#define __SSE2_MATH__ 1
3593// X86_64-NETBSD:#define __SSE2__ 1
3594// X86_64-NETBSD:#define __SSE_MATH__ 1
3595// X86_64-NETBSD:#define __SSE__ 1
3596// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
3597// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
3598// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
3599// X86_64-NETBSD:#define __WCHAR_TYPE__ int
3600// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
3601// X86_64-NETBSD:#define __WINT_TYPE__ int
3602// X86_64-NETBSD:#define __WINT_WIDTH__ 32
3603// X86_64-NETBSD:#define __amd64 1
3604// X86_64-NETBSD:#define __amd64__ 1
3605// X86_64-NETBSD:#define __x86_64 1
3606// X86_64-NETBSD:#define __x86_64__ 1
3607//
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00003608// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-none < /dev/null | FileCheck -check-prefix SPARCV9 %s
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00003609// SPARCV9:#define __INT64_TYPE__ long int
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00003610// SPARCV9:#define __INTMAX_TYPE__ long int
3611// SPARCV9:#define __INTPTR_TYPE__ long int
3612// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
3613// SPARCV9:#define __LP64__ 1
3614// SPARCV9:#define __SIZEOF_LONG__ 8
3615// SPARCV9:#define __SIZEOF_POINTER__ 8
3616//
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00003617// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-openbsd < /dev/null | FileCheck -check-prefix SPARC64-OBSD %s
3618// SPARC64-OBSD:#define __INT64_TYPE__ long long int
3619// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
3620// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
3621//
Sylvestre Ledrufd7cd3552013-09-06 14:53:07 +00003622// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-kfreebsd-gnu < /dev/null | FileCheck -check-prefix KFREEBSD-DEFINE %s
3623// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
3624// KFREEBSD-DEFINE:#define __GLIBC__ 1
3625//
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00003626// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i686-pc-kfreebsd-gnu < /dev/null | FileCheck -check-prefix KFREEBSDI686-DEFINE %s
3627// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
3628// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
3629//
David Chisnallb601c962012-07-03 20:49:52 +00003630// RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -check-prefix GNUSOURCE %s
Douglas Gregord2b896a2010-04-16 06:31:05 +00003631// GNUSOURCE:#define _GNU_SOURCE 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00003632//
Dan Gohman04f87202010-05-28 00:27:15 +00003633// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -check-prefix NORTTI %s
3634// NORTTI: __GXX_ABI_VERSION
3635// NORTTI-NOT:#define __GXX_RTTI
3636// NORTTI: __STDC__
Evgeniy Stepanov94dc4c92012-04-26 12:08:09 +00003637//
3638// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -check-prefix ANDROID %s
3639// ANDROID: __ANDROID__ 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00003640//
Roman Divacky13b586f2013-07-03 19:45:54 +00003641// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-freebsd < /dev/null | FileCheck -check-prefix PPC64-FREEBSD %s
3642// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00003643//
3644// RUN: %clang_cc1 -E -dM -ffreestanding -triple=xcore-none-none < /dev/null | FileCheck -check-prefix XCORE %s
Robert Lytton2c942c62014-03-10 12:06:29 +00003645// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3646// XCORE:#define __LITTLE_ENDIAN__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00003647// XCORE:#define __XS1B__ 1