blob: 8283671b6636fb2d18f5afcd082f6a59f032e6f0 [file] [log] [blame]
Daniel Dunbara5728872009-12-15 20:14:24 +00001// RUN: %clang_cc1 -E -dM -x assembler-with-cpp < /dev/null | FileCheck -check-prefix ASM %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00002//
3// ASM:#define __ASSEMBLER__ 1
4//
5//
Daniel Dunbara5728872009-12-15 20:14:24 +00006// RUN: %clang_cc1 -fblocks -E -dM < /dev/null | FileCheck -check-prefix BLOCKS %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00007//
8// BLOCKS:#define __BLOCKS__ 1
9// BLOCKS:#define __block __attribute__((__blocks__(byref)))
10//
11//
Daniel Dunbara5728872009-12-15 20:14:24 +000012// RUN: %clang_cc1 -x c++ -std=c++0x -E -dM < /dev/null | FileCheck -check-prefix CXX0X %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000013//
Chris Lattnerbceaf862009-10-29 04:55:36 +000014// CXX0X:#define __DEPRECATED 1
15// CXX0X:#define __GNUG__
16// CXX0X:#define __GXX_EXPERIMENTAL_CXX0X__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +000017// CXX0X:#define __GXX_RTTI 1
Chris Lattnerbceaf862009-10-29 04:55:36 +000018// CXX0X:#define __GXX_WEAK__ 1
19// CXX0X:#define __cplusplus 199711L
20// CXX0X:#define __private_extern__ extern
21//
22//
Daniel Dunbara5728872009-12-15 20:14:24 +000023// RUN: %clang_cc1 -x c++ -std=c++98 -E -dM < /dev/null | FileCheck -check-prefix CXX98 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000024//
Chris Lattnerbceaf862009-10-29 04:55:36 +000025// CXX98:#define __DEPRECATED 1
26// CXX98:#define __GNUG__
Dan Gohmancfeac342010-05-28 00:27:15 +000027// CXX98:#define __GXX_RTTI 1
Chris Lattnerbceaf862009-10-29 04:55:36 +000028// CXX98:#define __GXX_WEAK__ 1
29// CXX98:#define __cplusplus 199711L
30// CXX98:#define __private_extern__ extern
31//
32//
Daniel Dunbara5728872009-12-15 20:14:24 +000033// RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -check-prefix C99 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000034//
35// C99:#define __STDC_VERSION__ 199901L
36// C99:#define __STRICT_ANSI__ 1
37//
38//
Daniel Dunbara5728872009-12-15 20:14:24 +000039// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix COMMON %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000040//
41// COMMON:#define __CONSTANT_CFSTRINGS__ 1
42// COMMON:#define __FINITE_MATH_ONLY__ 0
43// COMMON:#define __GNUC_MINOR__
44// COMMON:#define __GNUC_PATCHLEVEL__
45// COMMON:#define __GNUC_STDC_INLINE__ 1
46// COMMON:#define __GNUC__
47// COMMON:#define __GXX_ABI_VERSION
48// COMMON:#define __STDC_HOSTED__ 1
49// COMMON:#define __STDC_VERSION__
50// COMMON:#define __STDC__ 1
51// COMMON:#define __VERSION__
52// COMMON:#define __clang__ 1
Daniel Dunbarc4b8e922010-06-25 23:34:47 +000053// COMMON:#define __clang_major__ {{[0-9]+}}
54// COMMON:#define __clang_minor__ {{[0-9]+}}
55// COMMON:#define __clang_patchlevel__ {{[0-9]+}}
Douglas Gregorcf00ac82010-04-30 03:07:23 +000056// COMMON:#define __clang_version__
Chris Lattnerbceaf862009-10-29 04:55:36 +000057// COMMON:#define __llvm__ 1
58//
59//
Daniel Dunbara5728872009-12-15 20:14:24 +000060// RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -check-prefix FREESTANDING %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000061// FREESTANDING:#define __STDC_HOSTED__ 0
62//
Daniel Dunbara5728872009-12-15 20:14:24 +000063// RUN: %clang_cc1 -x c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -check-prefix GXX98 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000064//
Chris Lattnerbceaf862009-10-29 04:55:36 +000065// GXX98:#define __DEPRECATED 1
66// GXX98:#define __GNUG__
67// GXX98:#define __GXX_WEAK__ 1
68// GXX98:#define __cplusplus 1
69// GXX98:#define __private_extern__ extern
70//
71//
Daniel Dunbara5728872009-12-15 20:14:24 +000072// RUN: %clang_cc1 -std=iso9899:199409 -E -dM < /dev/null | FileCheck -check-prefix C94 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000073//
74// C94:#define __STDC_VERSION__ 199409L
75//
76//
Daniel Dunbara5728872009-12-15 20:14:24 +000077// RUN: %clang_cc1 -fms-extensions -E -dM < /dev/null | FileCheck -check-prefix MSEXT %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000078//
79// MSEXT-NOT:#define __STDC__
80// MSEXT:#define __int16 __INT16_TYPE__
81// MSEXT:#define __int32 __INT32_TYPE__
82// MSEXT:#define __int64 __INT64_TYPE__
83// MSEXT:#define __int8 __INT8_TYPE__
84//
85//
Daniel Dunbara5728872009-12-15 20:14:24 +000086// RUN: %clang_cc1 -x objective-c -E -dM < /dev/null | FileCheck -check-prefix OBJC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000087//
88// OBJC:#define OBJC_NEW_PROPERTIES 1
Daniel Dunbarc5a97ec2009-11-17 07:07:28 +000089// OBJC:#define __NEXT_RUNTIME__ 1
Chris Lattnerbceaf862009-10-29 04:55:36 +000090// OBJC:#define __OBJC__ 1
91//
Daniel Dunbarc5a97ec2009-11-17 07:07:28 +000092//
Daniel Dunbara5728872009-12-15 20:14:24 +000093// RUN: %clang_cc1 -x objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -check-prefix OBJCGC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000094//
95// OBJCGC:#define __OBJC_GC__ 1
96//
97//
Daniel Dunbara5728872009-12-15 20:14:24 +000098// RUN: %clang_cc1 -x objective-c -fobjc-nonfragile-abi -E -dM < /dev/null | FileCheck -check-prefix NONFRAGILE %s
Chris Lattnerbceaf862009-10-29 04:55:36 +000099//
100// NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
101// NONFRAGILE:#define __OBJC2__ 1
102//
103//
Daniel Dunbara5728872009-12-15 20:14:24 +0000104// RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -check-prefix O1 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000105//
106// O1:#define __OPTIMIZE__ 1
107//
108//
Daniel Dunbara5728872009-12-15 20:14:24 +0000109// RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -check-prefix PASCAL %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000110//
111// PASCAL:#define __PASCAL_STRINGS__ 1
112//
113//
Daniel Dunbara5728872009-12-15 20:14:24 +0000114// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -check-prefix SCHAR %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000115//
116// SCHAR:#define __STDC__ 1
117// SCHAR-NOT:#define __UNSIGNED_CHAR__
118// SCHAR:#define __clang__ 1
119//
Daniel Dunbara5728872009-12-15 20:14:24 +0000120// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -check-prefix ARM %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000121//
122// ARM:#define __APCS_32__ 1
123// ARM:#define __ARMEL__ 1
Daniel Dunbareac7c532009-12-18 18:42:37 +0000124// ARM:#define __ARM_ARCH_6J__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000125// ARM:#define __CHAR16_TYPE__ unsigned short
126// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000127// ARM:#define __CHAR_BIT__ 8
128// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
129// ARM:#define __DBL_DIG__ 15
130// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
131// ARM:#define __DBL_HAS_DENORM__ 1
132// ARM:#define __DBL_HAS_INFINITY__ 1
133// ARM:#define __DBL_HAS_QUIET_NAN__ 1
134// ARM:#define __DBL_MANT_DIG__ 53
135// ARM:#define __DBL_MAX_10_EXP__ 308
136// ARM:#define __DBL_MAX_EXP__ 1024
137// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
138// ARM:#define __DBL_MIN_10_EXP__ (-307)
139// ARM:#define __DBL_MIN_EXP__ (-1021)
140// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
141// ARM:#define __DECIMAL_DIG__ 17
142// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
143// ARM:#define __FLT_DIG__ 6
144// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
145// ARM:#define __FLT_EVAL_METHOD__ 0
146// ARM:#define __FLT_HAS_DENORM__ 1
147// ARM:#define __FLT_HAS_INFINITY__ 1
148// ARM:#define __FLT_HAS_QUIET_NAN__ 1
149// ARM:#define __FLT_MANT_DIG__ 24
150// ARM:#define __FLT_MAX_10_EXP__ 38
151// ARM:#define __FLT_MAX_EXP__ 128
152// ARM:#define __FLT_MAX__ 3.40282347e+38F
153// ARM:#define __FLT_MIN_10_EXP__ (-37)
154// ARM:#define __FLT_MIN_EXP__ (-125)
155// ARM:#define __FLT_MIN__ 1.17549435e-38F
156// ARM:#define __FLT_RADIX__ 2
157// ARM:#define __INT16_TYPE__ short
158// ARM:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000159// ARM:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000160// ARM:#define __INT64_TYPE__ long long int
161// ARM:#define __INT8_TYPE__ char
162// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000163// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000164// ARM:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000165// ARM:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000166// ARM:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000167// ARM:#define __INT_MAX__ 2147483647
168// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
169// ARM:#define __LDBL_DIG__ 15
170// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16
171// ARM:#define __LDBL_HAS_DENORM__ 1
172// ARM:#define __LDBL_HAS_INFINITY__ 1
173// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
174// ARM:#define __LDBL_MANT_DIG__ 53
175// ARM:#define __LDBL_MAX_10_EXP__ 308
176// ARM:#define __LDBL_MAX_EXP__ 1024
177// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308
178// ARM:#define __LDBL_MIN_10_EXP__ (-307)
179// ARM:#define __LDBL_MIN_EXP__ (-1021)
180// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308
181// ARM:#define __LITTLE_ENDIAN__ 1
182// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
183// ARM:#define __LONG_MAX__ 2147483647L
184// ARM:#define __NO_INLINE__ 1
185// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000186// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000187// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +0000188// ARM:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000189// ARM:#define __SCHAR_MAX__ 127
190// ARM:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000191// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000192// ARM:#define __SIZEOF_DOUBLE__ 8
193// ARM:#define __SIZEOF_FLOAT__ 4
194// ARM:#define __SIZEOF_INT__ 4
195// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
196// ARM:#define __SIZEOF_LONG_LONG__ 8
197// ARM:#define __SIZEOF_LONG__ 4
198// ARM:#define __SIZEOF_POINTER__ 4
199// ARM:#define __SIZEOF_PTRDIFF_T__ 4
200// ARM:#define __SIZEOF_SHORT__ 2
201// ARM:#define __SIZEOF_SIZE_T__ 4
202// ARM:#define __SIZEOF_WCHAR_T__ 4
203// ARM:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000204// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000205// ARM:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000206// ARM:#define __THUMB_INTERWORK__ 1
Ken Dyck8241d732009-11-19 13:18:59 +0000207// ARM:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000208// ARM:#define __USER_LABEL_PREFIX__ _
Chris Lattnerbceaf862009-10-29 04:55:36 +0000209// ARM:#define __WCHAR_MAX__ 2147483647
210// ARM:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000211// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000212// ARM:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000213// ARM:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000214// ARM:#define __arm 1
215// ARM:#define __arm__ 1
216//
Daniel Dunbara5728872009-12-15 20:14:24 +0000217// RUN: %clang_cc1 -E -dM -ffreestanding -triple=bfin-none-none < /dev/null | FileCheck -check-prefix BFIN %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000218//
219// BFIN:#define BFIN 1
220// BFIN:#define __ADSPBLACKFIN__ 1
221// BFIN:#define __ADSPLPBLACKFIN__ 1
222// BFIN:#define __BFIN 1
223// BFIN:#define __BFIN__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000224// BFIN:#define __CHAR16_TYPE__ unsigned short
225// BFIN:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000226// BFIN:#define __CHAR_BIT__ 8
227// BFIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
228// BFIN:#define __DBL_DIG__ 15
229// BFIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
230// BFIN:#define __DBL_HAS_DENORM__ 1
231// BFIN:#define __DBL_HAS_INFINITY__ 1
232// BFIN:#define __DBL_HAS_QUIET_NAN__ 1
233// BFIN:#define __DBL_MANT_DIG__ 53
234// BFIN:#define __DBL_MAX_10_EXP__ 308
235// BFIN:#define __DBL_MAX_EXP__ 1024
236// BFIN:#define __DBL_MAX__ 1.7976931348623157e+308
237// BFIN:#define __DBL_MIN_10_EXP__ (-307)
238// BFIN:#define __DBL_MIN_EXP__ (-1021)
239// BFIN:#define __DBL_MIN__ 2.2250738585072014e-308
240// BFIN:#define __DECIMAL_DIG__ 17
241// BFIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
242// BFIN:#define __FLT_DIG__ 6
243// BFIN:#define __FLT_EPSILON__ 1.19209290e-7F
244// BFIN:#define __FLT_EVAL_METHOD__ 0
245// BFIN:#define __FLT_HAS_DENORM__ 1
246// BFIN:#define __FLT_HAS_INFINITY__ 1
247// BFIN:#define __FLT_HAS_QUIET_NAN__ 1
248// BFIN:#define __FLT_MANT_DIG__ 24
249// BFIN:#define __FLT_MAX_10_EXP__ 38
250// BFIN:#define __FLT_MAX_EXP__ 128
251// BFIN:#define __FLT_MAX__ 3.40282347e+38F
252// BFIN:#define __FLT_MIN_10_EXP__ (-37)
253// BFIN:#define __FLT_MIN_EXP__ (-125)
254// BFIN:#define __FLT_MIN__ 1.17549435e-38F
255// BFIN:#define __FLT_RADIX__ 2
256// BFIN:#define __INT16_TYPE__ short
257// BFIN:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000258// BFIN:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000259// BFIN:#define __INT64_TYPE__ long long int
260// BFIN:#define __INT8_TYPE__ char
261// BFIN:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000262// BFIN:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000263// BFIN:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000264// BFIN:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000265// BFIN:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000266// BFIN:#define __INT_MAX__ 2147483647
267// BFIN:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
268// BFIN:#define __LDBL_DIG__ 15
269// BFIN:#define __LDBL_EPSILON__ 2.2204460492503131e-16
270// BFIN:#define __LDBL_HAS_DENORM__ 1
271// BFIN:#define __LDBL_HAS_INFINITY__ 1
272// BFIN:#define __LDBL_HAS_QUIET_NAN__ 1
273// BFIN:#define __LDBL_MANT_DIG__ 53
274// BFIN:#define __LDBL_MAX_10_EXP__ 308
275// BFIN:#define __LDBL_MAX_EXP__ 1024
276// BFIN:#define __LDBL_MAX__ 1.7976931348623157e+308
277// BFIN:#define __LDBL_MIN_10_EXP__ (-307)
278// BFIN:#define __LDBL_MIN_EXP__ (-1021)
279// BFIN:#define __LDBL_MIN__ 2.2250738585072014e-308
280// BFIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
281// BFIN:#define __LONG_MAX__ 2147483647L
282// BFIN:#define __NO_INLINE__ 1
283// BFIN:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000284// BFIN:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000285// BFIN:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000286// BFIN:#define __SCHAR_MAX__ 127
287// BFIN:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000288// BFIN:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000289// BFIN:#define __SIZEOF_DOUBLE__ 8
290// BFIN:#define __SIZEOF_FLOAT__ 4
291// BFIN:#define __SIZEOF_INT__ 4
292// BFIN:#define __SIZEOF_LONG_DOUBLE__ 8
293// BFIN:#define __SIZEOF_LONG_LONG__ 8
294// BFIN:#define __SIZEOF_LONG__ 4
295// BFIN:#define __SIZEOF_POINTER__ 4
296// BFIN:#define __SIZEOF_PTRDIFF_T__ 4
297// BFIN:#define __SIZEOF_SHORT__ 2
298// BFIN:#define __SIZEOF_SIZE_T__ 4
299// BFIN:#define __SIZEOF_WCHAR_T__ 4
300// BFIN:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000301// BFIN:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000302// BFIN:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000303// BFIN:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000304// BFIN:#define __USER_LABEL_PREFIX__ _
305// BFIN:#define __WCHAR_MAX__ 2147483647
306// BFIN:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000307// BFIN:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000308// BFIN:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000309// BFIN:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000310// BFIN:#define __bfin 1
311// BFIN:#define __bfin__ 1
312// BFIN:#define bfin 1
313//
Daniel Dunbara5728872009-12-15 20:14:24 +0000314// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -check-prefix I386 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000315//
Dan Gohmancfeac342010-05-28 00:27:15 +0000316// I386:#define __CHAR16_TYPE__ unsigned short
317// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000318// I386:#define __CHAR_BIT__ 8
319// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
320// I386:#define __DBL_DIG__ 15
321// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
322// I386:#define __DBL_HAS_DENORM__ 1
323// I386:#define __DBL_HAS_INFINITY__ 1
324// I386:#define __DBL_HAS_QUIET_NAN__ 1
325// I386:#define __DBL_MANT_DIG__ 53
326// I386:#define __DBL_MAX_10_EXP__ 308
327// I386:#define __DBL_MAX_EXP__ 1024
328// I386:#define __DBL_MAX__ 1.7976931348623157e+308
329// I386:#define __DBL_MIN_10_EXP__ (-307)
330// I386:#define __DBL_MIN_EXP__ (-1021)
331// I386:#define __DBL_MIN__ 2.2250738585072014e-308
332// I386:#define __DECIMAL_DIG__ 21
333// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
334// I386:#define __FLT_DIG__ 6
335// I386:#define __FLT_EPSILON__ 1.19209290e-7F
336// I386:#define __FLT_EVAL_METHOD__ 0
337// I386:#define __FLT_HAS_DENORM__ 1
338// I386:#define __FLT_HAS_INFINITY__ 1
339// I386:#define __FLT_HAS_QUIET_NAN__ 1
340// I386:#define __FLT_MANT_DIG__ 24
341// I386:#define __FLT_MAX_10_EXP__ 38
342// I386:#define __FLT_MAX_EXP__ 128
343// I386:#define __FLT_MAX__ 3.40282347e+38F
344// I386:#define __FLT_MIN_10_EXP__ (-37)
345// I386:#define __FLT_MIN_EXP__ (-125)
346// I386:#define __FLT_MIN__ 1.17549435e-38F
347// I386:#define __FLT_RADIX__ 2
348// I386:#define __INT16_TYPE__ short
349// I386:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000350// I386:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000351// I386:#define __INT64_TYPE__ long long int
352// I386:#define __INT8_TYPE__ char
353// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000354// I386:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000355// I386:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000356// I386:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000357// I386:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000358// I386:#define __INT_MAX__ 2147483647
359// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
360// I386:#define __LDBL_DIG__ 18
361// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
362// I386:#define __LDBL_HAS_DENORM__ 1
363// I386:#define __LDBL_HAS_INFINITY__ 1
364// I386:#define __LDBL_HAS_QUIET_NAN__ 1
365// I386:#define __LDBL_MANT_DIG__ 64
366// I386:#define __LDBL_MAX_10_EXP__ 4932
367// I386:#define __LDBL_MAX_EXP__ 16384
368// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
369// I386:#define __LDBL_MIN_10_EXP__ (-4931)
370// I386:#define __LDBL_MIN_EXP__ (-16381)
371// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
372// I386:#define __LITTLE_ENDIAN__ 1
373// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
374// I386:#define __LONG_MAX__ 2147483647L
375// I386:#define __NO_INLINE__ 1
376// I386:#define __NO_MATH_INLINES 1
377// I386:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000378// I386:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000379// I386:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000380// I386:#define __REGISTER_PREFIX__
381// I386:#define __SCHAR_MAX__ 127
382// I386:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000383// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000384// I386:#define __SIZEOF_DOUBLE__ 8
385// I386:#define __SIZEOF_FLOAT__ 4
386// I386:#define __SIZEOF_INT__ 4
387// I386:#define __SIZEOF_LONG_DOUBLE__ 12
388// I386:#define __SIZEOF_LONG_LONG__ 8
389// I386:#define __SIZEOF_LONG__ 4
390// I386:#define __SIZEOF_POINTER__ 4
391// I386:#define __SIZEOF_PTRDIFF_T__ 4
392// I386:#define __SIZEOF_SHORT__ 2
393// I386:#define __SIZEOF_SIZE_T__ 4
394// I386:#define __SIZEOF_WCHAR_T__ 4
395// I386:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000396// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000397// I386:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000398// I386:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000399// I386:#define __USER_LABEL_PREFIX__ _
400// I386:#define __WCHAR_MAX__ 2147483647
401// I386:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000402// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000403// I386:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000404// I386:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000405// I386:#define __i386 1
406// I386:#define __i386__ 1
407// I386:#define __nocona 1
408// I386:#define __nocona__ 1
409// I386:#define __tune_nocona__ 1
410// I386:#define i386 1
411//
Daniel Dunbara5728872009-12-15 20:14:24 +0000412// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -check-prefix MSP430 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000413//
414// MSP430:#define MSP430 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000415// MSP430:#define __CHAR16_TYPE__ unsigned short
416// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000417// MSP430:#define __CHAR_BIT__ 8
418// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
419// MSP430:#define __DBL_DIG__ 15
420// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
421// MSP430:#define __DBL_HAS_DENORM__ 1
422// MSP430:#define __DBL_HAS_INFINITY__ 1
423// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
424// MSP430:#define __DBL_MANT_DIG__ 53
425// MSP430:#define __DBL_MAX_10_EXP__ 308
426// MSP430:#define __DBL_MAX_EXP__ 1024
427// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
428// MSP430:#define __DBL_MIN_10_EXP__ (-307)
429// MSP430:#define __DBL_MIN_EXP__ (-1021)
430// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
431// MSP430:#define __DECIMAL_DIG__ 17
432// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
433// MSP430:#define __FLT_DIG__ 6
434// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
435// MSP430:#define __FLT_EVAL_METHOD__ 0
436// MSP430:#define __FLT_HAS_DENORM__ 1
437// MSP430:#define __FLT_HAS_INFINITY__ 1
438// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
439// MSP430:#define __FLT_MANT_DIG__ 24
440// MSP430:#define __FLT_MAX_10_EXP__ 38
441// MSP430:#define __FLT_MAX_EXP__ 128
442// MSP430:#define __FLT_MAX__ 3.40282347e+38F
443// MSP430:#define __FLT_MIN_10_EXP__ (-37)
444// MSP430:#define __FLT_MIN_EXP__ (-125)
445// MSP430:#define __FLT_MIN__ 1.17549435e-38F
446// MSP430:#define __FLT_RADIX__ 2
447// MSP430:#define __INT16_TYPE__ short
Ken Dyckeef22ef2009-11-16 16:36:33 +0000448// MSP430:#define __INT32_C_SUFFIX__ L
Chris Lattnerdcdd2a02009-11-12 08:08:27 +0000449// MSP430:#define __INT32_TYPE__ long int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000450// MSP430:#define __INT8_TYPE__ char
451// MSP430:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +0000452// MSP430:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +0000453// MSP430:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000454// MSP430:#define __INTPTR_TYPE__ short
Ken Dyckd896e1a2009-11-18 20:05:48 +0000455// MSP430:#define __INTPTR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000456// MSP430:#define __INT_MAX__ 32767
457// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
458// MSP430:#define __LDBL_DIG__ 15
459// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16
460// MSP430:#define __LDBL_HAS_DENORM__ 1
461// MSP430:#define __LDBL_HAS_INFINITY__ 1
462// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
463// MSP430:#define __LDBL_MANT_DIG__ 53
464// MSP430:#define __LDBL_MAX_10_EXP__ 308
465// MSP430:#define __LDBL_MAX_EXP__ 1024
466// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308
467// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
468// MSP430:#define __LDBL_MIN_EXP__ (-1021)
469// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308
Anton Korobeynikov79bff432010-01-14 21:36:52 +0000470// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000471// MSP430:#define __LONG_MAX__ 2147483647L
472// MSP430:#define __MSP430__ 1
473// MSP430:#define __NO_INLINE__ 1
474// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000475// MSP430:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000476// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000477// MSP430:#define __SCHAR_MAX__ 127
478// MSP430:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000479// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000480// MSP430:#define __SIZEOF_DOUBLE__ 8
481// MSP430:#define __SIZEOF_FLOAT__ 4
482// MSP430:#define __SIZEOF_INT__ 2
483// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
484// MSP430:#define __SIZEOF_LONG_LONG__ 8
485// MSP430:#define __SIZEOF_LONG__ 4
486// MSP430:#define __SIZEOF_POINTER__ 2
487// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
488// MSP430:#define __SIZEOF_SHORT__ 2
489// MSP430:#define __SIZEOF_SIZE_T__ 2
490// MSP430:#define __SIZEOF_WCHAR_T__ 2
491// MSP430:#define __SIZEOF_WINT_T__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +0000492// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000493// MSP430:#define __SIZE_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000494// MSP430:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000495// MSP430:#define __USER_LABEL_PREFIX__ _
Chris Lattner91846462009-11-12 08:04:33 +0000496// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnerbceaf862009-10-29 04:55:36 +0000497// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000498// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000499// MSP430:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000500// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000501// MSP430:#define __clang__ 1
502//
Daniel Dunbara5728872009-12-15 20:14:24 +0000503// RUN: %clang_cc1 -E -dM -ffreestanding -triple=pic16-none-none < /dev/null | FileCheck -check-prefix PIC16 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000504//
Dan Gohmancfeac342010-05-28 00:27:15 +0000505// PIC16:#define __CHAR16_TYPE__ unsigned short
506// PIC16:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000507// PIC16:#define __CHAR_BIT__ 8
508// PIC16:#define __DBL_DENORM_MIN__ 1.40129846e-45F
509// PIC16:#define __DBL_DIG__ 6
510// PIC16:#define __DBL_EPSILON__ 1.19209290e-7F
511// PIC16:#define __DBL_HAS_DENORM__ 1
512// PIC16:#define __DBL_HAS_INFINITY__ 1
513// PIC16:#define __DBL_HAS_QUIET_NAN__ 1
514// PIC16:#define __DBL_MANT_DIG__ 24
515// PIC16:#define __DBL_MAX_10_EXP__ 38
516// PIC16:#define __DBL_MAX_EXP__ 128
517// PIC16:#define __DBL_MAX__ 3.40282347e+38F
518// PIC16:#define __DBL_MIN_10_EXP__ (-37)
519// PIC16:#define __DBL_MIN_EXP__ (-125)
520// PIC16:#define __DBL_MIN__ 1.17549435e-38F
521// PIC16:#define __DECIMAL_DIG__ -1
522// PIC16:#define __FLT_DENORM_MIN__ 1.40129846e-45F
523// PIC16:#define __FLT_DIG__ 6
524// PIC16:#define __FLT_EPSILON__ 1.19209290e-7F
525// PIC16:#define __FLT_EVAL_METHOD__ 0
526// PIC16:#define __FLT_HAS_DENORM__ 1
527// PIC16:#define __FLT_HAS_INFINITY__ 1
528// PIC16:#define __FLT_HAS_QUIET_NAN__ 1
529// PIC16:#define __FLT_MANT_DIG__ 24
530// PIC16:#define __FLT_MAX_10_EXP__ 38
531// PIC16:#define __FLT_MAX_EXP__ 128
532// PIC16:#define __FLT_MAX__ 3.40282347e+38F
533// PIC16:#define __FLT_MIN_10_EXP__ (-37)
534// PIC16:#define __FLT_MIN_EXP__ (-125)
535// PIC16:#define __FLT_MIN__ 1.17549435e-38F
536// PIC16:#define __FLT_RADIX__ 2
537// PIC16:#define __INT16_TYPE__ short
Ken Dyckeef22ef2009-11-16 16:36:33 +0000538// PIC16:#define __INT32_C_SUFFIX__ L
Chris Lattnerdcdd2a02009-11-12 08:08:27 +0000539// PIC16:#define __INT32_TYPE__ long int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000540// PIC16:#define __INT8_TYPE__ char
541// PIC16:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +0000542// PIC16:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +0000543// PIC16:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000544// PIC16:#define __INTPTR_TYPE__ short
Ken Dyckd896e1a2009-11-18 20:05:48 +0000545// PIC16:#define __INTPTR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000546// PIC16:#define __INT_MAX__ 32767
547// PIC16:#define __LDBL_DENORM_MIN__ 1.40129846e-45F
548// PIC16:#define __LDBL_DIG__ 6
549// PIC16:#define __LDBL_EPSILON__ 1.19209290e-7F
550// PIC16:#define __LDBL_HAS_DENORM__ 1
551// PIC16:#define __LDBL_HAS_INFINITY__ 1
552// PIC16:#define __LDBL_HAS_QUIET_NAN__ 1
553// PIC16:#define __LDBL_MANT_DIG__ 24
554// PIC16:#define __LDBL_MAX_10_EXP__ 38
555// PIC16:#define __LDBL_MAX_EXP__ 128
556// PIC16:#define __LDBL_MAX__ 3.40282347e+38F
557// PIC16:#define __LDBL_MIN_10_EXP__ (-37)
558// PIC16:#define __LDBL_MIN_EXP__ (-125)
559// PIC16:#define __LDBL_MIN__ 1.17549435e-38F
560// PIC16:#define __LONG_LONG_MAX__ 2147483647LL
561// PIC16:#define __LONG_MAX__ 2147483647L
562// PIC16:#define __NO_INLINE__ 1
Sanjiv Guptafcd302b2010-02-16 03:37:11 +0000563// PIC16:#define __PIC16 1
Chris Lattnerbceaf862009-10-29 04:55:36 +0000564// PIC16:#define __POINTER_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000565// PIC16:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000566// PIC16:#define __PTRDIFF_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000567// PIC16:#define __SCHAR_MAX__ 127
568// PIC16:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000569// PIC16:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000570// PIC16:#define __SIZEOF_DOUBLE__ 4
571// PIC16:#define __SIZEOF_FLOAT__ 4
572// PIC16:#define __SIZEOF_INT__ 2
573// PIC16:#define __SIZEOF_LONG_DOUBLE__ 4
574// PIC16:#define __SIZEOF_LONG_LONG__ 4
575// PIC16:#define __SIZEOF_LONG__ 4
576// PIC16:#define __SIZEOF_POINTER__ 2
577// PIC16:#define __SIZEOF_PTRDIFF_T__ 2
578// PIC16:#define __SIZEOF_SHORT__ 2
579// PIC16:#define __SIZEOF_SIZE_T__ 2
580// PIC16:#define __SIZEOF_WCHAR_T__ 2
581// PIC16:#define __SIZEOF_WINT_T__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +0000582// PIC16:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000583// PIC16:#define __SIZE_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000584// PIC16:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000585// PIC16:#define __USER_LABEL_PREFIX__ _
Chris Lattner91846462009-11-12 08:04:33 +0000586// PIC16:#define __WCHAR_MAX__ 32767
Chris Lattnerbceaf862009-10-29 04:55:36 +0000587// PIC16:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000588// PIC16:#define __WCHAR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000589// PIC16:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000590// PIC16:#define __WINT_WIDTH__ 16
Sanjiv Guptafcd302b2010-02-16 03:37:11 +0000591// PIC16:#define __address(Addr) __attribute__((section("Address="#Addr)))
Chris Lattnerbceaf862009-10-29 04:55:36 +0000592// PIC16:#define __clang__ 1
Sanjiv Guptafcd302b2010-02-16 03:37:11 +0000593// PIC16:#define __config(conf) asm("CONFIG "#conf)
594// PIC16:#define __idlocs(value) asm("__IDLOCS "#value)
Chris Lattnerbceaf862009-10-29 04:55:36 +0000595// PIC16:#define __llvm__ 1
596// PIC16:#define __pic16 1
Sanjiv Guptafcd302b2010-02-16 03:37:11 +0000597// PIC16:#define __section(SectName) __attribute__((section(SectName)))
598// PIC16:#define interrupt __attribute__((section("interrupt=0x4"))) __attribute__((used))
599// PIC16:#define near __attribute__((section("Address=NEAR")))
Chris Lattnerbceaf862009-10-29 04:55:36 +0000600// PIC16:#define ram __attribute__((address_space(0)))
601// PIC16:#define rom __attribute__((address_space(1)))
602//
Daniel Dunbara5728872009-12-15 20:14:24 +0000603// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix PPC64 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000604//
605// PPC64:#define _ARCH_PPC 1
606// PPC64:#define _ARCH_PPC64 1
607// PPC64:#define _BIG_ENDIAN 1
608// PPC64:#define _LP64 1
609// PPC64:#define __BIG_ENDIAN__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000610// PPC64:#define __CHAR16_TYPE__ unsigned short
611// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000612// PPC64:#define __CHAR_BIT__ 8
613// PPC64:#define __CHAR_UNSIGNED__ 1
614// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
615// PPC64:#define __DBL_DIG__ 15
616// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
617// PPC64:#define __DBL_HAS_DENORM__ 1
618// PPC64:#define __DBL_HAS_INFINITY__ 1
619// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
620// PPC64:#define __DBL_MANT_DIG__ 53
621// PPC64:#define __DBL_MAX_10_EXP__ 308
622// PPC64:#define __DBL_MAX_EXP__ 1024
623// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
624// PPC64:#define __DBL_MIN_10_EXP__ (-307)
625// PPC64:#define __DBL_MIN_EXP__ (-1021)
626// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
627// PPC64:#define __DECIMAL_DIG__ 17
628// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
629// PPC64:#define __FLT_DIG__ 6
630// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
631// PPC64:#define __FLT_EVAL_METHOD__ 0
632// PPC64:#define __FLT_HAS_DENORM__ 1
633// PPC64:#define __FLT_HAS_INFINITY__ 1
634// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
635// PPC64:#define __FLT_MANT_DIG__ 24
636// PPC64:#define __FLT_MAX_10_EXP__ 38
637// PPC64:#define __FLT_MAX_EXP__ 128
638// PPC64:#define __FLT_MAX__ 3.40282347e+38F
639// PPC64:#define __FLT_MIN_10_EXP__ (-37)
640// PPC64:#define __FLT_MIN_EXP__ (-125)
641// PPC64:#define __FLT_MIN__ 1.17549435e-38F
642// PPC64:#define __FLT_RADIX__ 2
643// PPC64:#define __INT16_TYPE__ short
644// PPC64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000645// PPC64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +0000646// PPC64:#define __INT64_TYPE__ long int
647// PPC64:#define __INT8_TYPE__ char
648// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +0000649// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +0000650// PPC64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000651// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000652// PPC64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000653// PPC64:#define __INT_MAX__ 2147483647
654// PPC64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
655// PPC64:#define __LDBL_DIG__ 15
656// PPC64:#define __LDBL_EPSILON__ 2.2204460492503131e-16
657// PPC64:#define __LDBL_HAS_DENORM__ 1
658// PPC64:#define __LDBL_HAS_INFINITY__ 1
659// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
660// PPC64:#define __LDBL_MANT_DIG__ 53
661// PPC64:#define __LDBL_MAX_10_EXP__ 308
662// PPC64:#define __LDBL_MAX_EXP__ 1024
663// PPC64:#define __LDBL_MAX__ 1.7976931348623157e+308
664// PPC64:#define __LDBL_MIN_10_EXP__ (-307)
665// PPC64:#define __LDBL_MIN_EXP__ (-1021)
666// PPC64:#define __LDBL_MIN__ 2.2250738585072014e-308
667// PPC64:#define __LONG_DOUBLE_128__ 1
668// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
669// PPC64:#define __LONG_MAX__ 9223372036854775807L
670// PPC64:#define __LP64__ 1
671// PPC64:#define __NATURAL_ALIGNMENT__ 1
672// PPC64:#define __NO_INLINE__ 1
673// PPC64:#define __POINTER_WIDTH__ 64
674// PPC64:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +0000675// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000676// PPC64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000677// PPC64:#define __REGISTER_PREFIX__
678// PPC64:#define __SCHAR_MAX__ 127
679// PPC64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000680// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000681// PPC64:#define __SIZEOF_DOUBLE__ 8
682// PPC64:#define __SIZEOF_FLOAT__ 4
683// PPC64:#define __SIZEOF_INT__ 4
684// PPC64:#define __SIZEOF_LONG_DOUBLE__ 8
685// PPC64:#define __SIZEOF_LONG_LONG__ 8
686// PPC64:#define __SIZEOF_LONG__ 8
687// PPC64:#define __SIZEOF_POINTER__ 8
688// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
689// PPC64:#define __SIZEOF_SHORT__ 2
690// PPC64:#define __SIZEOF_SIZE_T__ 8
691// PPC64:#define __SIZEOF_WCHAR_T__ 4
692// PPC64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000693// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000694// PPC64:#define __SIZE_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000695// PPC64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000696// PPC64:#define __USER_LABEL_PREFIX__ _
697// PPC64:#define __WCHAR_MAX__ 2147483647
698// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000699// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000700// PPC64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000701// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000702// PPC64:#define __ppc64__ 1
703// PPC64:#define __ppc__ 1
704//
Daniel Dunbara5728872009-12-15 20:14:24 +0000705// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix PPC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000706//
707// PPC:#define _ARCH_PPC 1
708// PPC:#define _BIG_ENDIAN 1
709// PPC:#define __BIG_ENDIAN__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000710// PPC:#define __CHAR16_TYPE__ unsigned short
711// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000712// PPC:#define __CHAR_BIT__ 8
713// PPC:#define __CHAR_UNSIGNED__ 1
714// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
715// PPC:#define __DBL_DIG__ 15
716// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
717// PPC:#define __DBL_HAS_DENORM__ 1
718// PPC:#define __DBL_HAS_INFINITY__ 1
719// PPC:#define __DBL_HAS_QUIET_NAN__ 1
720// PPC:#define __DBL_MANT_DIG__ 53
721// PPC:#define __DBL_MAX_10_EXP__ 308
722// PPC:#define __DBL_MAX_EXP__ 1024
723// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
724// PPC:#define __DBL_MIN_10_EXP__ (-307)
725// PPC:#define __DBL_MIN_EXP__ (-1021)
726// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
727// PPC:#define __DECIMAL_DIG__ 17
728// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
729// PPC:#define __FLT_DIG__ 6
730// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
731// PPC:#define __FLT_EVAL_METHOD__ 0
732// PPC:#define __FLT_HAS_DENORM__ 1
733// PPC:#define __FLT_HAS_INFINITY__ 1
734// PPC:#define __FLT_HAS_QUIET_NAN__ 1
735// PPC:#define __FLT_MANT_DIG__ 24
736// PPC:#define __FLT_MAX_10_EXP__ 38
737// PPC:#define __FLT_MAX_EXP__ 128
738// PPC:#define __FLT_MAX__ 3.40282347e+38F
739// PPC:#define __FLT_MIN_10_EXP__ (-37)
740// PPC:#define __FLT_MIN_EXP__ (-125)
741// PPC:#define __FLT_MIN__ 1.17549435e-38F
742// PPC:#define __FLT_RADIX__ 2
743// PPC:#define __INT16_TYPE__ short
744// PPC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000745// PPC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000746// PPC:#define __INT64_TYPE__ long long int
747// PPC:#define __INT8_TYPE__ char
748// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000749// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000750// PPC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000751// PPC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000752// PPC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000753// PPC:#define __INT_MAX__ 2147483647
754// PPC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
755// PPC:#define __LDBL_DIG__ 15
756// PPC:#define __LDBL_EPSILON__ 2.2204460492503131e-16
757// PPC:#define __LDBL_HAS_DENORM__ 1
758// PPC:#define __LDBL_HAS_INFINITY__ 1
759// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
760// PPC:#define __LDBL_MANT_DIG__ 53
761// PPC:#define __LDBL_MAX_10_EXP__ 308
762// PPC:#define __LDBL_MAX_EXP__ 1024
763// PPC:#define __LDBL_MAX__ 1.7976931348623157e+308
764// PPC:#define __LDBL_MIN_10_EXP__ (-307)
765// PPC:#define __LDBL_MIN_EXP__ (-1021)
766// PPC:#define __LDBL_MIN__ 2.2250738585072014e-308
767// PPC:#define __LONG_DOUBLE_128__ 1
768// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
769// PPC:#define __LONG_MAX__ 2147483647L
770// PPC:#define __NATURAL_ALIGNMENT__ 1
771// PPC:#define __NO_INLINE__ 1
772// PPC:#define __POINTER_WIDTH__ 32
773// PPC:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +0000774// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000775// PPC:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000776// PPC:#define __REGISTER_PREFIX__
777// PPC:#define __SCHAR_MAX__ 127
778// PPC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000779// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000780// PPC:#define __SIZEOF_DOUBLE__ 8
781// PPC:#define __SIZEOF_FLOAT__ 4
782// PPC:#define __SIZEOF_INT__ 4
783// PPC:#define __SIZEOF_LONG_DOUBLE__ 8
784// PPC:#define __SIZEOF_LONG_LONG__ 8
785// PPC:#define __SIZEOF_LONG__ 4
786// PPC:#define __SIZEOF_POINTER__ 4
787// PPC:#define __SIZEOF_PTRDIFF_T__ 4
788// PPC:#define __SIZEOF_SHORT__ 2
789// PPC:#define __SIZEOF_SIZE_T__ 4
790// PPC:#define __SIZEOF_WCHAR_T__ 4
791// PPC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000792// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000793// PPC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000794// PPC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000795// PPC:#define __USER_LABEL_PREFIX__ _
796// PPC:#define __WCHAR_MAX__ 2147483647
797// PPC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000798// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000799// PPC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000800// PPC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000801// PPC:#define __ppc__ 1
802//
Daniel Dunbara5728872009-12-15 20:14:24 +0000803// RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix S390X %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000804//
Dan Gohmancfeac342010-05-28 00:27:15 +0000805// S390X:#define __CHAR16_TYPE__ unsigned short
806// S390X:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000807// S390X:#define __CHAR_BIT__ 8
808// S390X:#define __CHAR_UNSIGNED__ 1
809// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
810// S390X:#define __DBL_DIG__ 15
811// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
812// S390X:#define __DBL_HAS_DENORM__ 1
813// S390X:#define __DBL_HAS_INFINITY__ 1
814// S390X:#define __DBL_HAS_QUIET_NAN__ 1
815// S390X:#define __DBL_MANT_DIG__ 53
816// S390X:#define __DBL_MAX_10_EXP__ 308
817// S390X:#define __DBL_MAX_EXP__ 1024
818// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
819// S390X:#define __DBL_MIN_10_EXP__ (-307)
820// S390X:#define __DBL_MIN_EXP__ (-1021)
821// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
822// S390X:#define __DECIMAL_DIG__ 17
823// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
824// S390X:#define __FLT_DIG__ 6
825// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
826// S390X:#define __FLT_EVAL_METHOD__ 0
827// S390X:#define __FLT_HAS_DENORM__ 1
828// S390X:#define __FLT_HAS_INFINITY__ 1
829// S390X:#define __FLT_HAS_QUIET_NAN__ 1
830// S390X:#define __FLT_MANT_DIG__ 24
831// S390X:#define __FLT_MAX_10_EXP__ 38
832// S390X:#define __FLT_MAX_EXP__ 128
833// S390X:#define __FLT_MAX__ 3.40282347e+38F
834// S390X:#define __FLT_MIN_10_EXP__ (-37)
835// S390X:#define __FLT_MIN_EXP__ (-125)
836// S390X:#define __FLT_MIN__ 1.17549435e-38F
837// S390X:#define __FLT_RADIX__ 2
838// S390X:#define __INT16_TYPE__ short
839// S390X:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000840// S390X:#define __INT64_C_SUFFIX__ L
Daniel Dunbar7f3a5452010-06-30 06:30:56 +0000841// S390X:#define __INT64_TYPE__ long long int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000842// S390X:#define __INT8_TYPE__ char
843// S390X:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000844// S390X:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000845// S390X:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000846// S390X:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000847// S390X:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000848// S390X:#define __INT_MAX__ 2147483647
849// S390X:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
850// S390X:#define __LDBL_DIG__ 15
851// S390X:#define __LDBL_EPSILON__ 2.2204460492503131e-16
852// S390X:#define __LDBL_HAS_DENORM__ 1
853// S390X:#define __LDBL_HAS_INFINITY__ 1
854// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
855// S390X:#define __LDBL_MANT_DIG__ 53
856// S390X:#define __LDBL_MAX_10_EXP__ 308
857// S390X:#define __LDBL_MAX_EXP__ 1024
858// S390X:#define __LDBL_MAX__ 1.7976931348623157e+308
859// S390X:#define __LDBL_MIN_10_EXP__ (-307)
860// S390X:#define __LDBL_MIN_EXP__ (-1021)
861// S390X:#define __LDBL_MIN__ 2.2250738585072014e-308
862// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
863// S390X:#define __LONG_MAX__ 9223372036854775807L
864// S390X:#define __NO_INLINE__ 1
865// S390X:#define __POINTER_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000866// S390X:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000867// S390X:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000868// S390X:#define __SCHAR_MAX__ 127
869// S390X:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000870// S390X:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000871// S390X:#define __SIZEOF_DOUBLE__ 8
872// S390X:#define __SIZEOF_FLOAT__ 4
873// S390X:#define __SIZEOF_INT__ 4
874// S390X:#define __SIZEOF_LONG_DOUBLE__ 8
875// S390X:#define __SIZEOF_LONG_LONG__ 8
876// S390X:#define __SIZEOF_LONG__ 8
877// S390X:#define __SIZEOF_POINTER__ 8
878// S390X:#define __SIZEOF_PTRDIFF_T__ 8
879// S390X:#define __SIZEOF_SHORT__ 2
880// S390X:#define __SIZEOF_SIZE_T__ 8
881// S390X:#define __SIZEOF_WCHAR_T__ 4
882// S390X:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000883// S390X:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000884// S390X:#define __SIZE_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000885// S390X:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000886// S390X:#define __USER_LABEL_PREFIX__ _
887// S390X:#define __WCHAR_MAX__ 2147483647
888// S390X:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000889// S390X:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000890// S390X:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000891// S390X:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000892// S390X:#define __s390__ 1
893// S390X:#define __s390x__ 1
894//
Daniel Dunbara5728872009-12-15 20:14:24 +0000895// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -check-prefix SPARC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000896//
Dan Gohmancfeac342010-05-28 00:27:15 +0000897// SPARC:#define __CHAR16_TYPE__ unsigned short
898// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000899// SPARC:#define __CHAR_BIT__ 8
900// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
901// SPARC:#define __DBL_DIG__ 15
902// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
903// SPARC:#define __DBL_HAS_DENORM__ 1
904// SPARC:#define __DBL_HAS_INFINITY__ 1
905// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
906// SPARC:#define __DBL_MANT_DIG__ 53
907// SPARC:#define __DBL_MAX_10_EXP__ 308
908// SPARC:#define __DBL_MAX_EXP__ 1024
909// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
910// SPARC:#define __DBL_MIN_10_EXP__ (-307)
911// SPARC:#define __DBL_MIN_EXP__ (-1021)
912// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
913// SPARC:#define __DECIMAL_DIG__ 17
914// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
915// SPARC:#define __FLT_DIG__ 6
916// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
917// SPARC:#define __FLT_EVAL_METHOD__ 0
918// SPARC:#define __FLT_HAS_DENORM__ 1
919// SPARC:#define __FLT_HAS_INFINITY__ 1
920// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
921// SPARC:#define __FLT_MANT_DIG__ 24
922// SPARC:#define __FLT_MAX_10_EXP__ 38
923// SPARC:#define __FLT_MAX_EXP__ 128
924// SPARC:#define __FLT_MAX__ 3.40282347e+38F
925// SPARC:#define __FLT_MIN_10_EXP__ (-37)
926// SPARC:#define __FLT_MIN_EXP__ (-125)
927// SPARC:#define __FLT_MIN__ 1.17549435e-38F
928// SPARC:#define __FLT_RADIX__ 2
929// SPARC:#define __INT16_TYPE__ short
930// SPARC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000931// SPARC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000932// SPARC:#define __INT64_TYPE__ long long int
933// SPARC:#define __INT8_TYPE__ char
934// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000935// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000936// SPARC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000937// SPARC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000938// SPARC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000939// SPARC:#define __INT_MAX__ 2147483647
940// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
941// SPARC:#define __LDBL_DIG__ 15
942// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16
943// SPARC:#define __LDBL_HAS_DENORM__ 1
944// SPARC:#define __LDBL_HAS_INFINITY__ 1
945// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
946// SPARC:#define __LDBL_MANT_DIG__ 53
947// SPARC:#define __LDBL_MAX_10_EXP__ 308
948// SPARC:#define __LDBL_MAX_EXP__ 1024
949// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308
950// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
951// SPARC:#define __LDBL_MIN_EXP__ (-1021)
952// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308
953// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
954// SPARC:#define __LONG_MAX__ 2147483647L
955// SPARC:#define __NO_INLINE__ 1
956// SPARC:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000957// SPARC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000958// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +0000959// SPARC:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000960// SPARC:#define __SCHAR_MAX__ 127
961// SPARC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000962// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000963// SPARC:#define __SIZEOF_DOUBLE__ 8
964// SPARC:#define __SIZEOF_FLOAT__ 4
965// SPARC:#define __SIZEOF_INT__ 4
966// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
967// SPARC:#define __SIZEOF_LONG_LONG__ 8
968// SPARC:#define __SIZEOF_LONG__ 4
969// SPARC:#define __SIZEOF_POINTER__ 4
970// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
971// SPARC:#define __SIZEOF_SHORT__ 2
972// SPARC:#define __SIZEOF_SIZE_T__ 4
973// SPARC:#define __SIZEOF_WCHAR_T__ 4
974// SPARC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000975// SPARC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000976// SPARC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000977// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000978// SPARC:#define __USER_LABEL_PREFIX__ _
979// SPARC:#define __VERSION__ "4.2.1 Compatible Clang Compiler"
980// SPARC:#define __WCHAR_MAX__ 2147483647
981// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000982// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000983// SPARC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000984// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000985// SPARC:#define __sparc 1
986// SPARC:#define __sparc__ 1
987// SPARC:#define __sparcv8 1
988// SPARC:#define sparc 1
989//
Daniel Dunbara5728872009-12-15 20:14:24 +0000990// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000991//
Dan Gohmancfeac342010-05-28 00:27:15 +0000992// TCE:#define __CHAR16_TYPE__ unsigned short
993// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000994// TCE:#define __CHAR_BIT__ 8
995// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45F
996// TCE:#define __DBL_DIG__ 6
997// TCE:#define __DBL_EPSILON__ 1.19209290e-7F
998// TCE:#define __DBL_HAS_DENORM__ 1
999// TCE:#define __DBL_HAS_INFINITY__ 1
1000// TCE:#define __DBL_HAS_QUIET_NAN__ 1
1001// TCE:#define __DBL_MANT_DIG__ 24
1002// TCE:#define __DBL_MAX_10_EXP__ 38
1003// TCE:#define __DBL_MAX_EXP__ 128
1004// TCE:#define __DBL_MAX__ 3.40282347e+38F
1005// TCE:#define __DBL_MIN_10_EXP__ (-37)
1006// TCE:#define __DBL_MIN_EXP__ (-125)
1007// TCE:#define __DBL_MIN__ 1.17549435e-38F
1008// TCE:#define __DECIMAL_DIG__ -1
1009// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1010// TCE:#define __FLT_DIG__ 6
1011// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
1012// TCE:#define __FLT_EVAL_METHOD__ 0
1013// TCE:#define __FLT_HAS_DENORM__ 1
1014// TCE:#define __FLT_HAS_INFINITY__ 1
1015// TCE:#define __FLT_HAS_QUIET_NAN__ 1
1016// TCE:#define __FLT_MANT_DIG__ 24
1017// TCE:#define __FLT_MAX_10_EXP__ 38
1018// TCE:#define __FLT_MAX_EXP__ 128
1019// TCE:#define __FLT_MAX__ 3.40282347e+38F
1020// TCE:#define __FLT_MIN_10_EXP__ (-37)
1021// TCE:#define __FLT_MIN_EXP__ (-125)
1022// TCE:#define __FLT_MIN__ 1.17549435e-38F
1023// TCE:#define __FLT_RADIX__ 2
1024// TCE:#define __INT16_TYPE__ short
1025// TCE:#define __INT32_TYPE__ int
1026// TCE:#define __INT8_TYPE__ char
1027// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +00001028// TCE:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001029// TCE:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001030// TCE:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001031// TCE:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001032// TCE:#define __INT_MAX__ 2147483647
1033// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45F
1034// TCE:#define __LDBL_DIG__ 6
1035// TCE:#define __LDBL_EPSILON__ 1.19209290e-7F
1036// TCE:#define __LDBL_HAS_DENORM__ 1
1037// TCE:#define __LDBL_HAS_INFINITY__ 1
1038// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
1039// TCE:#define __LDBL_MANT_DIG__ 24
1040// TCE:#define __LDBL_MAX_10_EXP__ 38
1041// TCE:#define __LDBL_MAX_EXP__ 128
1042// TCE:#define __LDBL_MAX__ 3.40282347e+38F
1043// TCE:#define __LDBL_MIN_10_EXP__ (-37)
1044// TCE:#define __LDBL_MIN_EXP__ (-125)
1045// TCE:#define __LDBL_MIN__ 1.17549435e-38F
1046// TCE:#define __LONG_LONG_MAX__ 2147483647LL
1047// TCE:#define __LONG_MAX__ 2147483647L
1048// TCE:#define __NO_INLINE__ 1
1049// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001050// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +00001051// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001052// TCE:#define __SCHAR_MAX__ 127
1053// TCE:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001054// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001055// TCE:#define __SIZEOF_DOUBLE__ 4
1056// TCE:#define __SIZEOF_FLOAT__ 4
1057// TCE:#define __SIZEOF_INT__ 4
1058// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
1059// TCE:#define __SIZEOF_LONG_LONG__ 4
1060// TCE:#define __SIZEOF_LONG__ 4
1061// TCE:#define __SIZEOF_POINTER__ 4
1062// TCE:#define __SIZEOF_PTRDIFF_T__ 4
1063// TCE:#define __SIZEOF_SHORT__ 2
1064// TCE:#define __SIZEOF_SIZE_T__ 4
1065// TCE:#define __SIZEOF_WCHAR_T__ 4
1066// TCE:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001067// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001068// TCE:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001069// TCE:#define __TCE_V1__ 1
1070// TCE:#define __TCE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001071// TCE:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001072// TCE:#define __USER_LABEL_PREFIX__ _
1073// TCE:#define __WCHAR_MAX__ 2147483647
1074// TCE:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001075// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001076// TCE:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001077// TCE:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001078// TCE:#define __tce 1
1079// TCE:#define __tce__ 1
1080// TCE:#define tce 1
1081//
Daniel Dunbara5728872009-12-15 20:14:24 +00001082// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -check-prefix X86_64 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +00001083//
1084// X86_64:#define _LP64 1
Dan Gohmancfeac342010-05-28 00:27:15 +00001085// X86_64:#define __CHAR16_TYPE__ unsigned short
1086// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001087// X86_64:#define __CHAR_BIT__ 8
1088// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1089// X86_64:#define __DBL_DIG__ 15
1090// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1091// X86_64:#define __DBL_HAS_DENORM__ 1
1092// X86_64:#define __DBL_HAS_INFINITY__ 1
1093// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
1094// X86_64:#define __DBL_MANT_DIG__ 53
1095// X86_64:#define __DBL_MAX_10_EXP__ 308
1096// X86_64:#define __DBL_MAX_EXP__ 1024
1097// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
1098// X86_64:#define __DBL_MIN_10_EXP__ (-307)
1099// X86_64:#define __DBL_MIN_EXP__ (-1021)
1100// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
1101// X86_64:#define __DECIMAL_DIG__ 21
1102// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1103// X86_64:#define __FLT_DIG__ 6
1104// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
1105// X86_64:#define __FLT_EVAL_METHOD__ 0
1106// X86_64:#define __FLT_HAS_DENORM__ 1
1107// X86_64:#define __FLT_HAS_INFINITY__ 1
1108// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
1109// X86_64:#define __FLT_MANT_DIG__ 24
1110// X86_64:#define __FLT_MAX_10_EXP__ 38
1111// X86_64:#define __FLT_MAX_EXP__ 128
1112// X86_64:#define __FLT_MAX__ 3.40282347e+38F
1113// X86_64:#define __FLT_MIN_10_EXP__ (-37)
1114// X86_64:#define __FLT_MIN_EXP__ (-125)
1115// X86_64:#define __FLT_MIN__ 1.17549435e-38F
1116// X86_64:#define __FLT_RADIX__ 2
1117// X86_64:#define __INT16_TYPE__ short
1118// X86_64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001119// X86_64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001120// X86_64:#define __INT64_TYPE__ long int
1121// X86_64:#define __INT8_TYPE__ char
1122// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +00001123// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001124// X86_64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001125// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001126// X86_64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001127// X86_64:#define __INT_MAX__ 2147483647
1128// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
1129// X86_64:#define __LDBL_DIG__ 18
1130// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
1131// X86_64:#define __LDBL_HAS_DENORM__ 1
1132// X86_64:#define __LDBL_HAS_INFINITY__ 1
1133// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
1134// X86_64:#define __LDBL_MANT_DIG__ 64
1135// X86_64:#define __LDBL_MAX_10_EXP__ 4932
1136// X86_64:#define __LDBL_MAX_EXP__ 16384
1137// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
1138// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
1139// X86_64:#define __LDBL_MIN_EXP__ (-16381)
1140// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
1141// X86_64:#define __LITTLE_ENDIAN__ 1
1142// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1143// X86_64:#define __LONG_MAX__ 9223372036854775807L
1144// X86_64:#define __LP64__ 1
1145// X86_64:#define __MMX__ 1
1146// X86_64:#define __NO_INLINE__ 1
1147// X86_64:#define __NO_MATH_INLINES 1
1148// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001149// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001150// X86_64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001151// X86_64:#define __REGISTER_PREFIX__
1152// X86_64:#define __SCHAR_MAX__ 127
1153// X86_64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001154// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001155// X86_64:#define __SIZEOF_DOUBLE__ 8
1156// X86_64:#define __SIZEOF_FLOAT__ 4
1157// X86_64:#define __SIZEOF_INT__ 4
1158// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
1159// X86_64:#define __SIZEOF_LONG_LONG__ 8
1160// X86_64:#define __SIZEOF_LONG__ 8
1161// X86_64:#define __SIZEOF_POINTER__ 8
1162// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
1163// X86_64:#define __SIZEOF_SHORT__ 2
1164// X86_64:#define __SIZEOF_SIZE_T__ 8
1165// X86_64:#define __SIZEOF_WCHAR_T__ 4
1166// X86_64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001167// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001168// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001169// X86_64:#define __SSE2_MATH__ 1
1170// X86_64:#define __SSE2__ 1
1171// X86_64:#define __SSE_MATH__ 1
1172// X86_64:#define __SSE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001173// X86_64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001174// X86_64:#define __USER_LABEL_PREFIX__ _
1175// X86_64:#define __WCHAR_MAX__ 2147483647
1176// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001177// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001178// X86_64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001179// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001180// X86_64:#define __amd64 1
1181// X86_64:#define __amd64__ 1
1182// X86_64:#define __nocona 1
1183// X86_64:#define __nocona__ 1
1184// X86_64:#define __tune_nocona__ 1
1185// X86_64:#define __x86_64 1
1186// X86_64:#define __x86_64__ 1
1187//
Douglas Gregor66791df2010-04-16 06:31:05 +00001188// RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -E -dM < /dev/null | FileCheck -check-prefix GNUSOURCE %s
1189// GNUSOURCE:#define _GNU_SOURCE 1
1190//
Dan Gohmancfeac342010-05-28 00:27:15 +00001191// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -check-prefix NORTTI %s
1192// NORTTI: __GXX_ABI_VERSION
1193// NORTTI-NOT:#define __GXX_RTTI
1194// NORTTI: __STDC__