blob: 4ebaddfa3f66acc7f378c3ae2805c7e45a79dc5e [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//
Eli Friedman1d832432010-08-03 17:34:19 +0000120// RUN: %clang_cc1 -E -dM -fshort-wchar < /dev/null | FileCheck -check-prefix SHORTWCHAR %s
121//
122// SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
123// SHORTWCHAR: #define __WCHAR_MAX__ 65535U
124// SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
125// SHORTWCHAR: #define __WCHAR_WIDTH__ 16
126//
Daniel Dunbara5728872009-12-15 20:14:24 +0000127// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -check-prefix ARM %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000128//
129// ARM:#define __APCS_32__ 1
130// ARM:#define __ARMEL__ 1
Daniel Dunbareac7c532009-12-18 18:42:37 +0000131// ARM:#define __ARM_ARCH_6J__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000132// ARM:#define __CHAR16_TYPE__ unsigned short
133// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000134// ARM:#define __CHAR_BIT__ 8
135// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
136// ARM:#define __DBL_DIG__ 15
137// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
138// ARM:#define __DBL_HAS_DENORM__ 1
139// ARM:#define __DBL_HAS_INFINITY__ 1
140// ARM:#define __DBL_HAS_QUIET_NAN__ 1
141// ARM:#define __DBL_MANT_DIG__ 53
142// ARM:#define __DBL_MAX_10_EXP__ 308
143// ARM:#define __DBL_MAX_EXP__ 1024
144// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
145// ARM:#define __DBL_MIN_10_EXP__ (-307)
146// ARM:#define __DBL_MIN_EXP__ (-1021)
147// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
148// ARM:#define __DECIMAL_DIG__ 17
149// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
150// ARM:#define __FLT_DIG__ 6
151// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
152// ARM:#define __FLT_EVAL_METHOD__ 0
153// ARM:#define __FLT_HAS_DENORM__ 1
154// ARM:#define __FLT_HAS_INFINITY__ 1
155// ARM:#define __FLT_HAS_QUIET_NAN__ 1
156// ARM:#define __FLT_MANT_DIG__ 24
157// ARM:#define __FLT_MAX_10_EXP__ 38
158// ARM:#define __FLT_MAX_EXP__ 128
159// ARM:#define __FLT_MAX__ 3.40282347e+38F
160// ARM:#define __FLT_MIN_10_EXP__ (-37)
161// ARM:#define __FLT_MIN_EXP__ (-125)
162// ARM:#define __FLT_MIN__ 1.17549435e-38F
163// ARM:#define __FLT_RADIX__ 2
164// ARM:#define __INT16_TYPE__ short
165// ARM:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000166// ARM:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000167// ARM:#define __INT64_TYPE__ long long int
168// ARM:#define __INT8_TYPE__ char
169// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000170// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000171// ARM:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000172// ARM:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000173// ARM:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000174// ARM:#define __INT_MAX__ 2147483647
175// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
176// ARM:#define __LDBL_DIG__ 15
177// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16
178// ARM:#define __LDBL_HAS_DENORM__ 1
179// ARM:#define __LDBL_HAS_INFINITY__ 1
180// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
181// ARM:#define __LDBL_MANT_DIG__ 53
182// ARM:#define __LDBL_MAX_10_EXP__ 308
183// ARM:#define __LDBL_MAX_EXP__ 1024
184// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308
185// ARM:#define __LDBL_MIN_10_EXP__ (-307)
186// ARM:#define __LDBL_MIN_EXP__ (-1021)
187// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308
188// ARM:#define __LITTLE_ENDIAN__ 1
189// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
190// ARM:#define __LONG_MAX__ 2147483647L
191// ARM:#define __NO_INLINE__ 1
192// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000193// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000194// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +0000195// ARM:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000196// ARM:#define __SCHAR_MAX__ 127
197// ARM:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000198// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000199// ARM:#define __SIZEOF_DOUBLE__ 8
200// ARM:#define __SIZEOF_FLOAT__ 4
201// ARM:#define __SIZEOF_INT__ 4
202// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
203// ARM:#define __SIZEOF_LONG_LONG__ 8
204// ARM:#define __SIZEOF_LONG__ 4
205// ARM:#define __SIZEOF_POINTER__ 4
206// ARM:#define __SIZEOF_PTRDIFF_T__ 4
207// ARM:#define __SIZEOF_SHORT__ 2
208// ARM:#define __SIZEOF_SIZE_T__ 4
209// ARM:#define __SIZEOF_WCHAR_T__ 4
210// ARM:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000211// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000212// ARM:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000213// ARM:#define __THUMB_INTERWORK__ 1
Ken Dyck8241d732009-11-19 13:18:59 +0000214// ARM:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000215// ARM:#define __USER_LABEL_PREFIX__ _
Chris Lattnerbceaf862009-10-29 04:55:36 +0000216// ARM:#define __WCHAR_MAX__ 2147483647
217// ARM:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000218// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000219// ARM:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000220// ARM:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000221// ARM:#define __arm 1
222// ARM:#define __arm__ 1
223//
Daniel Dunbara5728872009-12-15 20:14:24 +0000224// RUN: %clang_cc1 -E -dM -ffreestanding -triple=bfin-none-none < /dev/null | FileCheck -check-prefix BFIN %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000225//
226// BFIN:#define BFIN 1
227// BFIN:#define __ADSPBLACKFIN__ 1
228// BFIN:#define __ADSPLPBLACKFIN__ 1
229// BFIN:#define __BFIN 1
230// BFIN:#define __BFIN__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000231// BFIN:#define __CHAR16_TYPE__ unsigned short
232// BFIN:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000233// BFIN:#define __CHAR_BIT__ 8
234// BFIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
235// BFIN:#define __DBL_DIG__ 15
236// BFIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
237// BFIN:#define __DBL_HAS_DENORM__ 1
238// BFIN:#define __DBL_HAS_INFINITY__ 1
239// BFIN:#define __DBL_HAS_QUIET_NAN__ 1
240// BFIN:#define __DBL_MANT_DIG__ 53
241// BFIN:#define __DBL_MAX_10_EXP__ 308
242// BFIN:#define __DBL_MAX_EXP__ 1024
243// BFIN:#define __DBL_MAX__ 1.7976931348623157e+308
244// BFIN:#define __DBL_MIN_10_EXP__ (-307)
245// BFIN:#define __DBL_MIN_EXP__ (-1021)
246// BFIN:#define __DBL_MIN__ 2.2250738585072014e-308
247// BFIN:#define __DECIMAL_DIG__ 17
248// BFIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
249// BFIN:#define __FLT_DIG__ 6
250// BFIN:#define __FLT_EPSILON__ 1.19209290e-7F
251// BFIN:#define __FLT_EVAL_METHOD__ 0
252// BFIN:#define __FLT_HAS_DENORM__ 1
253// BFIN:#define __FLT_HAS_INFINITY__ 1
254// BFIN:#define __FLT_HAS_QUIET_NAN__ 1
255// BFIN:#define __FLT_MANT_DIG__ 24
256// BFIN:#define __FLT_MAX_10_EXP__ 38
257// BFIN:#define __FLT_MAX_EXP__ 128
258// BFIN:#define __FLT_MAX__ 3.40282347e+38F
259// BFIN:#define __FLT_MIN_10_EXP__ (-37)
260// BFIN:#define __FLT_MIN_EXP__ (-125)
261// BFIN:#define __FLT_MIN__ 1.17549435e-38F
262// BFIN:#define __FLT_RADIX__ 2
263// BFIN:#define __INT16_TYPE__ short
264// BFIN:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000265// BFIN:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000266// BFIN:#define __INT64_TYPE__ long long int
267// BFIN:#define __INT8_TYPE__ char
268// BFIN:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000269// BFIN:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000270// BFIN:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000271// BFIN:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000272// BFIN:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000273// BFIN:#define __INT_MAX__ 2147483647
274// BFIN:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
275// BFIN:#define __LDBL_DIG__ 15
276// BFIN:#define __LDBL_EPSILON__ 2.2204460492503131e-16
277// BFIN:#define __LDBL_HAS_DENORM__ 1
278// BFIN:#define __LDBL_HAS_INFINITY__ 1
279// BFIN:#define __LDBL_HAS_QUIET_NAN__ 1
280// BFIN:#define __LDBL_MANT_DIG__ 53
281// BFIN:#define __LDBL_MAX_10_EXP__ 308
282// BFIN:#define __LDBL_MAX_EXP__ 1024
283// BFIN:#define __LDBL_MAX__ 1.7976931348623157e+308
284// BFIN:#define __LDBL_MIN_10_EXP__ (-307)
285// BFIN:#define __LDBL_MIN_EXP__ (-1021)
286// BFIN:#define __LDBL_MIN__ 2.2250738585072014e-308
287// BFIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
288// BFIN:#define __LONG_MAX__ 2147483647L
289// BFIN:#define __NO_INLINE__ 1
290// BFIN:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000291// BFIN:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000292// BFIN:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000293// BFIN:#define __SCHAR_MAX__ 127
294// BFIN:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000295// BFIN:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000296// BFIN:#define __SIZEOF_DOUBLE__ 8
297// BFIN:#define __SIZEOF_FLOAT__ 4
298// BFIN:#define __SIZEOF_INT__ 4
299// BFIN:#define __SIZEOF_LONG_DOUBLE__ 8
300// BFIN:#define __SIZEOF_LONG_LONG__ 8
301// BFIN:#define __SIZEOF_LONG__ 4
302// BFIN:#define __SIZEOF_POINTER__ 4
303// BFIN:#define __SIZEOF_PTRDIFF_T__ 4
304// BFIN:#define __SIZEOF_SHORT__ 2
305// BFIN:#define __SIZEOF_SIZE_T__ 4
306// BFIN:#define __SIZEOF_WCHAR_T__ 4
307// BFIN:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000308// BFIN:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000309// BFIN:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000310// BFIN:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000311// BFIN:#define __USER_LABEL_PREFIX__ _
312// BFIN:#define __WCHAR_MAX__ 2147483647
313// BFIN:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000314// BFIN:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000315// BFIN:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000316// BFIN:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000317// BFIN:#define __bfin 1
318// BFIN:#define __bfin__ 1
319// BFIN:#define bfin 1
320//
Daniel Dunbara5728872009-12-15 20:14:24 +0000321// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -check-prefix I386 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000322//
Dan Gohmancfeac342010-05-28 00:27:15 +0000323// I386:#define __CHAR16_TYPE__ unsigned short
324// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000325// I386:#define __CHAR_BIT__ 8
326// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
327// I386:#define __DBL_DIG__ 15
328// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
329// I386:#define __DBL_HAS_DENORM__ 1
330// I386:#define __DBL_HAS_INFINITY__ 1
331// I386:#define __DBL_HAS_QUIET_NAN__ 1
332// I386:#define __DBL_MANT_DIG__ 53
333// I386:#define __DBL_MAX_10_EXP__ 308
334// I386:#define __DBL_MAX_EXP__ 1024
335// I386:#define __DBL_MAX__ 1.7976931348623157e+308
336// I386:#define __DBL_MIN_10_EXP__ (-307)
337// I386:#define __DBL_MIN_EXP__ (-1021)
338// I386:#define __DBL_MIN__ 2.2250738585072014e-308
339// I386:#define __DECIMAL_DIG__ 21
340// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
341// I386:#define __FLT_DIG__ 6
342// I386:#define __FLT_EPSILON__ 1.19209290e-7F
343// I386:#define __FLT_EVAL_METHOD__ 0
344// I386:#define __FLT_HAS_DENORM__ 1
345// I386:#define __FLT_HAS_INFINITY__ 1
346// I386:#define __FLT_HAS_QUIET_NAN__ 1
347// I386:#define __FLT_MANT_DIG__ 24
348// I386:#define __FLT_MAX_10_EXP__ 38
349// I386:#define __FLT_MAX_EXP__ 128
350// I386:#define __FLT_MAX__ 3.40282347e+38F
351// I386:#define __FLT_MIN_10_EXP__ (-37)
352// I386:#define __FLT_MIN_EXP__ (-125)
353// I386:#define __FLT_MIN__ 1.17549435e-38F
354// I386:#define __FLT_RADIX__ 2
355// I386:#define __INT16_TYPE__ short
356// I386:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000357// I386:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000358// I386:#define __INT64_TYPE__ long long int
359// I386:#define __INT8_TYPE__ char
360// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000361// I386:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000362// I386:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000363// I386:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000364// I386:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000365// I386:#define __INT_MAX__ 2147483647
366// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
367// I386:#define __LDBL_DIG__ 18
368// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
369// I386:#define __LDBL_HAS_DENORM__ 1
370// I386:#define __LDBL_HAS_INFINITY__ 1
371// I386:#define __LDBL_HAS_QUIET_NAN__ 1
372// I386:#define __LDBL_MANT_DIG__ 64
373// I386:#define __LDBL_MAX_10_EXP__ 4932
374// I386:#define __LDBL_MAX_EXP__ 16384
375// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
376// I386:#define __LDBL_MIN_10_EXP__ (-4931)
377// I386:#define __LDBL_MIN_EXP__ (-16381)
378// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
379// I386:#define __LITTLE_ENDIAN__ 1
380// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
381// I386:#define __LONG_MAX__ 2147483647L
382// I386:#define __NO_INLINE__ 1
383// I386:#define __NO_MATH_INLINES 1
384// I386:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000385// I386:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000386// I386:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000387// I386:#define __REGISTER_PREFIX__
388// I386:#define __SCHAR_MAX__ 127
389// I386:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000390// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000391// I386:#define __SIZEOF_DOUBLE__ 8
392// I386:#define __SIZEOF_FLOAT__ 4
393// I386:#define __SIZEOF_INT__ 4
394// I386:#define __SIZEOF_LONG_DOUBLE__ 12
395// I386:#define __SIZEOF_LONG_LONG__ 8
396// I386:#define __SIZEOF_LONG__ 4
397// I386:#define __SIZEOF_POINTER__ 4
398// I386:#define __SIZEOF_PTRDIFF_T__ 4
399// I386:#define __SIZEOF_SHORT__ 2
400// I386:#define __SIZEOF_SIZE_T__ 4
401// I386:#define __SIZEOF_WCHAR_T__ 4
402// I386:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000403// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000404// I386:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000405// I386:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000406// I386:#define __USER_LABEL_PREFIX__ _
407// I386:#define __WCHAR_MAX__ 2147483647
408// I386:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000409// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000410// I386:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000411// I386:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000412// I386:#define __i386 1
413// I386:#define __i386__ 1
414// I386:#define __nocona 1
415// I386:#define __nocona__ 1
416// I386:#define __tune_nocona__ 1
417// I386:#define i386 1
418//
Daniel Dunbara5728872009-12-15 20:14:24 +0000419// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -check-prefix MSP430 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000420//
421// MSP430:#define MSP430 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000422// MSP430:#define __CHAR16_TYPE__ unsigned short
423// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000424// MSP430:#define __CHAR_BIT__ 8
425// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
426// MSP430:#define __DBL_DIG__ 15
427// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
428// MSP430:#define __DBL_HAS_DENORM__ 1
429// MSP430:#define __DBL_HAS_INFINITY__ 1
430// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
431// MSP430:#define __DBL_MANT_DIG__ 53
432// MSP430:#define __DBL_MAX_10_EXP__ 308
433// MSP430:#define __DBL_MAX_EXP__ 1024
434// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
435// MSP430:#define __DBL_MIN_10_EXP__ (-307)
436// MSP430:#define __DBL_MIN_EXP__ (-1021)
437// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
438// MSP430:#define __DECIMAL_DIG__ 17
439// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
440// MSP430:#define __FLT_DIG__ 6
441// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
442// MSP430:#define __FLT_EVAL_METHOD__ 0
443// MSP430:#define __FLT_HAS_DENORM__ 1
444// MSP430:#define __FLT_HAS_INFINITY__ 1
445// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
446// MSP430:#define __FLT_MANT_DIG__ 24
447// MSP430:#define __FLT_MAX_10_EXP__ 38
448// MSP430:#define __FLT_MAX_EXP__ 128
449// MSP430:#define __FLT_MAX__ 3.40282347e+38F
450// MSP430:#define __FLT_MIN_10_EXP__ (-37)
451// MSP430:#define __FLT_MIN_EXP__ (-125)
452// MSP430:#define __FLT_MIN__ 1.17549435e-38F
453// MSP430:#define __FLT_RADIX__ 2
454// MSP430:#define __INT16_TYPE__ short
Ken Dyckeef22ef2009-11-16 16:36:33 +0000455// MSP430:#define __INT32_C_SUFFIX__ L
Chris Lattnerdcdd2a02009-11-12 08:08:27 +0000456// MSP430:#define __INT32_TYPE__ long int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000457// MSP430:#define __INT8_TYPE__ char
458// MSP430:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +0000459// MSP430:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +0000460// MSP430:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000461// MSP430:#define __INTPTR_TYPE__ short
Ken Dyckd896e1a2009-11-18 20:05:48 +0000462// MSP430:#define __INTPTR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000463// MSP430:#define __INT_MAX__ 32767
464// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
465// MSP430:#define __LDBL_DIG__ 15
466// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16
467// MSP430:#define __LDBL_HAS_DENORM__ 1
468// MSP430:#define __LDBL_HAS_INFINITY__ 1
469// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
470// MSP430:#define __LDBL_MANT_DIG__ 53
471// MSP430:#define __LDBL_MAX_10_EXP__ 308
472// MSP430:#define __LDBL_MAX_EXP__ 1024
473// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308
474// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
475// MSP430:#define __LDBL_MIN_EXP__ (-1021)
476// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308
Anton Korobeynikov79bff432010-01-14 21:36:52 +0000477// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000478// MSP430:#define __LONG_MAX__ 2147483647L
479// MSP430:#define __MSP430__ 1
480// MSP430:#define __NO_INLINE__ 1
481// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000482// MSP430:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000483// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000484// MSP430:#define __SCHAR_MAX__ 127
485// MSP430:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000486// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000487// MSP430:#define __SIZEOF_DOUBLE__ 8
488// MSP430:#define __SIZEOF_FLOAT__ 4
489// MSP430:#define __SIZEOF_INT__ 2
490// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
491// MSP430:#define __SIZEOF_LONG_LONG__ 8
492// MSP430:#define __SIZEOF_LONG__ 4
493// MSP430:#define __SIZEOF_POINTER__ 2
494// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
495// MSP430:#define __SIZEOF_SHORT__ 2
496// MSP430:#define __SIZEOF_SIZE_T__ 2
497// MSP430:#define __SIZEOF_WCHAR_T__ 2
498// MSP430:#define __SIZEOF_WINT_T__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +0000499// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000500// MSP430:#define __SIZE_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000501// MSP430:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000502// MSP430:#define __USER_LABEL_PREFIX__ _
Chris Lattner91846462009-11-12 08:04:33 +0000503// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnerbceaf862009-10-29 04:55:36 +0000504// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000505// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000506// MSP430:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000507// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000508// MSP430:#define __clang__ 1
509//
Daniel Dunbara5728872009-12-15 20:14:24 +0000510// RUN: %clang_cc1 -E -dM -ffreestanding -triple=pic16-none-none < /dev/null | FileCheck -check-prefix PIC16 %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000511//
Dan Gohmancfeac342010-05-28 00:27:15 +0000512// PIC16:#define __CHAR16_TYPE__ unsigned short
513// PIC16:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000514// PIC16:#define __CHAR_BIT__ 8
515// PIC16:#define __DBL_DENORM_MIN__ 1.40129846e-45F
516// PIC16:#define __DBL_DIG__ 6
517// PIC16:#define __DBL_EPSILON__ 1.19209290e-7F
518// PIC16:#define __DBL_HAS_DENORM__ 1
519// PIC16:#define __DBL_HAS_INFINITY__ 1
520// PIC16:#define __DBL_HAS_QUIET_NAN__ 1
521// PIC16:#define __DBL_MANT_DIG__ 24
522// PIC16:#define __DBL_MAX_10_EXP__ 38
523// PIC16:#define __DBL_MAX_EXP__ 128
524// PIC16:#define __DBL_MAX__ 3.40282347e+38F
525// PIC16:#define __DBL_MIN_10_EXP__ (-37)
526// PIC16:#define __DBL_MIN_EXP__ (-125)
527// PIC16:#define __DBL_MIN__ 1.17549435e-38F
528// PIC16:#define __DECIMAL_DIG__ -1
529// PIC16:#define __FLT_DENORM_MIN__ 1.40129846e-45F
530// PIC16:#define __FLT_DIG__ 6
531// PIC16:#define __FLT_EPSILON__ 1.19209290e-7F
532// PIC16:#define __FLT_EVAL_METHOD__ 0
533// PIC16:#define __FLT_HAS_DENORM__ 1
534// PIC16:#define __FLT_HAS_INFINITY__ 1
535// PIC16:#define __FLT_HAS_QUIET_NAN__ 1
536// PIC16:#define __FLT_MANT_DIG__ 24
537// PIC16:#define __FLT_MAX_10_EXP__ 38
538// PIC16:#define __FLT_MAX_EXP__ 128
539// PIC16:#define __FLT_MAX__ 3.40282347e+38F
540// PIC16:#define __FLT_MIN_10_EXP__ (-37)
541// PIC16:#define __FLT_MIN_EXP__ (-125)
542// PIC16:#define __FLT_MIN__ 1.17549435e-38F
543// PIC16:#define __FLT_RADIX__ 2
544// PIC16:#define __INT16_TYPE__ short
Ken Dyckeef22ef2009-11-16 16:36:33 +0000545// PIC16:#define __INT32_C_SUFFIX__ L
Chris Lattnerdcdd2a02009-11-12 08:08:27 +0000546// PIC16:#define __INT32_TYPE__ long int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000547// PIC16:#define __INT8_TYPE__ char
548// PIC16:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +0000549// PIC16:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +0000550// PIC16:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000551// PIC16:#define __INTPTR_TYPE__ short
Ken Dyckd896e1a2009-11-18 20:05:48 +0000552// PIC16:#define __INTPTR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000553// PIC16:#define __INT_MAX__ 32767
554// PIC16:#define __LDBL_DENORM_MIN__ 1.40129846e-45F
555// PIC16:#define __LDBL_DIG__ 6
556// PIC16:#define __LDBL_EPSILON__ 1.19209290e-7F
557// PIC16:#define __LDBL_HAS_DENORM__ 1
558// PIC16:#define __LDBL_HAS_INFINITY__ 1
559// PIC16:#define __LDBL_HAS_QUIET_NAN__ 1
560// PIC16:#define __LDBL_MANT_DIG__ 24
561// PIC16:#define __LDBL_MAX_10_EXP__ 38
562// PIC16:#define __LDBL_MAX_EXP__ 128
563// PIC16:#define __LDBL_MAX__ 3.40282347e+38F
564// PIC16:#define __LDBL_MIN_10_EXP__ (-37)
565// PIC16:#define __LDBL_MIN_EXP__ (-125)
566// PIC16:#define __LDBL_MIN__ 1.17549435e-38F
567// PIC16:#define __LONG_LONG_MAX__ 2147483647LL
568// PIC16:#define __LONG_MAX__ 2147483647L
569// PIC16:#define __NO_INLINE__ 1
Sanjiv Guptafcd302b2010-02-16 03:37:11 +0000570// PIC16:#define __PIC16 1
Chris Lattnerbceaf862009-10-29 04:55:36 +0000571// PIC16:#define __POINTER_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000572// PIC16:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +0000573// PIC16:#define __PTRDIFF_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000574// PIC16:#define __SCHAR_MAX__ 127
575// PIC16:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000576// PIC16:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000577// PIC16:#define __SIZEOF_DOUBLE__ 4
578// PIC16:#define __SIZEOF_FLOAT__ 4
579// PIC16:#define __SIZEOF_INT__ 2
580// PIC16:#define __SIZEOF_LONG_DOUBLE__ 4
581// PIC16:#define __SIZEOF_LONG_LONG__ 4
582// PIC16:#define __SIZEOF_LONG__ 4
583// PIC16:#define __SIZEOF_POINTER__ 2
584// PIC16:#define __SIZEOF_PTRDIFF_T__ 2
585// PIC16:#define __SIZEOF_SHORT__ 2
586// PIC16:#define __SIZEOF_SIZE_T__ 2
587// PIC16:#define __SIZEOF_WCHAR_T__ 2
588// PIC16:#define __SIZEOF_WINT_T__ 2
Chris Lattnerbceaf862009-10-29 04:55:36 +0000589// PIC16:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000590// PIC16:#define __SIZE_WIDTH__ 16
Ken Dyck8241d732009-11-19 13:18:59 +0000591// PIC16:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000592// PIC16:#define __USER_LABEL_PREFIX__ _
Chris Lattner91846462009-11-12 08:04:33 +0000593// PIC16:#define __WCHAR_MAX__ 32767
Chris Lattnerbceaf862009-10-29 04:55:36 +0000594// PIC16:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000595// PIC16:#define __WCHAR_WIDTH__ 16
Chris Lattnerbceaf862009-10-29 04:55:36 +0000596// PIC16:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000597// PIC16:#define __WINT_WIDTH__ 16
Sanjiv Guptafcd302b2010-02-16 03:37:11 +0000598// PIC16:#define __address(Addr) __attribute__((section("Address="#Addr)))
Chris Lattnerbceaf862009-10-29 04:55:36 +0000599// PIC16:#define __clang__ 1
Sanjiv Guptafcd302b2010-02-16 03:37:11 +0000600// PIC16:#define __config(conf) asm("CONFIG "#conf)
601// PIC16:#define __idlocs(value) asm("__IDLOCS "#value)
Chris Lattnerbceaf862009-10-29 04:55:36 +0000602// PIC16:#define __llvm__ 1
603// PIC16:#define __pic16 1
Sanjiv Guptafcd302b2010-02-16 03:37:11 +0000604// PIC16:#define __section(SectName) __attribute__((section(SectName)))
605// PIC16:#define interrupt __attribute__((section("interrupt=0x4"))) __attribute__((used))
606// PIC16:#define near __attribute__((section("Address=NEAR")))
Chris Lattnerbceaf862009-10-29 04:55:36 +0000607// PIC16:#define ram __attribute__((address_space(0)))
608// PIC16:#define rom __attribute__((address_space(1)))
609//
Daniel Dunbara5728872009-12-15 20:14:24 +0000610// 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 +0000611//
612// PPC64:#define _ARCH_PPC 1
613// PPC64:#define _ARCH_PPC64 1
614// PPC64:#define _BIG_ENDIAN 1
615// PPC64:#define _LP64 1
616// PPC64:#define __BIG_ENDIAN__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000617// PPC64:#define __CHAR16_TYPE__ unsigned short
618// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000619// PPC64:#define __CHAR_BIT__ 8
620// PPC64:#define __CHAR_UNSIGNED__ 1
621// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
622// PPC64:#define __DBL_DIG__ 15
623// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
624// PPC64:#define __DBL_HAS_DENORM__ 1
625// PPC64:#define __DBL_HAS_INFINITY__ 1
626// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
627// PPC64:#define __DBL_MANT_DIG__ 53
628// PPC64:#define __DBL_MAX_10_EXP__ 308
629// PPC64:#define __DBL_MAX_EXP__ 1024
630// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
631// PPC64:#define __DBL_MIN_10_EXP__ (-307)
632// PPC64:#define __DBL_MIN_EXP__ (-1021)
633// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
634// PPC64:#define __DECIMAL_DIG__ 17
635// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
636// PPC64:#define __FLT_DIG__ 6
637// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
638// PPC64:#define __FLT_EVAL_METHOD__ 0
639// PPC64:#define __FLT_HAS_DENORM__ 1
640// PPC64:#define __FLT_HAS_INFINITY__ 1
641// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
642// PPC64:#define __FLT_MANT_DIG__ 24
643// PPC64:#define __FLT_MAX_10_EXP__ 38
644// PPC64:#define __FLT_MAX_EXP__ 128
645// PPC64:#define __FLT_MAX__ 3.40282347e+38F
646// PPC64:#define __FLT_MIN_10_EXP__ (-37)
647// PPC64:#define __FLT_MIN_EXP__ (-125)
648// PPC64:#define __FLT_MIN__ 1.17549435e-38F
649// PPC64:#define __FLT_RADIX__ 2
650// PPC64:#define __INT16_TYPE__ short
651// PPC64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000652// PPC64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +0000653// PPC64:#define __INT64_TYPE__ long int
654// PPC64:#define __INT8_TYPE__ char
655// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +0000656// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +0000657// PPC64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000658// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000659// PPC64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000660// PPC64:#define __INT_MAX__ 2147483647
661// PPC64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
662// PPC64:#define __LDBL_DIG__ 15
663// PPC64:#define __LDBL_EPSILON__ 2.2204460492503131e-16
664// PPC64:#define __LDBL_HAS_DENORM__ 1
665// PPC64:#define __LDBL_HAS_INFINITY__ 1
666// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
667// PPC64:#define __LDBL_MANT_DIG__ 53
668// PPC64:#define __LDBL_MAX_10_EXP__ 308
669// PPC64:#define __LDBL_MAX_EXP__ 1024
670// PPC64:#define __LDBL_MAX__ 1.7976931348623157e+308
671// PPC64:#define __LDBL_MIN_10_EXP__ (-307)
672// PPC64:#define __LDBL_MIN_EXP__ (-1021)
673// PPC64:#define __LDBL_MIN__ 2.2250738585072014e-308
674// PPC64:#define __LONG_DOUBLE_128__ 1
675// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
676// PPC64:#define __LONG_MAX__ 9223372036854775807L
677// PPC64:#define __LP64__ 1
678// PPC64:#define __NATURAL_ALIGNMENT__ 1
679// PPC64:#define __NO_INLINE__ 1
680// PPC64:#define __POINTER_WIDTH__ 64
681// PPC64:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +0000682// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000683// PPC64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000684// PPC64:#define __REGISTER_PREFIX__
685// PPC64:#define __SCHAR_MAX__ 127
686// PPC64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000687// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000688// PPC64:#define __SIZEOF_DOUBLE__ 8
689// PPC64:#define __SIZEOF_FLOAT__ 4
690// PPC64:#define __SIZEOF_INT__ 4
691// PPC64:#define __SIZEOF_LONG_DOUBLE__ 8
692// PPC64:#define __SIZEOF_LONG_LONG__ 8
693// PPC64:#define __SIZEOF_LONG__ 8
694// PPC64:#define __SIZEOF_POINTER__ 8
695// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
696// PPC64:#define __SIZEOF_SHORT__ 2
697// PPC64:#define __SIZEOF_SIZE_T__ 8
698// PPC64:#define __SIZEOF_WCHAR_T__ 4
699// PPC64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000700// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000701// PPC64:#define __SIZE_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000702// PPC64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000703// PPC64:#define __USER_LABEL_PREFIX__ _
704// PPC64:#define __WCHAR_MAX__ 2147483647
705// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000706// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000707// PPC64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000708// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000709// PPC64:#define __ppc64__ 1
710// PPC64:#define __ppc__ 1
711//
Daniel Dunbara5728872009-12-15 20:14:24 +0000712// 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 +0000713//
714// PPC:#define _ARCH_PPC 1
715// PPC:#define _BIG_ENDIAN 1
716// PPC:#define __BIG_ENDIAN__ 1
Dan Gohmancfeac342010-05-28 00:27:15 +0000717// PPC:#define __CHAR16_TYPE__ unsigned short
718// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000719// PPC:#define __CHAR_BIT__ 8
720// PPC:#define __CHAR_UNSIGNED__ 1
721// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
722// PPC:#define __DBL_DIG__ 15
723// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
724// PPC:#define __DBL_HAS_DENORM__ 1
725// PPC:#define __DBL_HAS_INFINITY__ 1
726// PPC:#define __DBL_HAS_QUIET_NAN__ 1
727// PPC:#define __DBL_MANT_DIG__ 53
728// PPC:#define __DBL_MAX_10_EXP__ 308
729// PPC:#define __DBL_MAX_EXP__ 1024
730// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
731// PPC:#define __DBL_MIN_10_EXP__ (-307)
732// PPC:#define __DBL_MIN_EXP__ (-1021)
733// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
734// PPC:#define __DECIMAL_DIG__ 17
735// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
736// PPC:#define __FLT_DIG__ 6
737// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
738// PPC:#define __FLT_EVAL_METHOD__ 0
739// PPC:#define __FLT_HAS_DENORM__ 1
740// PPC:#define __FLT_HAS_INFINITY__ 1
741// PPC:#define __FLT_HAS_QUIET_NAN__ 1
742// PPC:#define __FLT_MANT_DIG__ 24
743// PPC:#define __FLT_MAX_10_EXP__ 38
744// PPC:#define __FLT_MAX_EXP__ 128
745// PPC:#define __FLT_MAX__ 3.40282347e+38F
746// PPC:#define __FLT_MIN_10_EXP__ (-37)
747// PPC:#define __FLT_MIN_EXP__ (-125)
748// PPC:#define __FLT_MIN__ 1.17549435e-38F
749// PPC:#define __FLT_RADIX__ 2
750// PPC:#define __INT16_TYPE__ short
751// PPC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000752// PPC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000753// PPC:#define __INT64_TYPE__ long long int
754// PPC:#define __INT8_TYPE__ char
755// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000756// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000757// PPC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000758// PPC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000759// PPC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000760// PPC:#define __INT_MAX__ 2147483647
761// PPC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
762// PPC:#define __LDBL_DIG__ 15
763// PPC:#define __LDBL_EPSILON__ 2.2204460492503131e-16
764// PPC:#define __LDBL_HAS_DENORM__ 1
765// PPC:#define __LDBL_HAS_INFINITY__ 1
766// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
767// PPC:#define __LDBL_MANT_DIG__ 53
768// PPC:#define __LDBL_MAX_10_EXP__ 308
769// PPC:#define __LDBL_MAX_EXP__ 1024
770// PPC:#define __LDBL_MAX__ 1.7976931348623157e+308
771// PPC:#define __LDBL_MIN_10_EXP__ (-307)
772// PPC:#define __LDBL_MIN_EXP__ (-1021)
773// PPC:#define __LDBL_MIN__ 2.2250738585072014e-308
774// PPC:#define __LONG_DOUBLE_128__ 1
775// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
776// PPC:#define __LONG_MAX__ 2147483647L
777// PPC:#define __NATURAL_ALIGNMENT__ 1
778// PPC:#define __NO_INLINE__ 1
779// PPC:#define __POINTER_WIDTH__ 32
780// PPC:#define __POWERPC__ 1
Ken Dyck8241d732009-11-19 13:18:59 +0000781// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000782// PPC:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000783// PPC:#define __REGISTER_PREFIX__
784// PPC:#define __SCHAR_MAX__ 127
785// PPC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000786// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000787// PPC:#define __SIZEOF_DOUBLE__ 8
788// PPC:#define __SIZEOF_FLOAT__ 4
789// PPC:#define __SIZEOF_INT__ 4
790// PPC:#define __SIZEOF_LONG_DOUBLE__ 8
791// PPC:#define __SIZEOF_LONG_LONG__ 8
792// PPC:#define __SIZEOF_LONG__ 4
793// PPC:#define __SIZEOF_POINTER__ 4
794// PPC:#define __SIZEOF_PTRDIFF_T__ 4
795// PPC:#define __SIZEOF_SHORT__ 2
796// PPC:#define __SIZEOF_SIZE_T__ 4
797// PPC:#define __SIZEOF_WCHAR_T__ 4
798// PPC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000799// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000800// PPC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000801// PPC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000802// PPC:#define __USER_LABEL_PREFIX__ _
803// PPC:#define __WCHAR_MAX__ 2147483647
804// PPC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000805// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000806// PPC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000807// PPC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000808// PPC:#define __ppc__ 1
809//
Daniel Dunbara5728872009-12-15 20:14:24 +0000810// 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 +0000811//
Dan Gohmancfeac342010-05-28 00:27:15 +0000812// S390X:#define __CHAR16_TYPE__ unsigned short
813// S390X:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000814// S390X:#define __CHAR_BIT__ 8
815// S390X:#define __CHAR_UNSIGNED__ 1
816// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
817// S390X:#define __DBL_DIG__ 15
818// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
819// S390X:#define __DBL_HAS_DENORM__ 1
820// S390X:#define __DBL_HAS_INFINITY__ 1
821// S390X:#define __DBL_HAS_QUIET_NAN__ 1
822// S390X:#define __DBL_MANT_DIG__ 53
823// S390X:#define __DBL_MAX_10_EXP__ 308
824// S390X:#define __DBL_MAX_EXP__ 1024
825// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
826// S390X:#define __DBL_MIN_10_EXP__ (-307)
827// S390X:#define __DBL_MIN_EXP__ (-1021)
828// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
829// S390X:#define __DECIMAL_DIG__ 17
830// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
831// S390X:#define __FLT_DIG__ 6
832// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
833// S390X:#define __FLT_EVAL_METHOD__ 0
834// S390X:#define __FLT_HAS_DENORM__ 1
835// S390X:#define __FLT_HAS_INFINITY__ 1
836// S390X:#define __FLT_HAS_QUIET_NAN__ 1
837// S390X:#define __FLT_MANT_DIG__ 24
838// S390X:#define __FLT_MAX_10_EXP__ 38
839// S390X:#define __FLT_MAX_EXP__ 128
840// S390X:#define __FLT_MAX__ 3.40282347e+38F
841// S390X:#define __FLT_MIN_10_EXP__ (-37)
842// S390X:#define __FLT_MIN_EXP__ (-125)
843// S390X:#define __FLT_MIN__ 1.17549435e-38F
844// S390X:#define __FLT_RADIX__ 2
845// S390X:#define __INT16_TYPE__ short
846// S390X:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000847// S390X:#define __INT64_C_SUFFIX__ L
Daniel Dunbar7f3a5452010-06-30 06:30:56 +0000848// S390X:#define __INT64_TYPE__ long long int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000849// S390X:#define __INT8_TYPE__ char
850// S390X:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000851// S390X:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000852// S390X:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000853// S390X:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000854// S390X:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000855// S390X:#define __INT_MAX__ 2147483647
856// S390X:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
857// S390X:#define __LDBL_DIG__ 15
858// S390X:#define __LDBL_EPSILON__ 2.2204460492503131e-16
859// S390X:#define __LDBL_HAS_DENORM__ 1
860// S390X:#define __LDBL_HAS_INFINITY__ 1
861// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
862// S390X:#define __LDBL_MANT_DIG__ 53
863// S390X:#define __LDBL_MAX_10_EXP__ 308
864// S390X:#define __LDBL_MAX_EXP__ 1024
865// S390X:#define __LDBL_MAX__ 1.7976931348623157e+308
866// S390X:#define __LDBL_MIN_10_EXP__ (-307)
867// S390X:#define __LDBL_MIN_EXP__ (-1021)
868// S390X:#define __LDBL_MIN__ 2.2250738585072014e-308
869// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
870// S390X:#define __LONG_MAX__ 9223372036854775807L
871// S390X:#define __NO_INLINE__ 1
872// S390X:#define __POINTER_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000873// S390X:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000874// S390X:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +0000875// S390X:#define __SCHAR_MAX__ 127
876// S390X:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000877// S390X:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000878// S390X:#define __SIZEOF_DOUBLE__ 8
879// S390X:#define __SIZEOF_FLOAT__ 4
880// S390X:#define __SIZEOF_INT__ 4
881// S390X:#define __SIZEOF_LONG_DOUBLE__ 8
882// S390X:#define __SIZEOF_LONG_LONG__ 8
883// S390X:#define __SIZEOF_LONG__ 8
884// S390X:#define __SIZEOF_POINTER__ 8
885// S390X:#define __SIZEOF_PTRDIFF_T__ 8
886// S390X:#define __SIZEOF_SHORT__ 2
887// S390X:#define __SIZEOF_SIZE_T__ 8
888// S390X:#define __SIZEOF_WCHAR_T__ 4
889// S390X:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000890// S390X:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000891// S390X:#define __SIZE_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000892// S390X:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000893// S390X:#define __USER_LABEL_PREFIX__ _
894// S390X:#define __WCHAR_MAX__ 2147483647
895// S390X:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000896// S390X:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000897// S390X:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000898// S390X:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000899// S390X:#define __s390__ 1
900// S390X:#define __s390x__ 1
901//
Daniel Dunbara5728872009-12-15 20:14:24 +0000902// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -check-prefix SPARC %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000903//
Dan Gohmancfeac342010-05-28 00:27:15 +0000904// SPARC:#define __CHAR16_TYPE__ unsigned short
905// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000906// SPARC:#define __CHAR_BIT__ 8
907// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
908// SPARC:#define __DBL_DIG__ 15
909// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
910// SPARC:#define __DBL_HAS_DENORM__ 1
911// SPARC:#define __DBL_HAS_INFINITY__ 1
912// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
913// SPARC:#define __DBL_MANT_DIG__ 53
914// SPARC:#define __DBL_MAX_10_EXP__ 308
915// SPARC:#define __DBL_MAX_EXP__ 1024
916// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
917// SPARC:#define __DBL_MIN_10_EXP__ (-307)
918// SPARC:#define __DBL_MIN_EXP__ (-1021)
919// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
920// SPARC:#define __DECIMAL_DIG__ 17
921// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
922// SPARC:#define __FLT_DIG__ 6
923// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
924// SPARC:#define __FLT_EVAL_METHOD__ 0
925// SPARC:#define __FLT_HAS_DENORM__ 1
926// SPARC:#define __FLT_HAS_INFINITY__ 1
927// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
928// SPARC:#define __FLT_MANT_DIG__ 24
929// SPARC:#define __FLT_MAX_10_EXP__ 38
930// SPARC:#define __FLT_MAX_EXP__ 128
931// SPARC:#define __FLT_MAX__ 3.40282347e+38F
932// SPARC:#define __FLT_MIN_10_EXP__ (-37)
933// SPARC:#define __FLT_MIN_EXP__ (-125)
934// SPARC:#define __FLT_MIN__ 1.17549435e-38F
935// SPARC:#define __FLT_RADIX__ 2
936// SPARC:#define __INT16_TYPE__ short
937// SPARC:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +0000938// SPARC:#define __INT64_C_SUFFIX__ LL
Chris Lattnerbceaf862009-10-29 04:55:36 +0000939// SPARC:#define __INT64_TYPE__ long long int
940// SPARC:#define __INT8_TYPE__ char
941// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck8241d732009-11-19 13:18:59 +0000942// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyck186696b2009-11-18 13:52:57 +0000943// SPARC:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +0000944// SPARC:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +0000945// SPARC:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000946// SPARC:#define __INT_MAX__ 2147483647
947// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324
948// SPARC:#define __LDBL_DIG__ 15
949// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16
950// SPARC:#define __LDBL_HAS_DENORM__ 1
951// SPARC:#define __LDBL_HAS_INFINITY__ 1
952// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
953// SPARC:#define __LDBL_MANT_DIG__ 53
954// SPARC:#define __LDBL_MAX_10_EXP__ 308
955// SPARC:#define __LDBL_MAX_EXP__ 1024
956// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308
957// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
958// SPARC:#define __LDBL_MIN_EXP__ (-1021)
959// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308
960// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
961// SPARC:#define __LONG_MAX__ 2147483647L
962// SPARC:#define __NO_INLINE__ 1
963// SPARC:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000964// SPARC:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +0000965// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbareac7c532009-12-18 18:42:37 +0000966// SPARC:#define __REGISTER_PREFIX__
Chris Lattnerbceaf862009-10-29 04:55:36 +0000967// SPARC:#define __SCHAR_MAX__ 127
968// SPARC:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +0000969// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +0000970// SPARC:#define __SIZEOF_DOUBLE__ 8
971// SPARC:#define __SIZEOF_FLOAT__ 4
972// SPARC:#define __SIZEOF_INT__ 4
973// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
974// SPARC:#define __SIZEOF_LONG_LONG__ 8
975// SPARC:#define __SIZEOF_LONG__ 4
976// SPARC:#define __SIZEOF_POINTER__ 4
977// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
978// SPARC:#define __SIZEOF_SHORT__ 2
979// SPARC:#define __SIZEOF_SIZE_T__ 4
980// SPARC:#define __SIZEOF_WCHAR_T__ 4
981// SPARC:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +0000982// SPARC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +0000983// SPARC:#define __SIZE_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +0000984// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +0000985// SPARC:#define __USER_LABEL_PREFIX__ _
986// SPARC:#define __VERSION__ "4.2.1 Compatible Clang Compiler"
987// SPARC:#define __WCHAR_MAX__ 2147483647
988// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +0000989// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000990// SPARC:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +0000991// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +0000992// SPARC:#define __sparc 1
993// SPARC:#define __sparc__ 1
994// SPARC:#define __sparcv8 1
995// SPARC:#define sparc 1
996//
Daniel Dunbara5728872009-12-15 20:14:24 +0000997// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -check-prefix TCE %s
Chris Lattnerbceaf862009-10-29 04:55:36 +0000998//
Dan Gohmancfeac342010-05-28 00:27:15 +0000999// TCE:#define __CHAR16_TYPE__ unsigned short
1000// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001001// TCE:#define __CHAR_BIT__ 8
1002// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45F
1003// TCE:#define __DBL_DIG__ 6
1004// TCE:#define __DBL_EPSILON__ 1.19209290e-7F
1005// TCE:#define __DBL_HAS_DENORM__ 1
1006// TCE:#define __DBL_HAS_INFINITY__ 1
1007// TCE:#define __DBL_HAS_QUIET_NAN__ 1
1008// TCE:#define __DBL_MANT_DIG__ 24
1009// TCE:#define __DBL_MAX_10_EXP__ 38
1010// TCE:#define __DBL_MAX_EXP__ 128
1011// TCE:#define __DBL_MAX__ 3.40282347e+38F
1012// TCE:#define __DBL_MIN_10_EXP__ (-37)
1013// TCE:#define __DBL_MIN_EXP__ (-125)
1014// TCE:#define __DBL_MIN__ 1.17549435e-38F
1015// TCE:#define __DECIMAL_DIG__ -1
1016// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1017// TCE:#define __FLT_DIG__ 6
1018// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
1019// TCE:#define __FLT_EVAL_METHOD__ 0
1020// TCE:#define __FLT_HAS_DENORM__ 1
1021// TCE:#define __FLT_HAS_INFINITY__ 1
1022// TCE:#define __FLT_HAS_QUIET_NAN__ 1
1023// TCE:#define __FLT_MANT_DIG__ 24
1024// TCE:#define __FLT_MAX_10_EXP__ 38
1025// TCE:#define __FLT_MAX_EXP__ 128
1026// TCE:#define __FLT_MAX__ 3.40282347e+38F
1027// TCE:#define __FLT_MIN_10_EXP__ (-37)
1028// TCE:#define __FLT_MIN_EXP__ (-125)
1029// TCE:#define __FLT_MIN__ 1.17549435e-38F
1030// TCE:#define __FLT_RADIX__ 2
1031// TCE:#define __INT16_TYPE__ short
1032// TCE:#define __INT32_TYPE__ int
1033// TCE:#define __INT8_TYPE__ char
1034// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck8241d732009-11-19 13:18:59 +00001035// TCE:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001036// TCE:#define __INTMAX_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001037// TCE:#define __INTPTR_TYPE__ int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001038// TCE:#define __INTPTR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001039// TCE:#define __INT_MAX__ 2147483647
1040// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45F
1041// TCE:#define __LDBL_DIG__ 6
1042// TCE:#define __LDBL_EPSILON__ 1.19209290e-7F
1043// TCE:#define __LDBL_HAS_DENORM__ 1
1044// TCE:#define __LDBL_HAS_INFINITY__ 1
1045// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
1046// TCE:#define __LDBL_MANT_DIG__ 24
1047// TCE:#define __LDBL_MAX_10_EXP__ 38
1048// TCE:#define __LDBL_MAX_EXP__ 128
1049// TCE:#define __LDBL_MAX__ 3.40282347e+38F
1050// TCE:#define __LDBL_MIN_10_EXP__ (-37)
1051// TCE:#define __LDBL_MIN_EXP__ (-125)
1052// TCE:#define __LDBL_MIN__ 1.17549435e-38F
1053// TCE:#define __LONG_LONG_MAX__ 2147483647LL
1054// TCE:#define __LONG_MAX__ 2147483647L
1055// TCE:#define __NO_INLINE__ 1
1056// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck8241d732009-11-19 13:18:59 +00001057// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyckd00c7512009-11-19 12:21:52 +00001058// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001059// TCE:#define __SCHAR_MAX__ 127
1060// TCE:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001061// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001062// TCE:#define __SIZEOF_DOUBLE__ 4
1063// TCE:#define __SIZEOF_FLOAT__ 4
1064// TCE:#define __SIZEOF_INT__ 4
1065// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
1066// TCE:#define __SIZEOF_LONG_LONG__ 4
1067// TCE:#define __SIZEOF_LONG__ 4
1068// TCE:#define __SIZEOF_POINTER__ 4
1069// TCE:#define __SIZEOF_PTRDIFF_T__ 4
1070// TCE:#define __SIZEOF_SHORT__ 2
1071// TCE:#define __SIZEOF_SIZE_T__ 4
1072// TCE:#define __SIZEOF_WCHAR_T__ 4
1073// TCE:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001074// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001075// TCE:#define __SIZE_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001076// TCE:#define __TCE_V1__ 1
1077// TCE:#define __TCE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001078// TCE:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001079// TCE:#define __USER_LABEL_PREFIX__ _
1080// TCE:#define __WCHAR_MAX__ 2147483647
1081// TCE:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001082// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001083// TCE:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001084// TCE:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001085// TCE:#define __tce 1
1086// TCE:#define __tce__ 1
1087// TCE:#define tce 1
1088//
Daniel Dunbara5728872009-12-15 20:14:24 +00001089// 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 +00001090//
1091// X86_64:#define _LP64 1
Dan Gohmancfeac342010-05-28 00:27:15 +00001092// X86_64:#define __CHAR16_TYPE__ unsigned short
1093// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001094// X86_64:#define __CHAR_BIT__ 8
1095// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1096// X86_64:#define __DBL_DIG__ 15
1097// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
1098// X86_64:#define __DBL_HAS_DENORM__ 1
1099// X86_64:#define __DBL_HAS_INFINITY__ 1
1100// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
1101// X86_64:#define __DBL_MANT_DIG__ 53
1102// X86_64:#define __DBL_MAX_10_EXP__ 308
1103// X86_64:#define __DBL_MAX_EXP__ 1024
1104// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
1105// X86_64:#define __DBL_MIN_10_EXP__ (-307)
1106// X86_64:#define __DBL_MIN_EXP__ (-1021)
1107// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
1108// X86_64:#define __DECIMAL_DIG__ 21
1109// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1110// X86_64:#define __FLT_DIG__ 6
1111// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
1112// X86_64:#define __FLT_EVAL_METHOD__ 0
1113// X86_64:#define __FLT_HAS_DENORM__ 1
1114// X86_64:#define __FLT_HAS_INFINITY__ 1
1115// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
1116// X86_64:#define __FLT_MANT_DIG__ 24
1117// X86_64:#define __FLT_MAX_10_EXP__ 38
1118// X86_64:#define __FLT_MAX_EXP__ 128
1119// X86_64:#define __FLT_MAX__ 3.40282347e+38F
1120// X86_64:#define __FLT_MIN_10_EXP__ (-37)
1121// X86_64:#define __FLT_MIN_EXP__ (-125)
1122// X86_64:#define __FLT_MIN__ 1.17549435e-38F
1123// X86_64:#define __FLT_RADIX__ 2
1124// X86_64:#define __INT16_TYPE__ short
1125// X86_64:#define __INT32_TYPE__ int
Ken Dyckeef22ef2009-11-16 16:36:33 +00001126// X86_64:#define __INT64_C_SUFFIX__ L
Chris Lattnerbceaf862009-10-29 04:55:36 +00001127// X86_64:#define __INT64_TYPE__ long int
1128// X86_64:#define __INT8_TYPE__ char
1129// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck8241d732009-11-19 13:18:59 +00001130// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyck186696b2009-11-18 13:52:57 +00001131// X86_64:#define __INTMAX_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001132// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyckd896e1a2009-11-18 20:05:48 +00001133// X86_64:#define __INTPTR_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001134// X86_64:#define __INT_MAX__ 2147483647
1135// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
1136// X86_64:#define __LDBL_DIG__ 18
1137// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
1138// X86_64:#define __LDBL_HAS_DENORM__ 1
1139// X86_64:#define __LDBL_HAS_INFINITY__ 1
1140// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
1141// X86_64:#define __LDBL_MANT_DIG__ 64
1142// X86_64:#define __LDBL_MAX_10_EXP__ 4932
1143// X86_64:#define __LDBL_MAX_EXP__ 16384
1144// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
1145// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
1146// X86_64:#define __LDBL_MIN_EXP__ (-16381)
1147// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
1148// X86_64:#define __LITTLE_ENDIAN__ 1
1149// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
1150// X86_64:#define __LONG_MAX__ 9223372036854775807L
1151// X86_64:#define __LP64__ 1
1152// X86_64:#define __MMX__ 1
1153// X86_64:#define __NO_INLINE__ 1
1154// X86_64:#define __NO_MATH_INLINES 1
1155// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck8241d732009-11-19 13:18:59 +00001156// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyckd00c7512009-11-19 12:21:52 +00001157// X86_64:#define __PTRDIFF_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001158// X86_64:#define __REGISTER_PREFIX__
1159// X86_64:#define __SCHAR_MAX__ 127
1160// X86_64:#define __SHRT_MAX__ 32767
Ken Dyck3e945c82009-11-22 15:41:04 +00001161// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohmancfeac342010-05-28 00:27:15 +00001162// X86_64:#define __SIZEOF_DOUBLE__ 8
1163// X86_64:#define __SIZEOF_FLOAT__ 4
1164// X86_64:#define __SIZEOF_INT__ 4
1165// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
1166// X86_64:#define __SIZEOF_LONG_LONG__ 8
1167// X86_64:#define __SIZEOF_LONG__ 8
1168// X86_64:#define __SIZEOF_POINTER__ 8
1169// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
1170// X86_64:#define __SIZEOF_SHORT__ 2
1171// X86_64:#define __SIZEOF_SIZE_T__ 8
1172// X86_64:#define __SIZEOF_WCHAR_T__ 4
1173// X86_64:#define __SIZEOF_WINT_T__ 4
Chris Lattnerbceaf862009-10-29 04:55:36 +00001174// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck7484e5d2009-11-19 13:42:09 +00001175// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnerbceaf862009-10-29 04:55:36 +00001176// X86_64:#define __SSE2_MATH__ 1
1177// X86_64:#define __SSE2__ 1
1178// X86_64:#define __SSE_MATH__ 1
1179// X86_64:#define __SSE__ 1
Ken Dyck8241d732009-11-19 13:18:59 +00001180// X86_64:#define __UINTMAX_TYPE__ long unsigned int
Chris Lattnerbceaf862009-10-29 04:55:36 +00001181// X86_64:#define __USER_LABEL_PREFIX__ _
1182// X86_64:#define __WCHAR_MAX__ 2147483647
1183// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck63e65612009-11-19 15:47:58 +00001184// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001185// X86_64:#define __WINT_TYPE__ int
Ken Dyck7635d212009-11-19 14:16:57 +00001186// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnerbceaf862009-10-29 04:55:36 +00001187// X86_64:#define __amd64 1
1188// X86_64:#define __amd64__ 1
1189// X86_64:#define __nocona 1
1190// X86_64:#define __nocona__ 1
1191// X86_64:#define __tune_nocona__ 1
1192// X86_64:#define __x86_64 1
1193// X86_64:#define __x86_64__ 1
1194//
Douglas Gregor66791df2010-04-16 06:31:05 +00001195// RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -E -dM < /dev/null | FileCheck -check-prefix GNUSOURCE %s
1196// GNUSOURCE:#define _GNU_SOURCE 1
1197//
Dan Gohmancfeac342010-05-28 00:27:15 +00001198// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -check-prefix NORTTI %s
1199// NORTTI: __GXX_ABI_VERSION
1200// NORTTI-NOT:#define __GXX_RTTI
1201// NORTTI: __STDC__