blob: 8b8901931e7a47ded3f5de2fbd7779534aa1ff5b [file] [log] [blame]
James Y Knightc97efa42016-02-11 16:51:29 +00001// RUN: %clang_cc1 -E -dM -x assembler-with-cpp < /dev/null | FileCheck -match-full-lines -check-prefix ASM %s
Chris Lattnere963d092009-10-29 04:55:36 +00002//
3// ASM:#define __ASSEMBLER__ 1
4//
Eli Bendersky8ea8b342015-09-01 18:56:19 +00005//
James Y Knightc97efa42016-02-11 16:51:29 +00006// RUN: %clang_cc1 -fblocks -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix BLOCKS %s
Chris Lattnere963d092009-10-29 04:55:36 +00007//
8// BLOCKS:#define __BLOCKS__ 1
9// BLOCKS:#define __block __attribute__((__blocks__(byref)))
10//
Richard Smith0a715422013-05-07 19:32:56 +000011//
James Y Knightc97efa42016-02-11 16:51:29 +000012// RUN: %clang_cc1 -x c++ -std=c++1z -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Z %s
Richard Smithdbd4d4c2014-06-16 15:16:56 +000013//
James Y Knightc97efa42016-02-11 16:51:29 +000014// CXX1Z:#define __GNUG__ {{.*}}
Richard Smithdbd4d4c2014-06-16 15:16:56 +000015// CXX1Z:#define __GXX_EXPERIMENTAL_CXX0X__ 1
16// CXX1Z:#define __GXX_RTTI 1
17// CXX1Z:#define __GXX_WEAK__ 1
18// CXX1Z:#define __cplusplus 201406L
19// CXX1Z:#define __private_extern__ extern
20//
21//
James Y Knightc97efa42016-02-11 16:51:29 +000022// RUN: %clang_cc1 -x c++ -std=c++1y -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Y %s
Richard Smith0a715422013-05-07 19:32:56 +000023//
James Y Knightc97efa42016-02-11 16:51:29 +000024// CXX1Y:#define __GNUG__ {{.*}}
Richard Smith0a715422013-05-07 19:32:56 +000025// CXX1Y:#define __GXX_EXPERIMENTAL_CXX0X__ 1
26// CXX1Y:#define __GXX_RTTI 1
27// CXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +000028// CXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +000029// CXX1Y:#define __private_extern__ extern
30//
31//
James Y Knightc97efa42016-02-11 16:51:29 +000032// RUN: %clang_cc1 -x c++ -std=c++11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX11 %s
Chris Lattnere963d092009-10-29 04:55:36 +000033//
James Y Knightc97efa42016-02-11 16:51:29 +000034// CXX11:#define __GNUG__ {{.*}}
Richard Smith89645bc2013-01-02 12:01:23 +000035// CXX11:#define __GXX_EXPERIMENTAL_CXX0X__ 1
36// CXX11:#define __GXX_RTTI 1
37// CXX11:#define __GXX_WEAK__ 1
38// CXX11:#define __cplusplus 201103L
39// CXX11:#define __private_extern__ extern
Chris Lattnere963d092009-10-29 04:55:36 +000040//
41//
James Y Knightc97efa42016-02-11 16:51:29 +000042// RUN: %clang_cc1 -x c++ -std=c++98 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX98 %s
Chris Lattnere963d092009-10-29 04:55:36 +000043//
James Y Knightc97efa42016-02-11 16:51:29 +000044// CXX98:#define __GNUG__ {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +000045// CXX98:#define __GXX_RTTI 1
Chris Lattnere963d092009-10-29 04:55:36 +000046// CXX98:#define __GXX_WEAK__ 1
47// CXX98:#define __cplusplus 199711L
48// CXX98:#define __private_extern__ extern
49//
50//
James Y Knightc97efa42016-02-11 16:51:29 +000051// RUN: %clang_cc1 -fdeprecated-macro -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix DEPRECATED %s
Chandler Carruth30483fb2011-04-23 19:48:40 +000052//
53// DEPRECATED:#define __DEPRECATED 1
54//
55//
James Y Knightc97efa42016-02-11 16:51:29 +000056// RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C99 %s
Chris Lattnere963d092009-10-29 04:55:36 +000057//
58// C99:#define __STDC_VERSION__ 199901L
59// C99:#define __STRICT_ANSI__ 1
Yunzhong Gaobacf7e42016-01-26 20:15:02 +000060// C99-NOT: __GXX_EXPERIMENTAL_CXX0X__
61// C99-NOT: __GXX_RTTI
62// C99-NOT: __GXX_WEAK__
63// C99-NOT: __cplusplus
Chris Lattnere963d092009-10-29 04:55:36 +000064//
65//
James Y Knightc97efa42016-02-11 16:51:29 +000066// RUN: %clang_cc1 -std=c11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
Benjamin Kramer6aeb2492016-12-06 10:23:07 +000067// RUN: %clang_cc1 -std=c1x -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
68// RUN: %clang_cc1 -std=iso9899:2011 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
69// RUN: %clang_cc1 -std=iso9899:201x -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
Ed Schoutend0621462013-09-29 07:54:52 +000070//
71// C11:#define __STDC_UTF_16__ 1
72// C11:#define __STDC_UTF_32__ 1
73// C11:#define __STDC_VERSION__ 201112L
74// C11:#define __STRICT_ANSI__ 1
Yunzhong Gaobacf7e42016-01-26 20:15:02 +000075// C11-NOT: __GXX_EXPERIMENTAL_CXX0X__
76// C11-NOT: __GXX_RTTI
77// C11-NOT: __GXX_WEAK__
78// C11-NOT: __cplusplus
Ed Schoutend0621462013-09-29 07:54:52 +000079//
80//
James Y Knightc97efa42016-02-11 16:51:29 +000081// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix COMMON %s
Chris Lattnere963d092009-10-29 04:55:36 +000082//
83// COMMON:#define __CONSTANT_CFSTRINGS__ 1
84// COMMON:#define __FINITE_MATH_ONLY__ 0
James Y Knightc97efa42016-02-11 16:51:29 +000085// COMMON:#define __GNUC_MINOR__ {{.*}}
86// COMMON:#define __GNUC_PATCHLEVEL__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +000087// COMMON:#define __GNUC_STDC_INLINE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +000088// COMMON:#define __GNUC__ {{.*}}
89// COMMON:#define __GXX_ABI_VERSION {{.*}}
Dylan Noblesmith673728f2012-07-27 18:34:31 +000090// COMMON:#define __ORDER_BIG_ENDIAN__ 4321
91// COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234
92// COMMON:#define __ORDER_PDP_ENDIAN__ 3412
Chris Lattnere963d092009-10-29 04:55:36 +000093// COMMON:#define __STDC_HOSTED__ 1
Chris Lattnere963d092009-10-29 04:55:36 +000094// COMMON:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +000095// COMMON:#define __VERSION__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +000096// COMMON:#define __clang__ 1
Daniel Dunbard7e887f2010-06-25 23:34:47 +000097// COMMON:#define __clang_major__ {{[0-9]+}}
98// COMMON:#define __clang_minor__ {{[0-9]+}}
99// COMMON:#define __clang_patchlevel__ {{[0-9]+}}
James Y Knightc97efa42016-02-11 16:51:29 +0000100// COMMON:#define __clang_version__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +0000101// COMMON:#define __llvm__ 1
102//
Sunil Srivastavabf010802016-04-27 19:53:03 +0000103// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-win32 < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
104// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
105// RUN: %clang_cc1 -E -dM -triple=x86_64-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
106// RUN: %clang_cc1 -E -dM -triple=armv7a-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
Chris Lattnere963d092009-10-29 04:55:36 +0000107//
Sunil Srivastavabf010802016-04-27 19:53:03 +0000108// C-DEFAULT:#define __STDC_VERSION__ 201112L
109//
James Y Knightc97efa42016-02-11 16:51:29 +0000110// RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix FREESTANDING %s
Chris Lattnere963d092009-10-29 04:55:36 +0000111// FREESTANDING:#define __STDC_HOSTED__ 0
Richard Smithd106a982012-05-03 22:18:20 +0000112//
113//
James Y Knightc97efa42016-02-11 16:51:29 +0000114// RUN: %clang_cc1 -x c++ -std=gnu++1z -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX1Z %s
Richard Smithdbd4d4c2014-06-16 15:16:56 +0000115//
James Y Knightc97efa42016-02-11 16:51:29 +0000116// GXX1Z:#define __GNUG__ {{.*}}
Richard Smithdbd4d4c2014-06-16 15:16:56 +0000117// GXX1Z:#define __GXX_WEAK__ 1
118// GXX1Z:#define __cplusplus 201406L
119// GXX1Z:#define __private_extern__ extern
120//
121//
James Y Knightc97efa42016-02-11 16:51:29 +0000122// RUN: %clang_cc1 -x c++ -std=gnu++1y -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX1Y %s
Richard Smith0a715422013-05-07 19:32:56 +0000123//
James Y Knightc97efa42016-02-11 16:51:29 +0000124// GXX1Y:#define __GNUG__ {{.*}}
Richard Smith0a715422013-05-07 19:32:56 +0000125// GXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +0000126// GXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +0000127// GXX1Y:#define __private_extern__ extern
128//
129//
James Y Knightc97efa42016-02-11 16:51:29 +0000130// RUN: %clang_cc1 -x c++ -std=gnu++11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX11 %s
Richard Smithd106a982012-05-03 22:18:20 +0000131//
James Y Knightc97efa42016-02-11 16:51:29 +0000132// GXX11:#define __GNUG__ {{.*}}
Richard Smithd106a982012-05-03 22:18:20 +0000133// GXX11:#define __GXX_WEAK__ 1
134// GXX11:#define __cplusplus 201103L
135// GXX11:#define __private_extern__ extern
136//
137//
James Y Knightc97efa42016-02-11 16:51:29 +0000138// RUN: %clang_cc1 -x c++ -std=gnu++98 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX98 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000139//
James Y Knightc97efa42016-02-11 16:51:29 +0000140// GXX98:#define __GNUG__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +0000141// GXX98:#define __GXX_WEAK__ 1
Richard Smithd106a982012-05-03 22:18:20 +0000142// GXX98:#define __cplusplus 199711L
Chris Lattnere963d092009-10-29 04:55:36 +0000143// GXX98:#define __private_extern__ extern
144//
145//
James Y Knightc97efa42016-02-11 16:51:29 +0000146// RUN: %clang_cc1 -std=iso9899:199409 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C94 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000147//
148// C94:#define __STDC_VERSION__ 199409L
149//
150//
James Y Knightc97efa42016-02-11 16:51:29 +0000151// RUN: %clang_cc1 -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix MSEXT %s
Chris Lattnere963d092009-10-29 04:55:36 +0000152//
153// MSEXT-NOT:#define __STDC__
Douglas Gregor7617cb82010-08-06 12:37:52 +0000154// MSEXT:#define _INTEGRAL_MAX_BITS 64
Hans Wennborg4c02be32013-05-02 13:12:32 +0000155// MSEXT-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
156// MSEXT-NOT:#define _WCHAR_T_DEFINED 1
157//
158//
James Y Knightc97efa42016-02-11 16:51:29 +0000159// RUN: %clang_cc1 -x c++ -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix MSEXT-CXX %s
Hans Wennborg4c02be32013-05-02 13:12:32 +0000160//
161// MSEXT-CXX:#define _NATIVE_WCHAR_T_DEFINED 1
162// MSEXT-CXX:#define _WCHAR_T_DEFINED 1
David Majnemerc19475a2015-07-15 17:32:34 +0000163// MSEXT-CXX:#define __BOOL_DEFINED 1
Hans Wennborg4c02be32013-05-02 13:12:32 +0000164//
165//
James Y Knightc97efa42016-02-11 16:51:29 +0000166// RUN: %clang_cc1 -x c++ -fno-wchar -fms-extensions -triple i686-pc-win32 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix MSEXT-CXX-NOWCHAR %s
Hans Wennborg4c02be32013-05-02 13:12:32 +0000167//
168// MSEXT-CXX-NOWCHAR-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
169// MSEXT-CXX-NOWCHAR-NOT:#define _WCHAR_T_DEFINED 1
David Majnemerc19475a2015-07-15 17:32:34 +0000170// MSEXT-CXX-NOWCHAR:#define __BOOL_DEFINED 1
Chris Lattnere963d092009-10-29 04:55:36 +0000171//
172//
James Y Knightc97efa42016-02-11 16:51:29 +0000173// RUN: %clang_cc1 -x objective-c -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix OBJC %s
Chris Lattnere963d092009-10-29 04:55:36 +0000174//
175// OBJC:#define OBJC_NEW_PROPERTIES 1
Daniel Dunbar4656c532009-11-17 07:07:28 +0000176// OBJC:#define __NEXT_RUNTIME__ 1
Chris Lattnere963d092009-10-29 04:55:36 +0000177// OBJC:#define __OBJC__ 1
178//
Daniel Dunbar4656c532009-11-17 07:07:28 +0000179//
James Y Knightc97efa42016-02-11 16:51:29 +0000180// RUN: %clang_cc1 -x objective-c -fobjc-gc -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix OBJCGC %s
Chris Lattnere963d092009-10-29 04:55:36 +0000181//
182// OBJCGC:#define __OBJC_GC__ 1
183//
184//
James Y Knightc97efa42016-02-11 16:51:29 +0000185// RUN: %clang_cc1 -x objective-c -fobjc-exceptions -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NONFRAGILE %s
Chris Lattnere963d092009-10-29 04:55:36 +0000186//
187// NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
188// NONFRAGILE:#define __OBJC2__ 1
189//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000190//
James Y Knightc97efa42016-02-11 16:51:29 +0000191// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O0 %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000192//
193// O0:#define __NO_INLINE__ 1
194// O0-NOT:#define __OPTIMIZE_SIZE__
195// O0-NOT:#define __OPTIMIZE__
196//
197//
James Y Knightc97efa42016-02-11 16:51:29 +0000198// RUN: %clang_cc1 -fno-inline -O3 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NO_INLINE %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000199//
200// NO_INLINE:#define __NO_INLINE__ 1
201// NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
James Y Knightc97efa42016-02-11 16:51:29 +0000202// NO_INLINE:#define __OPTIMIZE__ 1
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000203//
204//
James Y Knightc97efa42016-02-11 16:51:29 +0000205// RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O1 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000206//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000207// O1-NOT:#define __OPTIMIZE_SIZE__
Chris Lattnere963d092009-10-29 04:55:36 +0000208// O1:#define __OPTIMIZE__ 1
209//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000210//
Sylvestre Ledrud340ccc2016-11-11 17:29:56 +0000211// RUN: %clang_cc1 -Og -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Og %s
212//
213// Og-NOT:#define __OPTIMIZE_SIZE__
214// Og :#define __OPTIMIZE__ 1
215//
216//
James Y Knightc97efa42016-02-11 16:51:29 +0000217// RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Os %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000218//
219// Os:#define __OPTIMIZE_SIZE__ 1
220// Os:#define __OPTIMIZE__ 1
221//
222//
James Y Knightc97efa42016-02-11 16:51:29 +0000223// RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Oz %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000224//
225// Oz:#define __OPTIMIZE_SIZE__ 1
226// Oz:#define __OPTIMIZE__ 1
227//
228//
James Y Knightc97efa42016-02-11 16:51:29 +0000229// RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix PASCAL %s
Chris Lattnere963d092009-10-29 04:55:36 +0000230//
231// PASCAL:#define __PASCAL_STRINGS__ 1
232//
233//
James Y Knightc97efa42016-02-11 16:51:29 +0000234// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix SCHAR %s
Chris Lattnere963d092009-10-29 04:55:36 +0000235//
236// SCHAR:#define __STDC__ 1
237// SCHAR-NOT:#define __UNSIGNED_CHAR__
238// SCHAR:#define __clang__ 1
239//
James Y Knightc97efa42016-02-11 16:51:29 +0000240// RUN: %clang_cc1 -E -dM -fshort-wchar < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
NAKAMURA Takumi210fbcd2014-02-25 00:30:14 +0000241// wchar_t is u16 for targeting Win32.
242// FIXME: Implement and check x86_64-cygwin.
James Y Knightc97efa42016-02-11 16:51:29 +0000243// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=x86_64-w64-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
Eli Friedman865afc92010-08-03 17:34:19 +0000244//
245// SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000246// SHORTWCHAR: #define __WCHAR_MAX__ 65535
Eli Friedman865afc92010-08-03 17:34:19 +0000247// SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
248// SHORTWCHAR: #define __WCHAR_WIDTH__ 16
249//
James Y Knightc97efa42016-02-11 16:51:29 +0000250// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=i686-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
251// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=x86_64-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
Richard Bartonc9b5f352014-02-24 18:43:28 +0000252//
253// SHORTWCHAR2: #define __SIZEOF_WCHAR_T__ 4
254// SHORTWCHAR2: #define __WCHAR_WIDTH__ 32
255// Other definitions vary from platform to platform
Christian Pirker227f5ed2014-03-24 13:57:21 +0000256
James Y Knightc97efa42016-02-11 16:51:29 +0000257// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
258// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
Richard Smith59139022016-09-30 22:41:36 +0000259// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=arm64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 -check-prefix AARCH64-CXX %s
Kevin Qinad64f6d2014-02-24 02:45:03 +0000260//
261// AARCH64:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000262// AARCH64-NOT:#define __AARCH64EB__ 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000263// AARCH64:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000264// AARCH64-NOT:#define __AARCH_BIG_ENDIAN 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000265// AARCH64:#define __ARM_64BIT_STATE 1
266// AARCH64:#define __ARM_ARCH 8
267// AARCH64:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000268// AARCH64-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000269// AARCH64:#define __BIGGEST_ALIGNMENT__ 16
Kevin Qinad64f6d2014-02-24 02:45:03 +0000270// AARCH64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
271// AARCH64:#define __CHAR16_TYPE__ unsigned short
272// AARCH64:#define __CHAR32_TYPE__ unsigned int
273// AARCH64:#define __CHAR_BIT__ 8
274// AARCH64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
275// AARCH64:#define __DBL_DIG__ 15
276// AARCH64:#define __DBL_EPSILON__ 2.2204460492503131e-16
277// AARCH64:#define __DBL_HAS_DENORM__ 1
278// AARCH64:#define __DBL_HAS_INFINITY__ 1
279// AARCH64:#define __DBL_HAS_QUIET_NAN__ 1
280// AARCH64:#define __DBL_MANT_DIG__ 53
281// AARCH64:#define __DBL_MAX_10_EXP__ 308
282// AARCH64:#define __DBL_MAX_EXP__ 1024
283// AARCH64:#define __DBL_MAX__ 1.7976931348623157e+308
284// AARCH64:#define __DBL_MIN_10_EXP__ (-307)
285// AARCH64:#define __DBL_MIN_EXP__ (-1021)
286// AARCH64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000287// AARCH64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Kevin Qinad64f6d2014-02-24 02:45:03 +0000288// AARCH64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
289// AARCH64:#define __FLT_DIG__ 6
290// AARCH64:#define __FLT_EPSILON__ 1.19209290e-7F
291// AARCH64:#define __FLT_EVAL_METHOD__ 0
292// AARCH64:#define __FLT_HAS_DENORM__ 1
293// AARCH64:#define __FLT_HAS_INFINITY__ 1
294// AARCH64:#define __FLT_HAS_QUIET_NAN__ 1
295// AARCH64:#define __FLT_MANT_DIG__ 24
296// AARCH64:#define __FLT_MAX_10_EXP__ 38
297// AARCH64:#define __FLT_MAX_EXP__ 128
298// AARCH64:#define __FLT_MAX__ 3.40282347e+38F
299// AARCH64:#define __FLT_MIN_10_EXP__ (-37)
300// AARCH64:#define __FLT_MIN_EXP__ (-125)
301// AARCH64:#define __FLT_MIN__ 1.17549435e-38F
302// AARCH64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000303// AARCH64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000304// AARCH64:#define __INT16_FMTd__ "hd"
305// AARCH64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000306// AARCH64:#define __INT16_MAX__ 32767
Kevin Qinad64f6d2014-02-24 02:45:03 +0000307// AARCH64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000308// AARCH64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000309// AARCH64:#define __INT32_FMTd__ "d"
310// AARCH64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000311// AARCH64:#define __INT32_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000312// AARCH64:#define __INT32_TYPE__ int
313// AARCH64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000314// AARCH64:#define __INT64_FMTd__ "ld"
315// AARCH64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000316// AARCH64:#define __INT64_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000317// AARCH64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000318// AARCH64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000319// AARCH64:#define __INT8_FMTd__ "hhd"
320// AARCH64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000321// AARCH64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000322// AARCH64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000323// AARCH64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000324// AARCH64:#define __INTMAX_FMTd__ "ld"
325// AARCH64:#define __INTMAX_FMTi__ "li"
Kevin Qinad64f6d2014-02-24 02:45:03 +0000326// AARCH64:#define __INTMAX_MAX__ 9223372036854775807L
327// AARCH64:#define __INTMAX_TYPE__ long int
328// AARCH64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000329// AARCH64:#define __INTPTR_FMTd__ "ld"
330// AARCH64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000331// AARCH64:#define __INTPTR_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000332// AARCH64:#define __INTPTR_TYPE__ long int
333// AARCH64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000334// AARCH64:#define __INT_FAST16_FMTd__ "hd"
335// AARCH64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000336// AARCH64:#define __INT_FAST16_MAX__ 32767
337// AARCH64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000338// AARCH64:#define __INT_FAST32_FMTd__ "d"
339// AARCH64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000340// AARCH64:#define __INT_FAST32_MAX__ 2147483647
341// AARCH64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000342// AARCH64:#define __INT_FAST64_FMTd__ "ld"
343// AARCH64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000344// AARCH64:#define __INT_FAST64_MAX__ 9223372036854775807L
345// AARCH64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000346// AARCH64:#define __INT_FAST8_FMTd__ "hhd"
347// AARCH64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000348// AARCH64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000349// AARCH64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000350// AARCH64:#define __INT_LEAST16_FMTd__ "hd"
351// AARCH64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000352// AARCH64:#define __INT_LEAST16_MAX__ 32767
353// AARCH64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000354// AARCH64:#define __INT_LEAST32_FMTd__ "d"
355// AARCH64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000356// AARCH64:#define __INT_LEAST32_MAX__ 2147483647
357// AARCH64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000358// AARCH64:#define __INT_LEAST64_FMTd__ "ld"
359// AARCH64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000360// AARCH64:#define __INT_LEAST64_MAX__ 9223372036854775807L
361// AARCH64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000362// AARCH64:#define __INT_LEAST8_FMTd__ "hhd"
363// AARCH64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000364// AARCH64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000365// AARCH64:#define __INT_LEAST8_TYPE__ signed char
Kevin Qinad64f6d2014-02-24 02:45:03 +0000366// AARCH64:#define __INT_MAX__ 2147483647
367// AARCH64:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
368// AARCH64:#define __LDBL_DIG__ 33
369// AARCH64:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
370// AARCH64:#define __LDBL_HAS_DENORM__ 1
371// AARCH64:#define __LDBL_HAS_INFINITY__ 1
372// AARCH64:#define __LDBL_HAS_QUIET_NAN__ 1
373// AARCH64:#define __LDBL_MANT_DIG__ 113
374// AARCH64:#define __LDBL_MAX_10_EXP__ 4932
375// AARCH64:#define __LDBL_MAX_EXP__ 16384
376// AARCH64:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
377// AARCH64:#define __LDBL_MIN_10_EXP__ (-4931)
378// AARCH64:#define __LDBL_MIN_EXP__ (-16381)
379// AARCH64:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
380// AARCH64:#define __LONG_LONG_MAX__ 9223372036854775807LL
381// AARCH64:#define __LONG_MAX__ 9223372036854775807L
382// AARCH64:#define __LP64__ 1
383// AARCH64:#define __POINTER_WIDTH__ 64
384// AARCH64:#define __PTRDIFF_TYPE__ long int
385// AARCH64:#define __PTRDIFF_WIDTH__ 64
386// AARCH64:#define __SCHAR_MAX__ 127
387// AARCH64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000388// AARCH64:#define __SIG_ATOMIC_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000389// AARCH64:#define __SIG_ATOMIC_WIDTH__ 32
390// AARCH64:#define __SIZEOF_DOUBLE__ 8
391// AARCH64:#define __SIZEOF_FLOAT__ 4
392// AARCH64:#define __SIZEOF_INT128__ 16
393// AARCH64:#define __SIZEOF_INT__ 4
394// AARCH64:#define __SIZEOF_LONG_DOUBLE__ 16
395// AARCH64:#define __SIZEOF_LONG_LONG__ 8
396// AARCH64:#define __SIZEOF_LONG__ 8
397// AARCH64:#define __SIZEOF_POINTER__ 8
398// AARCH64:#define __SIZEOF_PTRDIFF_T__ 8
399// AARCH64:#define __SIZEOF_SHORT__ 2
400// AARCH64:#define __SIZEOF_SIZE_T__ 8
401// AARCH64:#define __SIZEOF_WCHAR_T__ 4
402// AARCH64:#define __SIZEOF_WINT_T__ 4
403// AARCH64:#define __SIZE_MAX__ 18446744073709551615UL
404// AARCH64:#define __SIZE_TYPE__ long unsigned int
405// AARCH64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +0000406// AARCH64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +0000407// AARCH64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000408// AARCH64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000409// AARCH64:#define __UINT16_TYPE__ unsigned short
410// AARCH64:#define __UINT32_C_SUFFIX__ U
411// AARCH64:#define __UINT32_MAX__ 4294967295U
412// AARCH64:#define __UINT32_TYPE__ unsigned int
413// AARCH64:#define __UINT64_C_SUFFIX__ UL
414// AARCH64:#define __UINT64_MAX__ 18446744073709551615UL
415// AARCH64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000416// AARCH64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000417// AARCH64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000418// AARCH64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000419// AARCH64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000420// AARCH64:#define __UINTMAX_MAX__ 18446744073709551615UL
Kevin Qinad64f6d2014-02-24 02:45:03 +0000421// AARCH64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000422// AARCH64:#define __UINTMAX_WIDTH__ 64
423// AARCH64:#define __UINTPTR_MAX__ 18446744073709551615UL
424// AARCH64:#define __UINTPTR_TYPE__ long unsigned int
425// AARCH64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000426// AARCH64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000427// AARCH64:#define __UINT_FAST16_TYPE__ unsigned short
428// AARCH64:#define __UINT_FAST32_MAX__ 4294967295U
429// AARCH64:#define __UINT_FAST32_TYPE__ unsigned int
430// AARCH64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
431// AARCH64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000432// AARCH64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000433// AARCH64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000434// AARCH64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000435// AARCH64:#define __UINT_LEAST16_TYPE__ unsigned short
436// AARCH64:#define __UINT_LEAST32_MAX__ 4294967295U
437// AARCH64:#define __UINT_LEAST32_TYPE__ unsigned int
438// AARCH64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
439// AARCH64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000440// AARCH64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000441// AARCH64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +0000442// AARCH64:#define __USER_LABEL_PREFIX__
Kevin Qinad64f6d2014-02-24 02:45:03 +0000443// AARCH64:#define __WCHAR_MAX__ 4294967295U
444// AARCH64:#define __WCHAR_TYPE__ unsigned int
445// AARCH64:#define __WCHAR_UNSIGNED__ 1
446// AARCH64:#define __WCHAR_WIDTH__ 32
447// AARCH64:#define __WINT_TYPE__ int
448// AARCH64:#define __WINT_WIDTH__ 32
449// AARCH64:#define __aarch64__ 1
450//
James Y Knightc97efa42016-02-11 16:51:29 +0000451// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64_be-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-BE %s
Christian Pirker227f5ed2014-03-24 13:57:21 +0000452//
453// AARCH64-BE:#define _LP64 1
454// AARCH64-BE:#define __AARCH64EB__ 1
455// AARCH64-BE-NOT:#define __AARCH64EL__ 1
456// AARCH64-BE:#define __AARCH_BIG_ENDIAN 1
457// AARCH64-BE:#define __ARM_64BIT_STATE 1
458// AARCH64-BE:#define __ARM_ARCH 8
459// AARCH64-BE:#define __ARM_ARCH_ISA_A64 1
460// AARCH64-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000461// AARCH64-BE:#define __BIGGEST_ALIGNMENT__ 16
Christian Pirker227f5ed2014-03-24 13:57:21 +0000462// AARCH64-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
463// AARCH64-BE:#define __CHAR16_TYPE__ unsigned short
464// AARCH64-BE:#define __CHAR32_TYPE__ unsigned int
465// AARCH64-BE:#define __CHAR_BIT__ 8
466// AARCH64-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
467// AARCH64-BE:#define __DBL_DIG__ 15
468// AARCH64-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
469// AARCH64-BE:#define __DBL_HAS_DENORM__ 1
470// AARCH64-BE:#define __DBL_HAS_INFINITY__ 1
471// AARCH64-BE:#define __DBL_HAS_QUIET_NAN__ 1
472// AARCH64-BE:#define __DBL_MANT_DIG__ 53
473// AARCH64-BE:#define __DBL_MAX_10_EXP__ 308
474// AARCH64-BE:#define __DBL_MAX_EXP__ 1024
475// AARCH64-BE:#define __DBL_MAX__ 1.7976931348623157e+308
476// AARCH64-BE:#define __DBL_MIN_10_EXP__ (-307)
477// AARCH64-BE:#define __DBL_MIN_EXP__ (-1021)
478// AARCH64-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000479// AARCH64-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000480// AARCH64-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
481// AARCH64-BE:#define __FLT_DIG__ 6
482// AARCH64-BE:#define __FLT_EPSILON__ 1.19209290e-7F
483// AARCH64-BE:#define __FLT_EVAL_METHOD__ 0
484// AARCH64-BE:#define __FLT_HAS_DENORM__ 1
485// AARCH64-BE:#define __FLT_HAS_INFINITY__ 1
486// AARCH64-BE:#define __FLT_HAS_QUIET_NAN__ 1
487// AARCH64-BE:#define __FLT_MANT_DIG__ 24
488// AARCH64-BE:#define __FLT_MAX_10_EXP__ 38
489// AARCH64-BE:#define __FLT_MAX_EXP__ 128
490// AARCH64-BE:#define __FLT_MAX__ 3.40282347e+38F
491// AARCH64-BE:#define __FLT_MIN_10_EXP__ (-37)
492// AARCH64-BE:#define __FLT_MIN_EXP__ (-125)
493// AARCH64-BE:#define __FLT_MIN__ 1.17549435e-38F
494// AARCH64-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000495// AARCH64-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000496// AARCH64-BE:#define __INT16_FMTd__ "hd"
497// AARCH64-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000498// AARCH64-BE:#define __INT16_MAX__ 32767
Christian Pirker227f5ed2014-03-24 13:57:21 +0000499// AARCH64-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000500// AARCH64-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000501// AARCH64-BE:#define __INT32_FMTd__ "d"
502// AARCH64-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000503// AARCH64-BE:#define __INT32_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000504// AARCH64-BE:#define __INT32_TYPE__ int
505// AARCH64-BE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000506// AARCH64-BE:#define __INT64_FMTd__ "ld"
507// AARCH64-BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000508// AARCH64-BE:#define __INT64_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000509// AARCH64-BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000510// AARCH64-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000511// AARCH64-BE:#define __INT8_FMTd__ "hhd"
512// AARCH64-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000513// AARCH64-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000514// AARCH64-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000515// AARCH64-BE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000516// AARCH64-BE:#define __INTMAX_FMTd__ "ld"
517// AARCH64-BE:#define __INTMAX_FMTi__ "li"
Christian Pirker227f5ed2014-03-24 13:57:21 +0000518// AARCH64-BE:#define __INTMAX_MAX__ 9223372036854775807L
519// AARCH64-BE:#define __INTMAX_TYPE__ long int
520// AARCH64-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000521// AARCH64-BE:#define __INTPTR_FMTd__ "ld"
522// AARCH64-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000523// AARCH64-BE:#define __INTPTR_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000524// AARCH64-BE:#define __INTPTR_TYPE__ long int
525// AARCH64-BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000526// AARCH64-BE:#define __INT_FAST16_FMTd__ "hd"
527// AARCH64-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000528// AARCH64-BE:#define __INT_FAST16_MAX__ 32767
529// AARCH64-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000530// AARCH64-BE:#define __INT_FAST32_FMTd__ "d"
531// AARCH64-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000532// AARCH64-BE:#define __INT_FAST32_MAX__ 2147483647
533// AARCH64-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000534// AARCH64-BE:#define __INT_FAST64_FMTd__ "ld"
535// AARCH64-BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000536// AARCH64-BE:#define __INT_FAST64_MAX__ 9223372036854775807L
537// AARCH64-BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000538// AARCH64-BE:#define __INT_FAST8_FMTd__ "hhd"
539// AARCH64-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000540// AARCH64-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000541// AARCH64-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000542// AARCH64-BE:#define __INT_LEAST16_FMTd__ "hd"
543// AARCH64-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000544// AARCH64-BE:#define __INT_LEAST16_MAX__ 32767
545// AARCH64-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000546// AARCH64-BE:#define __INT_LEAST32_FMTd__ "d"
547// AARCH64-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000548// AARCH64-BE:#define __INT_LEAST32_MAX__ 2147483647
549// AARCH64-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000550// AARCH64-BE:#define __INT_LEAST64_FMTd__ "ld"
551// AARCH64-BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000552// AARCH64-BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
553// AARCH64-BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000554// AARCH64-BE:#define __INT_LEAST8_FMTd__ "hhd"
555// AARCH64-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000556// AARCH64-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000557// AARCH64-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirker227f5ed2014-03-24 13:57:21 +0000558// AARCH64-BE:#define __INT_MAX__ 2147483647
559// AARCH64-BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
560// AARCH64-BE:#define __LDBL_DIG__ 33
561// AARCH64-BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
562// AARCH64-BE:#define __LDBL_HAS_DENORM__ 1
563// AARCH64-BE:#define __LDBL_HAS_INFINITY__ 1
564// AARCH64-BE:#define __LDBL_HAS_QUIET_NAN__ 1
565// AARCH64-BE:#define __LDBL_MANT_DIG__ 113
566// AARCH64-BE:#define __LDBL_MAX_10_EXP__ 4932
567// AARCH64-BE:#define __LDBL_MAX_EXP__ 16384
568// AARCH64-BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
569// AARCH64-BE:#define __LDBL_MIN_10_EXP__ (-4931)
570// AARCH64-BE:#define __LDBL_MIN_EXP__ (-16381)
571// AARCH64-BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
572// AARCH64-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
573// AARCH64-BE:#define __LONG_MAX__ 9223372036854775807L
574// AARCH64-BE:#define __LP64__ 1
575// AARCH64-BE:#define __POINTER_WIDTH__ 64
576// AARCH64-BE:#define __PTRDIFF_TYPE__ long int
577// AARCH64-BE:#define __PTRDIFF_WIDTH__ 64
578// AARCH64-BE:#define __SCHAR_MAX__ 127
579// AARCH64-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000580// AARCH64-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000581// AARCH64-BE:#define __SIG_ATOMIC_WIDTH__ 32
582// AARCH64-BE:#define __SIZEOF_DOUBLE__ 8
583// AARCH64-BE:#define __SIZEOF_FLOAT__ 4
584// AARCH64-BE:#define __SIZEOF_INT128__ 16
585// AARCH64-BE:#define __SIZEOF_INT__ 4
586// AARCH64-BE:#define __SIZEOF_LONG_DOUBLE__ 16
587// AARCH64-BE:#define __SIZEOF_LONG_LONG__ 8
588// AARCH64-BE:#define __SIZEOF_LONG__ 8
589// AARCH64-BE:#define __SIZEOF_POINTER__ 8
590// AARCH64-BE:#define __SIZEOF_PTRDIFF_T__ 8
591// AARCH64-BE:#define __SIZEOF_SHORT__ 2
592// AARCH64-BE:#define __SIZEOF_SIZE_T__ 8
593// AARCH64-BE:#define __SIZEOF_WCHAR_T__ 4
594// AARCH64-BE:#define __SIZEOF_WINT_T__ 4
595// AARCH64-BE:#define __SIZE_MAX__ 18446744073709551615UL
596// AARCH64-BE:#define __SIZE_TYPE__ long unsigned int
597// AARCH64-BE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000598// AARCH64-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000599// AARCH64-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000600// AARCH64-BE:#define __UINT16_TYPE__ unsigned short
601// AARCH64-BE:#define __UINT32_C_SUFFIX__ U
602// AARCH64-BE:#define __UINT32_MAX__ 4294967295U
603// AARCH64-BE:#define __UINT32_TYPE__ unsigned int
604// AARCH64-BE:#define __UINT64_C_SUFFIX__ UL
605// AARCH64-BE:#define __UINT64_MAX__ 18446744073709551615UL
606// AARCH64-BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000607// AARCH64-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000608// AARCH64-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000609// AARCH64-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000610// AARCH64-BE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000611// AARCH64-BE:#define __UINTMAX_MAX__ 18446744073709551615UL
Christian Pirker227f5ed2014-03-24 13:57:21 +0000612// AARCH64-BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000613// AARCH64-BE:#define __UINTMAX_WIDTH__ 64
614// AARCH64-BE:#define __UINTPTR_MAX__ 18446744073709551615UL
615// AARCH64-BE:#define __UINTPTR_TYPE__ long unsigned int
616// AARCH64-BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000617// AARCH64-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000618// AARCH64-BE:#define __UINT_FAST16_TYPE__ unsigned short
619// AARCH64-BE:#define __UINT_FAST32_MAX__ 4294967295U
620// AARCH64-BE:#define __UINT_FAST32_TYPE__ unsigned int
621// AARCH64-BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
622// AARCH64-BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000623// AARCH64-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000624// AARCH64-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000625// AARCH64-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000626// AARCH64-BE:#define __UINT_LEAST16_TYPE__ unsigned short
627// AARCH64-BE:#define __UINT_LEAST32_MAX__ 4294967295U
628// AARCH64-BE:#define __UINT_LEAST32_TYPE__ unsigned int
629// AARCH64-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
630// AARCH64-BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000631// AARCH64-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000632// AARCH64-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +0000633// AARCH64-BE:#define __USER_LABEL_PREFIX__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000634// AARCH64-BE:#define __WCHAR_MAX__ 4294967295U
635// AARCH64-BE:#define __WCHAR_TYPE__ unsigned int
636// AARCH64-BE:#define __WCHAR_UNSIGNED__ 1
637// AARCH64-BE:#define __WCHAR_WIDTH__ 32
638// AARCH64-BE:#define __WINT_TYPE__ int
639// AARCH64-BE:#define __WINT_WIDTH__ 32
640// AARCH64-BE:#define __aarch64__ 1
641//
James Y Knightc97efa42016-02-11 16:51:29 +0000642// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-NETBSD %s
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000643//
644// AARCH64-NETBSD:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000645// AARCH64-NETBSD-NOT:#define __AARCH64EB__ 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000646// AARCH64-NETBSD:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000647// AARCH64-NETBSD-NOT:#define __AARCH_BIG_ENDIAN 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000648// AARCH64-NETBSD:#define __ARM_64BIT_STATE 1
649// AARCH64-NETBSD:#define __ARM_ARCH 8
650// AARCH64-NETBSD:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000651// AARCH64-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000652// AARCH64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000653// AARCH64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
654// AARCH64-NETBSD:#define __CHAR16_TYPE__ unsigned short
655// AARCH64-NETBSD:#define __CHAR32_TYPE__ unsigned int
656// AARCH64-NETBSD:#define __CHAR_BIT__ 8
657// AARCH64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
658// AARCH64-NETBSD:#define __DBL_DIG__ 15
659// AARCH64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
660// AARCH64-NETBSD:#define __DBL_HAS_DENORM__ 1
661// AARCH64-NETBSD:#define __DBL_HAS_INFINITY__ 1
662// AARCH64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
663// AARCH64-NETBSD:#define __DBL_MANT_DIG__ 53
664// AARCH64-NETBSD:#define __DBL_MAX_10_EXP__ 308
665// AARCH64-NETBSD:#define __DBL_MAX_EXP__ 1024
666// AARCH64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
667// AARCH64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
668// AARCH64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
669// AARCH64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000670// AARCH64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000671// AARCH64-NETBSD:#define __ELF__ 1
672// AARCH64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
673// AARCH64-NETBSD:#define __FLT_DIG__ 6
674// AARCH64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
675// AARCH64-NETBSD:#define __FLT_EVAL_METHOD__ 0
676// AARCH64-NETBSD:#define __FLT_HAS_DENORM__ 1
677// AARCH64-NETBSD:#define __FLT_HAS_INFINITY__ 1
678// AARCH64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
679// AARCH64-NETBSD:#define __FLT_MANT_DIG__ 24
680// AARCH64-NETBSD:#define __FLT_MAX_10_EXP__ 38
681// AARCH64-NETBSD:#define __FLT_MAX_EXP__ 128
682// AARCH64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
683// AARCH64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
684// AARCH64-NETBSD:#define __FLT_MIN_EXP__ (-125)
685// AARCH64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
686// AARCH64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000687// AARCH64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000688// AARCH64-NETBSD:#define __INT16_FMTd__ "hd"
689// AARCH64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000690// AARCH64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000691// AARCH64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000692// AARCH64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000693// AARCH64-NETBSD:#define __INT32_FMTd__ "d"
694// AARCH64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000695// AARCH64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000696// AARCH64-NETBSD:#define __INT32_TYPE__ int
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000697// AARCH64-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000698// AARCH64-NETBSD:#define __INT64_FMTd__ "lld"
699// AARCH64-NETBSD:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +0000700// AARCH64-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000701// AARCH64-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +0000702// AARCH64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000703// AARCH64-NETBSD:#define __INT8_FMTd__ "hhd"
704// AARCH64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000705// AARCH64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000706// AARCH64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000707// AARCH64-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000708// AARCH64-NETBSD:#define __INTMAX_FMTd__ "lld"
709// AARCH64-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000710// AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
711// AARCH64-NETBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000712// AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000713// AARCH64-NETBSD:#define __INTPTR_FMTd__ "ld"
714// AARCH64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000715// AARCH64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000716// AARCH64-NETBSD:#define __INTPTR_TYPE__ long int
717// AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000718// AARCH64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
719// AARCH64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000720// AARCH64-NETBSD:#define __INT_FAST16_MAX__ 32767
721// AARCH64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000722// AARCH64-NETBSD:#define __INT_FAST32_FMTd__ "d"
723// AARCH64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000724// AARCH64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
725// AARCH64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000726// AARCH64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
727// AARCH64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000728// AARCH64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
729// AARCH64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000730// AARCH64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
731// AARCH64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000732// AARCH64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000733// AARCH64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000734// AARCH64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
735// AARCH64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000736// AARCH64-NETBSD:#define __INT_LEAST16_MAX__ 32767
737// AARCH64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000738// AARCH64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
739// AARCH64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000740// AARCH64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
741// AARCH64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000742// AARCH64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
743// AARCH64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000744// AARCH64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
745// AARCH64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000746// AARCH64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
747// AARCH64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000748// AARCH64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000749// AARCH64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000750// AARCH64-NETBSD:#define __INT_MAX__ 2147483647
751// AARCH64-NETBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
752// AARCH64-NETBSD:#define __LDBL_DIG__ 33
753// AARCH64-NETBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
754// AARCH64-NETBSD:#define __LDBL_HAS_DENORM__ 1
755// AARCH64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
756// AARCH64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
757// AARCH64-NETBSD:#define __LDBL_MANT_DIG__ 113
758// AARCH64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
759// AARCH64-NETBSD:#define __LDBL_MAX_EXP__ 16384
760// AARCH64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
761// AARCH64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
762// AARCH64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
763// AARCH64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
764// AARCH64-NETBSD:#define __LITTLE_ENDIAN__ 1
765// AARCH64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
766// AARCH64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
767// AARCH64-NETBSD:#define __LP64__ 1
768// AARCH64-NETBSD:#define __NetBSD__ 1
769// AARCH64-NETBSD:#define __POINTER_WIDTH__ 64
770// AARCH64-NETBSD:#define __PTRDIFF_TYPE__ long int
771// AARCH64-NETBSD:#define __PTRDIFF_WIDTH__ 64
772// AARCH64-NETBSD:#define __SCHAR_MAX__ 127
773// AARCH64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000774// AARCH64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000775// AARCH64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
776// AARCH64-NETBSD:#define __SIZEOF_DOUBLE__ 8
777// AARCH64-NETBSD:#define __SIZEOF_FLOAT__ 4
778// AARCH64-NETBSD:#define __SIZEOF_INT__ 4
779// AARCH64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
780// AARCH64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
781// AARCH64-NETBSD:#define __SIZEOF_LONG__ 8
782// AARCH64-NETBSD:#define __SIZEOF_POINTER__ 8
783// AARCH64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
784// AARCH64-NETBSD:#define __SIZEOF_SHORT__ 2
785// AARCH64-NETBSD:#define __SIZEOF_SIZE_T__ 8
786// AARCH64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
787// AARCH64-NETBSD:#define __SIZEOF_WINT_T__ 4
788// AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
789// AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int
790// AARCH64-NETBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000791// AARCH64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000792// AARCH64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000793// AARCH64-NETBSD:#define __UINT16_TYPE__ unsigned short
794// AARCH64-NETBSD:#define __UINT32_C_SUFFIX__ U
795// AARCH64-NETBSD:#define __UINT32_MAX__ 4294967295U
796// AARCH64-NETBSD:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +0000797// AARCH64-NETBSD:#define __UINT64_C_SUFFIX__ ULL
798// AARCH64-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
799// AARCH64-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000800// AARCH64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000801// AARCH64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000802// AARCH64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000803// AARCH64-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +0000804// AARCH64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000805// AARCH64-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000806// AARCH64-NETBSD:#define __UINTMAX_WIDTH__ 64
807// AARCH64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
808// AARCH64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
809// AARCH64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000810// AARCH64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000811// AARCH64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
812// AARCH64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
813// AARCH64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
814// AARCH64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
815// AARCH64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000816// AARCH64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000817// AARCH64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000818// AARCH64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000819// AARCH64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
820// AARCH64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
821// AARCH64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
822// AARCH64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
823// AARCH64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000824// AARCH64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000825// AARCH64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000826// AARCH64-NETBSD:#define __USER_LABEL_PREFIX__
827// AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647
828// AARCH64-NETBSD:#define __WCHAR_TYPE__ int
829// AARCH64-NETBSD:#define __WCHAR_WIDTH__ 32
830// AARCH64-NETBSD:#define __WINT_TYPE__ int
831// AARCH64-NETBSD:#define __WINT_WIDTH__ 32
832// AARCH64-NETBSD:#define __aarch64__ 1
Ed Maste6a9eda52014-11-13 16:55:42 +0000833//
James Y Knightc97efa42016-02-11 16:51:29 +0000834// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-freebsd11 < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-FREEBSD %s
Ed Maste6a9eda52014-11-13 16:55:42 +0000835//
836// AARCH64-FREEBSD:#define _LP64 1
837// AARCH64-FREEBSD-NOT:#define __AARCH64EB__ 1
838// AARCH64-FREEBSD:#define __AARCH64EL__ 1
839// AARCH64-FREEBSD-NOT:#define __AARCH_BIG_ENDIAN 1
840// AARCH64-FREEBSD:#define __ARM_64BIT_STATE 1
841// AARCH64-FREEBSD:#define __ARM_ARCH 8
842// AARCH64-FREEBSD:#define __ARM_ARCH_ISA_A64 1
843// AARCH64-FREEBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000844// AARCH64-FREEBSD:#define __BIGGEST_ALIGNMENT__ 16
Ed Maste6a9eda52014-11-13 16:55:42 +0000845// AARCH64-FREEBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
846// AARCH64-FREEBSD:#define __CHAR16_TYPE__ unsigned short
847// AARCH64-FREEBSD:#define __CHAR32_TYPE__ unsigned int
848// AARCH64-FREEBSD:#define __CHAR_BIT__ 8
849// AARCH64-FREEBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
850// AARCH64-FREEBSD:#define __DBL_DIG__ 15
851// AARCH64-FREEBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
852// AARCH64-FREEBSD:#define __DBL_HAS_DENORM__ 1
853// AARCH64-FREEBSD:#define __DBL_HAS_INFINITY__ 1
854// AARCH64-FREEBSD:#define __DBL_HAS_QUIET_NAN__ 1
855// AARCH64-FREEBSD:#define __DBL_MANT_DIG__ 53
856// AARCH64-FREEBSD:#define __DBL_MAX_10_EXP__ 308
857// AARCH64-FREEBSD:#define __DBL_MAX_EXP__ 1024
858// AARCH64-FREEBSD:#define __DBL_MAX__ 1.7976931348623157e+308
859// AARCH64-FREEBSD:#define __DBL_MIN_10_EXP__ (-307)
860// AARCH64-FREEBSD:#define __DBL_MIN_EXP__ (-1021)
861// AARCH64-FREEBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000862// AARCH64-FREEBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ed Maste6a9eda52014-11-13 16:55:42 +0000863// AARCH64-FREEBSD:#define __ELF__ 1
864// AARCH64-FREEBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
865// AARCH64-FREEBSD:#define __FLT_DIG__ 6
866// AARCH64-FREEBSD:#define __FLT_EPSILON__ 1.19209290e-7F
867// AARCH64-FREEBSD:#define __FLT_EVAL_METHOD__ 0
868// AARCH64-FREEBSD:#define __FLT_HAS_DENORM__ 1
869// AARCH64-FREEBSD:#define __FLT_HAS_INFINITY__ 1
870// AARCH64-FREEBSD:#define __FLT_HAS_QUIET_NAN__ 1
871// AARCH64-FREEBSD:#define __FLT_MANT_DIG__ 24
872// AARCH64-FREEBSD:#define __FLT_MAX_10_EXP__ 38
873// AARCH64-FREEBSD:#define __FLT_MAX_EXP__ 128
874// AARCH64-FREEBSD:#define __FLT_MAX__ 3.40282347e+38F
875// AARCH64-FREEBSD:#define __FLT_MIN_10_EXP__ (-37)
876// AARCH64-FREEBSD:#define __FLT_MIN_EXP__ (-125)
877// AARCH64-FREEBSD:#define __FLT_MIN__ 1.17549435e-38F
878// AARCH64-FREEBSD:#define __FLT_RADIX__ 2
879// AARCH64-FREEBSD:#define __FreeBSD__ 11
James Y Knightc97efa42016-02-11 16:51:29 +0000880// AARCH64-FREEBSD:#define __INT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000881// AARCH64-FREEBSD:#define __INT16_FMTd__ "hd"
882// AARCH64-FREEBSD:#define __INT16_FMTi__ "hi"
883// AARCH64-FREEBSD:#define __INT16_MAX__ 32767
884// AARCH64-FREEBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000885// AARCH64-FREEBSD:#define __INT32_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000886// AARCH64-FREEBSD:#define __INT32_FMTd__ "d"
887// AARCH64-FREEBSD:#define __INT32_FMTi__ "i"
888// AARCH64-FREEBSD:#define __INT32_MAX__ 2147483647
889// AARCH64-FREEBSD:#define __INT32_TYPE__ int
890// AARCH64-FREEBSD:#define __INT64_C_SUFFIX__ L
891// AARCH64-FREEBSD:#define __INT64_FMTd__ "ld"
892// AARCH64-FREEBSD:#define __INT64_FMTi__ "li"
893// AARCH64-FREEBSD:#define __INT64_MAX__ 9223372036854775807L
894// AARCH64-FREEBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000895// AARCH64-FREEBSD:#define __INT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000896// AARCH64-FREEBSD:#define __INT8_FMTd__ "hhd"
897// AARCH64-FREEBSD:#define __INT8_FMTi__ "hhi"
898// AARCH64-FREEBSD:#define __INT8_MAX__ 127
899// AARCH64-FREEBSD:#define __INT8_TYPE__ signed char
900// AARCH64-FREEBSD:#define __INTMAX_C_SUFFIX__ L
901// AARCH64-FREEBSD:#define __INTMAX_FMTd__ "ld"
902// AARCH64-FREEBSD:#define __INTMAX_FMTi__ "li"
903// AARCH64-FREEBSD:#define __INTMAX_MAX__ 9223372036854775807L
904// AARCH64-FREEBSD:#define __INTMAX_TYPE__ long int
905// AARCH64-FREEBSD:#define __INTMAX_WIDTH__ 64
906// AARCH64-FREEBSD:#define __INTPTR_FMTd__ "ld"
907// AARCH64-FREEBSD:#define __INTPTR_FMTi__ "li"
908// AARCH64-FREEBSD:#define __INTPTR_MAX__ 9223372036854775807L
909// AARCH64-FREEBSD:#define __INTPTR_TYPE__ long int
910// AARCH64-FREEBSD:#define __INTPTR_WIDTH__ 64
911// AARCH64-FREEBSD:#define __INT_FAST16_FMTd__ "hd"
912// AARCH64-FREEBSD:#define __INT_FAST16_FMTi__ "hi"
913// AARCH64-FREEBSD:#define __INT_FAST16_MAX__ 32767
914// AARCH64-FREEBSD:#define __INT_FAST16_TYPE__ short
915// AARCH64-FREEBSD:#define __INT_FAST32_FMTd__ "d"
916// AARCH64-FREEBSD:#define __INT_FAST32_FMTi__ "i"
917// AARCH64-FREEBSD:#define __INT_FAST32_MAX__ 2147483647
918// AARCH64-FREEBSD:#define __INT_FAST32_TYPE__ int
919// AARCH64-FREEBSD:#define __INT_FAST64_FMTd__ "ld"
920// AARCH64-FREEBSD:#define __INT_FAST64_FMTi__ "li"
921// AARCH64-FREEBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
922// AARCH64-FREEBSD:#define __INT_FAST64_TYPE__ long int
923// AARCH64-FREEBSD:#define __INT_FAST8_FMTd__ "hhd"
924// AARCH64-FREEBSD:#define __INT_FAST8_FMTi__ "hhi"
925// AARCH64-FREEBSD:#define __INT_FAST8_MAX__ 127
926// AARCH64-FREEBSD:#define __INT_FAST8_TYPE__ signed char
927// AARCH64-FREEBSD:#define __INT_LEAST16_FMTd__ "hd"
928// AARCH64-FREEBSD:#define __INT_LEAST16_FMTi__ "hi"
929// AARCH64-FREEBSD:#define __INT_LEAST16_MAX__ 32767
930// AARCH64-FREEBSD:#define __INT_LEAST16_TYPE__ short
931// AARCH64-FREEBSD:#define __INT_LEAST32_FMTd__ "d"
932// AARCH64-FREEBSD:#define __INT_LEAST32_FMTi__ "i"
933// AARCH64-FREEBSD:#define __INT_LEAST32_MAX__ 2147483647
934// AARCH64-FREEBSD:#define __INT_LEAST32_TYPE__ int
935// AARCH64-FREEBSD:#define __INT_LEAST64_FMTd__ "ld"
936// AARCH64-FREEBSD:#define __INT_LEAST64_FMTi__ "li"
937// AARCH64-FREEBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
938// AARCH64-FREEBSD:#define __INT_LEAST64_TYPE__ long int
939// AARCH64-FREEBSD:#define __INT_LEAST8_FMTd__ "hhd"
940// AARCH64-FREEBSD:#define __INT_LEAST8_FMTi__ "hhi"
941// AARCH64-FREEBSD:#define __INT_LEAST8_MAX__ 127
942// AARCH64-FREEBSD:#define __INT_LEAST8_TYPE__ signed char
943// AARCH64-FREEBSD:#define __INT_MAX__ 2147483647
944// AARCH64-FREEBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
945// AARCH64-FREEBSD:#define __LDBL_DIG__ 33
946// AARCH64-FREEBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
947// AARCH64-FREEBSD:#define __LDBL_HAS_DENORM__ 1
948// AARCH64-FREEBSD:#define __LDBL_HAS_INFINITY__ 1
949// AARCH64-FREEBSD:#define __LDBL_HAS_QUIET_NAN__ 1
950// AARCH64-FREEBSD:#define __LDBL_MANT_DIG__ 113
951// AARCH64-FREEBSD:#define __LDBL_MAX_10_EXP__ 4932
952// AARCH64-FREEBSD:#define __LDBL_MAX_EXP__ 16384
953// AARCH64-FREEBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
954// AARCH64-FREEBSD:#define __LDBL_MIN_10_EXP__ (-4931)
955// AARCH64-FREEBSD:#define __LDBL_MIN_EXP__ (-16381)
956// AARCH64-FREEBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
957// AARCH64-FREEBSD:#define __LITTLE_ENDIAN__ 1
958// AARCH64-FREEBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
959// AARCH64-FREEBSD:#define __LONG_MAX__ 9223372036854775807L
960// AARCH64-FREEBSD:#define __LP64__ 1
961// AARCH64-FREEBSD:#define __POINTER_WIDTH__ 64
962// AARCH64-FREEBSD:#define __PTRDIFF_TYPE__ long int
963// AARCH64-FREEBSD:#define __PTRDIFF_WIDTH__ 64
964// AARCH64-FREEBSD:#define __SCHAR_MAX__ 127
965// AARCH64-FREEBSD:#define __SHRT_MAX__ 32767
966// AARCH64-FREEBSD:#define __SIG_ATOMIC_MAX__ 2147483647
967// AARCH64-FREEBSD:#define __SIG_ATOMIC_WIDTH__ 32
968// AARCH64-FREEBSD:#define __SIZEOF_DOUBLE__ 8
969// AARCH64-FREEBSD:#define __SIZEOF_FLOAT__ 4
970// AARCH64-FREEBSD:#define __SIZEOF_INT128__ 16
971// AARCH64-FREEBSD:#define __SIZEOF_INT__ 4
972// AARCH64-FREEBSD:#define __SIZEOF_LONG_DOUBLE__ 16
973// AARCH64-FREEBSD:#define __SIZEOF_LONG_LONG__ 8
974// AARCH64-FREEBSD:#define __SIZEOF_LONG__ 8
975// AARCH64-FREEBSD:#define __SIZEOF_POINTER__ 8
976// AARCH64-FREEBSD:#define __SIZEOF_PTRDIFF_T__ 8
977// AARCH64-FREEBSD:#define __SIZEOF_SHORT__ 2
978// AARCH64-FREEBSD:#define __SIZEOF_SIZE_T__ 8
979// AARCH64-FREEBSD:#define __SIZEOF_WCHAR_T__ 4
980// AARCH64-FREEBSD:#define __SIZEOF_WINT_T__ 4
981// AARCH64-FREEBSD:#define __SIZE_MAX__ 18446744073709551615UL
982// AARCH64-FREEBSD:#define __SIZE_TYPE__ long unsigned int
983// AARCH64-FREEBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000984// AARCH64-FREEBSD:#define __UINT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000985// AARCH64-FREEBSD:#define __UINT16_MAX__ 65535
986// AARCH64-FREEBSD:#define __UINT16_TYPE__ unsigned short
987// AARCH64-FREEBSD:#define __UINT32_C_SUFFIX__ U
988// AARCH64-FREEBSD:#define __UINT32_MAX__ 4294967295U
989// AARCH64-FREEBSD:#define __UINT32_TYPE__ unsigned int
990// AARCH64-FREEBSD:#define __UINT64_C_SUFFIX__ UL
991// AARCH64-FREEBSD:#define __UINT64_MAX__ 18446744073709551615UL
992// AARCH64-FREEBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000993// AARCH64-FREEBSD:#define __UINT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000994// AARCH64-FREEBSD:#define __UINT8_MAX__ 255
995// AARCH64-FREEBSD:#define __UINT8_TYPE__ unsigned char
996// AARCH64-FREEBSD:#define __UINTMAX_C_SUFFIX__ UL
997// AARCH64-FREEBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
998// AARCH64-FREEBSD:#define __UINTMAX_TYPE__ long unsigned int
999// AARCH64-FREEBSD:#define __UINTMAX_WIDTH__ 64
1000// AARCH64-FREEBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1001// AARCH64-FREEBSD:#define __UINTPTR_TYPE__ long unsigned int
1002// AARCH64-FREEBSD:#define __UINTPTR_WIDTH__ 64
1003// AARCH64-FREEBSD:#define __UINT_FAST16_MAX__ 65535
1004// AARCH64-FREEBSD:#define __UINT_FAST16_TYPE__ unsigned short
1005// AARCH64-FREEBSD:#define __UINT_FAST32_MAX__ 4294967295U
1006// AARCH64-FREEBSD:#define __UINT_FAST32_TYPE__ unsigned int
1007// AARCH64-FREEBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1008// AARCH64-FREEBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1009// AARCH64-FREEBSD:#define __UINT_FAST8_MAX__ 255
1010// AARCH64-FREEBSD:#define __UINT_FAST8_TYPE__ unsigned char
1011// AARCH64-FREEBSD:#define __UINT_LEAST16_MAX__ 65535
1012// AARCH64-FREEBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1013// AARCH64-FREEBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1014// AARCH64-FREEBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1015// AARCH64-FREEBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1016// AARCH64-FREEBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1017// AARCH64-FREEBSD:#define __UINT_LEAST8_MAX__ 255
1018// AARCH64-FREEBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1019// AARCH64-FREEBSD:#define __USER_LABEL_PREFIX__
1020// AARCH64-FREEBSD:#define __WCHAR_MAX__ 4294967295U
1021// AARCH64-FREEBSD:#define __WCHAR_TYPE__ unsigned int
1022// AARCH64-FREEBSD:#define __WCHAR_UNSIGNED__ 1
1023// AARCH64-FREEBSD:#define __WCHAR_WIDTH__ 32
1024// AARCH64-FREEBSD:#define __WINT_TYPE__ int
1025// AARCH64-FREEBSD:#define __WINT_WIDTH__ 32
1026// AARCH64-FREEBSD:#define __aarch64__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +00001027
James Y Knightc97efa42016-02-11 16:51:29 +00001028// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-apple-ios7.0 < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-DARWIN %s
Tim Northovera6a19f12015-02-06 01:25:07 +00001029//
1030// AARCH64-DARWIN: #define _LP64 1
1031// AARCH64-NOT: #define __AARCH64EB__ 1
1032// AARCH64-DARWIN: #define __AARCH64EL__ 1
1033// AARCH64-NOT: #define __AARCH_BIG_ENDIAN 1
1034// AARCH64-DARWIN: #define __ARM_64BIT_STATE 1
1035// AARCH64-DARWIN: #define __ARM_ARCH 8
1036// AARCH64-DARWIN: #define __ARM_ARCH_ISA_A64 1
1037// AARCH64-NOT: #define __ARM_BIG_ENDIAN 1
1038// AARCH64-DARWIN: #define __BIGGEST_ALIGNMENT__ 8
1039// AARCH64-DARWIN: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1040// AARCH64-DARWIN: #define __CHAR16_TYPE__ unsigned short
1041// AARCH64-DARWIN: #define __CHAR32_TYPE__ unsigned int
1042// AARCH64-DARWIN: #define __CHAR_BIT__ 8
1043// AARCH64-DARWIN: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1044// AARCH64-DARWIN: #define __DBL_DIG__ 15
1045// AARCH64-DARWIN: #define __DBL_EPSILON__ 2.2204460492503131e-16
1046// AARCH64-DARWIN: #define __DBL_HAS_DENORM__ 1
1047// AARCH64-DARWIN: #define __DBL_HAS_INFINITY__ 1
1048// AARCH64-DARWIN: #define __DBL_HAS_QUIET_NAN__ 1
1049// AARCH64-DARWIN: #define __DBL_MANT_DIG__ 53
1050// AARCH64-DARWIN: #define __DBL_MAX_10_EXP__ 308
1051// AARCH64-DARWIN: #define __DBL_MAX_EXP__ 1024
1052// AARCH64-DARWIN: #define __DBL_MAX__ 1.7976931348623157e+308
1053// AARCH64-DARWIN: #define __DBL_MIN_10_EXP__ (-307)
1054// AARCH64-DARWIN: #define __DBL_MIN_EXP__ (-1021)
1055// AARCH64-DARWIN: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001056// AARCH64-DARWIN: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Tim Northovera6a19f12015-02-06 01:25:07 +00001057// AARCH64-DARWIN: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1058// AARCH64-DARWIN: #define __FLT_DIG__ 6
1059// AARCH64-DARWIN: #define __FLT_EPSILON__ 1.19209290e-7F
1060// AARCH64-DARWIN: #define __FLT_EVAL_METHOD__ 0
1061// AARCH64-DARWIN: #define __FLT_HAS_DENORM__ 1
1062// AARCH64-DARWIN: #define __FLT_HAS_INFINITY__ 1
1063// AARCH64-DARWIN: #define __FLT_HAS_QUIET_NAN__ 1
1064// AARCH64-DARWIN: #define __FLT_MANT_DIG__ 24
1065// AARCH64-DARWIN: #define __FLT_MAX_10_EXP__ 38
1066// AARCH64-DARWIN: #define __FLT_MAX_EXP__ 128
1067// AARCH64-DARWIN: #define __FLT_MAX__ 3.40282347e+38F
1068// AARCH64-DARWIN: #define __FLT_MIN_10_EXP__ (-37)
1069// AARCH64-DARWIN: #define __FLT_MIN_EXP__ (-125)
1070// AARCH64-DARWIN: #define __FLT_MIN__ 1.17549435e-38F
1071// AARCH64-DARWIN: #define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001072// AARCH64-DARWIN: #define __INT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001073// AARCH64-DARWIN: #define __INT16_FMTd__ "hd"
1074// AARCH64-DARWIN: #define __INT16_FMTi__ "hi"
1075// AARCH64-DARWIN: #define __INT16_MAX__ 32767
1076// AARCH64-DARWIN: #define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001077// AARCH64-DARWIN: #define __INT32_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001078// AARCH64-DARWIN: #define __INT32_FMTd__ "d"
1079// AARCH64-DARWIN: #define __INT32_FMTi__ "i"
1080// AARCH64-DARWIN: #define __INT32_MAX__ 2147483647
1081// AARCH64-DARWIN: #define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00001082// AARCH64-DARWIN: #define __INT64_C_SUFFIX__ LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001083// AARCH64-DARWIN: #define __INT64_FMTd__ "lld"
1084// AARCH64-DARWIN: #define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00001085// AARCH64-DARWIN: #define __INT64_MAX__ 9223372036854775807LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001086// AARCH64-DARWIN: #define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001087// AARCH64-DARWIN: #define __INT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001088// AARCH64-DARWIN: #define __INT8_FMTd__ "hhd"
1089// AARCH64-DARWIN: #define __INT8_FMTi__ "hhi"
1090// AARCH64-DARWIN: #define __INT8_MAX__ 127
1091// AARCH64-DARWIN: #define __INT8_TYPE__ signed char
1092// AARCH64-DARWIN: #define __INTMAX_C_SUFFIX__ L
1093// AARCH64-DARWIN: #define __INTMAX_FMTd__ "ld"
1094// AARCH64-DARWIN: #define __INTMAX_FMTi__ "li"
1095// AARCH64-DARWIN: #define __INTMAX_MAX__ 9223372036854775807L
1096// AARCH64-DARWIN: #define __INTMAX_TYPE__ long int
1097// AARCH64-DARWIN: #define __INTMAX_WIDTH__ 64
1098// AARCH64-DARWIN: #define __INTPTR_FMTd__ "ld"
1099// AARCH64-DARWIN: #define __INTPTR_FMTi__ "li"
1100// AARCH64-DARWIN: #define __INTPTR_MAX__ 9223372036854775807L
1101// AARCH64-DARWIN: #define __INTPTR_TYPE__ long int
1102// AARCH64-DARWIN: #define __INTPTR_WIDTH__ 64
1103// AARCH64-DARWIN: #define __INT_FAST16_FMTd__ "hd"
1104// AARCH64-DARWIN: #define __INT_FAST16_FMTi__ "hi"
1105// AARCH64-DARWIN: #define __INT_FAST16_MAX__ 32767
1106// AARCH64-DARWIN: #define __INT_FAST16_TYPE__ short
1107// AARCH64-DARWIN: #define __INT_FAST32_FMTd__ "d"
1108// AARCH64-DARWIN: #define __INT_FAST32_FMTi__ "i"
1109// AARCH64-DARWIN: #define __INT_FAST32_MAX__ 2147483647
1110// AARCH64-DARWIN: #define __INT_FAST32_TYPE__ int
1111// AARCH64-DARWIN: #define __INT_FAST64_FMTd__ "ld"
1112// AARCH64-DARWIN: #define __INT_FAST64_FMTi__ "li"
1113// AARCH64-DARWIN: #define __INT_FAST64_MAX__ 9223372036854775807L
1114// AARCH64-DARWIN: #define __INT_FAST64_TYPE__ long int
1115// AARCH64-DARWIN: #define __INT_FAST8_FMTd__ "hhd"
1116// AARCH64-DARWIN: #define __INT_FAST8_FMTi__ "hhi"
1117// AARCH64-DARWIN: #define __INT_FAST8_MAX__ 127
1118// AARCH64-DARWIN: #define __INT_FAST8_TYPE__ signed char
1119// AARCH64-DARWIN: #define __INT_LEAST16_FMTd__ "hd"
1120// AARCH64-DARWIN: #define __INT_LEAST16_FMTi__ "hi"
1121// AARCH64-DARWIN: #define __INT_LEAST16_MAX__ 32767
1122// AARCH64-DARWIN: #define __INT_LEAST16_TYPE__ short
1123// AARCH64-DARWIN: #define __INT_LEAST32_FMTd__ "d"
1124// AARCH64-DARWIN: #define __INT_LEAST32_FMTi__ "i"
1125// AARCH64-DARWIN: #define __INT_LEAST32_MAX__ 2147483647
1126// AARCH64-DARWIN: #define __INT_LEAST32_TYPE__ int
1127// AARCH64-DARWIN: #define __INT_LEAST64_FMTd__ "ld"
1128// AARCH64-DARWIN: #define __INT_LEAST64_FMTi__ "li"
1129// AARCH64-DARWIN: #define __INT_LEAST64_MAX__ 9223372036854775807L
1130// AARCH64-DARWIN: #define __INT_LEAST64_TYPE__ long int
1131// AARCH64-DARWIN: #define __INT_LEAST8_FMTd__ "hhd"
1132// AARCH64-DARWIN: #define __INT_LEAST8_FMTi__ "hhi"
1133// AARCH64-DARWIN: #define __INT_LEAST8_MAX__ 127
1134// AARCH64-DARWIN: #define __INT_LEAST8_TYPE__ signed char
1135// AARCH64-DARWIN: #define __INT_MAX__ 2147483647
1136// AARCH64-DARWIN: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1137// AARCH64-DARWIN: #define __LDBL_DIG__ 15
1138// AARCH64-DARWIN: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1139// AARCH64-DARWIN: #define __LDBL_HAS_DENORM__ 1
1140// AARCH64-DARWIN: #define __LDBL_HAS_INFINITY__ 1
1141// AARCH64-DARWIN: #define __LDBL_HAS_QUIET_NAN__ 1
1142// AARCH64-DARWIN: #define __LDBL_MANT_DIG__ 53
1143// AARCH64-DARWIN: #define __LDBL_MAX_10_EXP__ 308
1144// AARCH64-DARWIN: #define __LDBL_MAX_EXP__ 1024
1145// AARCH64-DARWIN: #define __LDBL_MAX__ 1.7976931348623157e+308L
1146// AARCH64-DARWIN: #define __LDBL_MIN_10_EXP__ (-307)
1147// AARCH64-DARWIN: #define __LDBL_MIN_EXP__ (-1021)
1148// AARCH64-DARWIN: #define __LDBL_MIN__ 2.2250738585072014e-308L
1149// AARCH64-DARWIN: #define __LONG_LONG_MAX__ 9223372036854775807LL
1150// AARCH64-DARWIN: #define __LONG_MAX__ 9223372036854775807L
1151// AARCH64-DARWIN: #define __LP64__ 1
1152// AARCH64-DARWIN: #define __POINTER_WIDTH__ 64
1153// AARCH64-DARWIN: #define __PTRDIFF_TYPE__ long int
1154// AARCH64-DARWIN: #define __PTRDIFF_WIDTH__ 64
1155// AARCH64-DARWIN: #define __SCHAR_MAX__ 127
1156// AARCH64-DARWIN: #define __SHRT_MAX__ 32767
1157// AARCH64-DARWIN: #define __SIG_ATOMIC_MAX__ 2147483647
1158// AARCH64-DARWIN: #define __SIG_ATOMIC_WIDTH__ 32
1159// AARCH64-DARWIN: #define __SIZEOF_DOUBLE__ 8
1160// AARCH64-DARWIN: #define __SIZEOF_FLOAT__ 4
1161// AARCH64-DARWIN: #define __SIZEOF_INT128__ 16
1162// AARCH64-DARWIN: #define __SIZEOF_INT__ 4
1163// AARCH64-DARWIN: #define __SIZEOF_LONG_DOUBLE__ 8
1164// AARCH64-DARWIN: #define __SIZEOF_LONG_LONG__ 8
1165// AARCH64-DARWIN: #define __SIZEOF_LONG__ 8
1166// AARCH64-DARWIN: #define __SIZEOF_POINTER__ 8
1167// AARCH64-DARWIN: #define __SIZEOF_PTRDIFF_T__ 8
1168// AARCH64-DARWIN: #define __SIZEOF_SHORT__ 2
1169// AARCH64-DARWIN: #define __SIZEOF_SIZE_T__ 8
1170// AARCH64-DARWIN: #define __SIZEOF_WCHAR_T__ 4
1171// AARCH64-DARWIN: #define __SIZEOF_WINT_T__ 4
1172// AARCH64-DARWIN: #define __SIZE_MAX__ 18446744073709551615UL
1173// AARCH64-DARWIN: #define __SIZE_TYPE__ long unsigned int
1174// AARCH64-DARWIN: #define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001175// AARCH64-DARWIN: #define __UINT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001176// AARCH64-DARWIN: #define __UINT16_MAX__ 65535
1177// AARCH64-DARWIN: #define __UINT16_TYPE__ unsigned short
1178// AARCH64-DARWIN: #define __UINT32_C_SUFFIX__ U
1179// AARCH64-DARWIN: #define __UINT32_MAX__ 4294967295U
1180// AARCH64-DARWIN: #define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001181// AARCH64-DARWIN: #define __UINT64_C_SUFFIX__ ULL
1182// AARCH64-DARWIN: #define __UINT64_MAX__ 18446744073709551615ULL
Tim Northovera6a19f12015-02-06 01:25:07 +00001183// AARCH64-DARWIN: #define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001184// AARCH64-DARWIN: #define __UINT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001185// AARCH64-DARWIN: #define __UINT8_MAX__ 255
1186// AARCH64-DARWIN: #define __UINT8_TYPE__ unsigned char
1187// AARCH64-DARWIN: #define __UINTMAX_C_SUFFIX__ UL
1188// AARCH64-DARWIN: #define __UINTMAX_MAX__ 18446744073709551615UL
1189// AARCH64-DARWIN: #define __UINTMAX_TYPE__ long unsigned int
1190// AARCH64-DARWIN: #define __UINTMAX_WIDTH__ 64
1191// AARCH64-DARWIN: #define __UINTPTR_MAX__ 18446744073709551615UL
1192// AARCH64-DARWIN: #define __UINTPTR_TYPE__ long unsigned int
1193// AARCH64-DARWIN: #define __UINTPTR_WIDTH__ 64
1194// AARCH64-DARWIN: #define __UINT_FAST16_MAX__ 65535
1195// AARCH64-DARWIN: #define __UINT_FAST16_TYPE__ unsigned short
1196// AARCH64-DARWIN: #define __UINT_FAST32_MAX__ 4294967295U
1197// AARCH64-DARWIN: #define __UINT_FAST32_TYPE__ unsigned int
1198// AARCH64-DARWIN: #define __UINT_FAST64_MAX__ 18446744073709551615UL
1199// AARCH64-DARWIN: #define __UINT_FAST64_TYPE__ long unsigned int
1200// AARCH64-DARWIN: #define __UINT_FAST8_MAX__ 255
1201// AARCH64-DARWIN: #define __UINT_FAST8_TYPE__ unsigned char
1202// AARCH64-DARWIN: #define __UINT_LEAST16_MAX__ 65535
1203// AARCH64-DARWIN: #define __UINT_LEAST16_TYPE__ unsigned short
1204// AARCH64-DARWIN: #define __UINT_LEAST32_MAX__ 4294967295U
1205// AARCH64-DARWIN: #define __UINT_LEAST32_TYPE__ unsigned int
1206// AARCH64-DARWIN: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
1207// AARCH64-DARWIN: #define __UINT_LEAST64_TYPE__ long unsigned int
1208// AARCH64-DARWIN: #define __UINT_LEAST8_MAX__ 255
1209// AARCH64-DARWIN: #define __UINT_LEAST8_TYPE__ unsigned char
1210// AARCH64-DARWIN: #define __USER_LABEL_PREFIX__ _
1211// AARCH64-DARWIN: #define __WCHAR_MAX__ 2147483647
1212// AARCH64-DARWIN: #define __WCHAR_TYPE__ int
1213// AARCH64-DARWIN-NOT: #define __WCHAR_UNSIGNED__
1214// AARCH64-DARWIN: #define __WCHAR_WIDTH__ 32
1215// AARCH64-DARWIN: #define __WINT_TYPE__ int
1216// AARCH64-DARWIN: #define __WINT_WIDTH__ 32
1217// AARCH64-DARWIN: #define __aarch64__ 1
1218
James Y Knightc97efa42016-02-11 16:51:29 +00001219// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM %s
Richard Smith59139022016-09-30 22:41:36 +00001220// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM -check-prefix ARM-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00001221//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001222// ARM-NOT:#define _LP64
Chris Lattnere963d092009-10-29 04:55:36 +00001223// ARM:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001224// ARM-NOT:#define __ARMEB__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00001225// ARM:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001226// ARM:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001227// ARM-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001228// ARM:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001229// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00001230// ARM:#define __CHAR16_TYPE__ unsigned short
1231// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00001232// ARM:#define __CHAR_BIT__ 8
1233// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1234// ARM:#define __DBL_DIG__ 15
1235// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
1236// ARM:#define __DBL_HAS_DENORM__ 1
1237// ARM:#define __DBL_HAS_INFINITY__ 1
1238// ARM:#define __DBL_HAS_QUIET_NAN__ 1
1239// ARM:#define __DBL_MANT_DIG__ 53
1240// ARM:#define __DBL_MAX_10_EXP__ 308
1241// ARM:#define __DBL_MAX_EXP__ 1024
1242// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
1243// ARM:#define __DBL_MIN_10_EXP__ (-307)
1244// ARM:#define __DBL_MIN_EXP__ (-1021)
1245// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001246// ARM:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00001247// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1248// ARM:#define __FLT_DIG__ 6
1249// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
1250// ARM:#define __FLT_EVAL_METHOD__ 0
1251// ARM:#define __FLT_HAS_DENORM__ 1
1252// ARM:#define __FLT_HAS_INFINITY__ 1
1253// ARM:#define __FLT_HAS_QUIET_NAN__ 1
1254// ARM:#define __FLT_MANT_DIG__ 24
1255// ARM:#define __FLT_MAX_10_EXP__ 38
1256// ARM:#define __FLT_MAX_EXP__ 128
1257// ARM:#define __FLT_MAX__ 3.40282347e+38F
1258// ARM:#define __FLT_MIN_10_EXP__ (-37)
1259// ARM:#define __FLT_MIN_EXP__ (-125)
1260// ARM:#define __FLT_MIN__ 1.17549435e-38F
1261// ARM:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001262// ARM:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001263// ARM:#define __INT16_FMTd__ "hd"
1264// ARM:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001265// ARM:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00001266// ARM:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001267// ARM:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001268// ARM:#define __INT32_FMTd__ "d"
1269// ARM:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001270// ARM:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00001271// ARM:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00001272// ARM:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001273// ARM:#define __INT64_FMTd__ "lld"
1274// ARM:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001275// ARM:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00001276// ARM:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001277// ARM:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001278// ARM:#define __INT8_FMTd__ "hhd"
1279// ARM:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001280// ARM:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001281// ARM:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001282// ARM:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001283// ARM:#define __INTMAX_FMTd__ "lld"
1284// ARM:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00001285// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00001286// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00001287// ARM:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001288// ARM:#define __INTPTR_FMTd__ "ld"
1289// ARM:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001290// ARM:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00001291// ARM:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00001292// ARM:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001293// ARM:#define __INT_FAST16_FMTd__ "hd"
1294// ARM:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001295// ARM:#define __INT_FAST16_MAX__ 32767
1296// ARM:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001297// ARM:#define __INT_FAST32_FMTd__ "d"
1298// ARM:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001299// ARM:#define __INT_FAST32_MAX__ 2147483647
1300// ARM:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001301// ARM:#define __INT_FAST64_FMTd__ "lld"
1302// ARM:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001303// ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
1304// ARM:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001305// ARM:#define __INT_FAST8_FMTd__ "hhd"
1306// ARM:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001307// ARM:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001308// ARM:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001309// ARM:#define __INT_LEAST16_FMTd__ "hd"
1310// ARM:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001311// ARM:#define __INT_LEAST16_MAX__ 32767
1312// ARM:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001313// ARM:#define __INT_LEAST32_FMTd__ "d"
1314// ARM:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001315// ARM:#define __INT_LEAST32_MAX__ 2147483647
1316// ARM:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001317// ARM:#define __INT_LEAST64_FMTd__ "lld"
1318// ARM:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001319// ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1320// ARM:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001321// ARM:#define __INT_LEAST8_FMTd__ "hhd"
1322// ARM:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001323// ARM:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001324// ARM:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00001325// ARM:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001326// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00001327// ARM:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001328// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00001329// ARM:#define __LDBL_HAS_DENORM__ 1
1330// ARM:#define __LDBL_HAS_INFINITY__ 1
1331// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
1332// ARM:#define __LDBL_MANT_DIG__ 53
1333// ARM:#define __LDBL_MAX_10_EXP__ 308
1334// ARM:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001335// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00001336// ARM:#define __LDBL_MIN_10_EXP__ (-307)
1337// ARM:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001338// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00001339// ARM:#define __LITTLE_ENDIAN__ 1
1340// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
1341// ARM:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001342// ARM-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00001343// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00001344// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00001345// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00001346// ARM:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00001347// ARM:#define __SCHAR_MAX__ 127
1348// ARM:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001349// ARM:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00001350// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00001351// ARM:#define __SIZEOF_DOUBLE__ 8
1352// ARM:#define __SIZEOF_FLOAT__ 4
1353// ARM:#define __SIZEOF_INT__ 4
1354// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
1355// ARM:#define __SIZEOF_LONG_LONG__ 8
1356// ARM:#define __SIZEOF_LONG__ 4
1357// ARM:#define __SIZEOF_POINTER__ 4
1358// ARM:#define __SIZEOF_PTRDIFF_T__ 4
1359// ARM:#define __SIZEOF_SHORT__ 2
1360// ARM:#define __SIZEOF_SIZE_T__ 4
1361// ARM:#define __SIZEOF_WCHAR_T__ 4
1362// ARM:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001363// ARM:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00001364// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00001365// ARM:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00001366// ARM-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00001367// ARM:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001368// ARM:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001369// ARM:#define __UINT16_TYPE__ unsigned short
1370// ARM:#define __UINT32_C_SUFFIX__ U
1371// ARM:#define __UINT32_MAX__ 4294967295U
1372// ARM:#define __UINT32_TYPE__ unsigned int
1373// ARM:#define __UINT64_C_SUFFIX__ ULL
1374// ARM:#define __UINT64_MAX__ 18446744073709551615ULL
1375// ARM:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001376// ARM:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001377// ARM:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001378// ARM:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001379// ARM:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001380// ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00001381// ARM:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001382// ARM:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001383// ARM:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001384// ARM:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001385// ARM:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001386// ARM:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001387// ARM:#define __UINT_FAST16_TYPE__ unsigned short
1388// ARM:#define __UINT_FAST32_MAX__ 4294967295U
1389// ARM:#define __UINT_FAST32_TYPE__ unsigned int
1390// ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1391// ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001392// ARM:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001393// ARM:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001394// ARM:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001395// ARM:#define __UINT_LEAST16_TYPE__ unsigned short
1396// ARM:#define __UINT_LEAST32_MAX__ 4294967295U
1397// ARM:#define __UINT_LEAST32_TYPE__ unsigned int
1398// ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1399// ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001400// ARM:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001401// ARM:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001402// ARM:#define __USER_LABEL_PREFIX__
James Molloyc445be42011-11-23 13:35:08 +00001403// ARM:#define __WCHAR_MAX__ 4294967295U
1404// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck0138b9e2009-11-19 15:47:58 +00001405// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001406// ARM:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00001407// ARM:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001408// ARM:#define __arm 1
1409// ARM:#define __arm__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001410
James Y Knightc97efa42016-02-11 16:51:29 +00001411// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armeb-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM-BE %s
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001412//
1413// ARM-BE-NOT:#define _LP64
1414// ARM-BE:#define __APCS_32__ 1
1415// ARM-BE:#define __ARMEB__ 1
1416// ARM-BE-NOT:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001417// ARM-BE:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001418// ARM-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001419// ARM-BE:#define __BIGGEST_ALIGNMENT__ 8
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001420// ARM-BE:#define __BIG_ENDIAN__ 1
1421// ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1422// ARM-BE:#define __CHAR16_TYPE__ unsigned short
1423// ARM-BE:#define __CHAR32_TYPE__ unsigned int
1424// ARM-BE:#define __CHAR_BIT__ 8
1425// ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1426// ARM-BE:#define __DBL_DIG__ 15
1427// ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1428// ARM-BE:#define __DBL_HAS_DENORM__ 1
1429// ARM-BE:#define __DBL_HAS_INFINITY__ 1
1430// ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
1431// ARM-BE:#define __DBL_MANT_DIG__ 53
1432// ARM-BE:#define __DBL_MAX_10_EXP__ 308
1433// ARM-BE:#define __DBL_MAX_EXP__ 1024
1434// ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
1435// ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
1436// ARM-BE:#define __DBL_MIN_EXP__ (-1021)
1437// ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001438// ARM-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001439// ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1440// ARM-BE:#define __FLT_DIG__ 6
1441// ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
1442// ARM-BE:#define __FLT_EVAL_METHOD__ 0
1443// ARM-BE:#define __FLT_HAS_DENORM__ 1
1444// ARM-BE:#define __FLT_HAS_INFINITY__ 1
1445// ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
1446// ARM-BE:#define __FLT_MANT_DIG__ 24
1447// ARM-BE:#define __FLT_MAX_10_EXP__ 38
1448// ARM-BE:#define __FLT_MAX_EXP__ 128
1449// ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
1450// ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
1451// ARM-BE:#define __FLT_MIN_EXP__ (-125)
1452// ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
1453// ARM-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001454// ARM-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001455// ARM-BE:#define __INT16_FMTd__ "hd"
1456// ARM-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001457// ARM-BE:#define __INT16_MAX__ 32767
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001458// ARM-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001459// ARM-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001460// ARM-BE:#define __INT32_FMTd__ "d"
1461// ARM-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001462// ARM-BE:#define __INT32_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001463// ARM-BE:#define __INT32_TYPE__ int
1464// ARM-BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001465// ARM-BE:#define __INT64_FMTd__ "lld"
1466// ARM-BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001467// ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001468// ARM-BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001469// ARM-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001470// ARM-BE:#define __INT8_FMTd__ "hhd"
1471// ARM-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001472// ARM-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001473// ARM-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001474// ARM-BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001475// ARM-BE:#define __INTMAX_FMTd__ "lld"
1476// ARM-BE:#define __INTMAX_FMTi__ "lli"
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001477// ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
1478// ARM-BE:#define __INTMAX_TYPE__ long long int
1479// ARM-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001480// ARM-BE:#define __INTPTR_FMTd__ "ld"
1481// ARM-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001482// ARM-BE:#define __INTPTR_MAX__ 2147483647L
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001483// ARM-BE:#define __INTPTR_TYPE__ long int
1484// ARM-BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001485// ARM-BE:#define __INT_FAST16_FMTd__ "hd"
1486// ARM-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001487// ARM-BE:#define __INT_FAST16_MAX__ 32767
1488// ARM-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001489// ARM-BE:#define __INT_FAST32_FMTd__ "d"
1490// ARM-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001491// ARM-BE:#define __INT_FAST32_MAX__ 2147483647
1492// ARM-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001493// ARM-BE:#define __INT_FAST64_FMTd__ "lld"
1494// ARM-BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001495// ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
1496// ARM-BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001497// ARM-BE:#define __INT_FAST8_FMTd__ "hhd"
1498// ARM-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001499// ARM-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001500// ARM-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001501// ARM-BE:#define __INT_LEAST16_FMTd__ "hd"
1502// ARM-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001503// ARM-BE:#define __INT_LEAST16_MAX__ 32767
1504// ARM-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001505// ARM-BE:#define __INT_LEAST32_FMTd__ "d"
1506// ARM-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001507// ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
1508// ARM-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001509// ARM-BE:#define __INT_LEAST64_FMTd__ "lld"
1510// ARM-BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001511// ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1512// ARM-BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001513// ARM-BE:#define __INT_LEAST8_FMTd__ "hhd"
1514// ARM-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001515// ARM-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001516// ARM-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001517// ARM-BE:#define __INT_MAX__ 2147483647
1518// ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1519// ARM-BE:#define __LDBL_DIG__ 15
1520// ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
1521// ARM-BE:#define __LDBL_HAS_DENORM__ 1
1522// ARM-BE:#define __LDBL_HAS_INFINITY__ 1
1523// ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
1524// ARM-BE:#define __LDBL_MANT_DIG__ 53
1525// ARM-BE:#define __LDBL_MAX_10_EXP__ 308
1526// ARM-BE:#define __LDBL_MAX_EXP__ 1024
1527// ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
1528// ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
1529// ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
1530// ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
1531// ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1532// ARM-BE:#define __LONG_MAX__ 2147483647L
1533// ARM-BE-NOT:#define __LP64__
1534// ARM-BE:#define __POINTER_WIDTH__ 32
1535// ARM-BE:#define __PTRDIFF_TYPE__ int
1536// ARM-BE:#define __PTRDIFF_WIDTH__ 32
1537// ARM-BE:#define __REGISTER_PREFIX__
1538// ARM-BE:#define __SCHAR_MAX__ 127
1539// ARM-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001540// ARM-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001541// ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
1542// ARM-BE:#define __SIZEOF_DOUBLE__ 8
1543// ARM-BE:#define __SIZEOF_FLOAT__ 4
1544// ARM-BE:#define __SIZEOF_INT__ 4
1545// ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
1546// ARM-BE:#define __SIZEOF_LONG_LONG__ 8
1547// ARM-BE:#define __SIZEOF_LONG__ 4
1548// ARM-BE:#define __SIZEOF_POINTER__ 4
1549// ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
1550// ARM-BE:#define __SIZEOF_SHORT__ 2
1551// ARM-BE:#define __SIZEOF_SIZE_T__ 4
1552// ARM-BE:#define __SIZEOF_WCHAR_T__ 4
1553// ARM-BE:#define __SIZEOF_WINT_T__ 4
1554// ARM-BE:#define __SIZE_MAX__ 4294967295U
1555// ARM-BE:#define __SIZE_TYPE__ unsigned int
1556// ARM-BE:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00001557// ARM-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001558// ARM-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001559// ARM-BE:#define __UINT16_TYPE__ unsigned short
1560// ARM-BE:#define __UINT32_C_SUFFIX__ U
1561// ARM-BE:#define __UINT32_MAX__ 4294967295U
1562// ARM-BE:#define __UINT32_TYPE__ unsigned int
1563// ARM-BE:#define __UINT64_C_SUFFIX__ ULL
1564// ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
1565// ARM-BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001566// ARM-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001567// ARM-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001568// ARM-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001569// ARM-BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001570// ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001571// ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001572// ARM-BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001573// ARM-BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001574// ARM-BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001575// ARM-BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001576// ARM-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001577// ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
1578// ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
1579// ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
1580// ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1581// ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001582// ARM-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001583// ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001584// ARM-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001585// ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
1586// ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
1587// ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
1588// ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1589// ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001590// ARM-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001591// ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001592// ARM-BE:#define __USER_LABEL_PREFIX__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001593// ARM-BE:#define __WCHAR_MAX__ 4294967295U
1594// ARM-BE:#define __WCHAR_TYPE__ unsigned int
1595// ARM-BE:#define __WCHAR_WIDTH__ 32
1596// ARM-BE:#define __WINT_TYPE__ int
1597// ARM-BE:#define __WINT_WIDTH__ 32
1598// ARM-BE:#define __arm 1
1599// ARM-BE:#define __arm__ 1
1600
James Y Knightc97efa42016-02-11 16:51:29 +00001601// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi -target-feature +soft-float -target-feature +soft-float-abi < /dev/null | FileCheck -match-full-lines -check-prefix ARMEABISOFTFP %s
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001602//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001603// ARMEABISOFTFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001604// ARMEABISOFTFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001605// ARMEABISOFTFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001606// ARMEABISOFTFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001607// ARMEABISOFTFP:#define __ARM_ARCH 4
1608// ARMEABISOFTFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001609// ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001610// ARMEABISOFTFP:#define __ARM_EABI__ 1
1611// ARMEABISOFTFP:#define __ARM_PCS 1
1612// ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001613// ARMEABISOFTFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001614// ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1615// ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
1616// ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
1617// ARMEABISOFTFP:#define __CHAR_BIT__ 8
1618// ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1619// ARMEABISOFTFP:#define __DBL_DIG__ 15
1620// ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
1621// ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
1622// ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
1623// ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
1624// ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
1625// ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
1626// ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
1627// ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
1628// ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
1629// ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
1630// ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001631// ARMEABISOFTFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001632// ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1633// ARMEABISOFTFP:#define __FLT_DIG__ 6
1634// ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
1635// ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
1636// ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
1637// ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
1638// ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
1639// ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
1640// ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
1641// ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
1642// ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
1643// ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
1644// ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
1645// ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
1646// ARMEABISOFTFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001647// ARMEABISOFTFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001648// ARMEABISOFTFP:#define __INT16_FMTd__ "hd"
1649// ARMEABISOFTFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001650// ARMEABISOFTFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001651// ARMEABISOFTFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001652// ARMEABISOFTFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001653// ARMEABISOFTFP:#define __INT32_FMTd__ "d"
1654// ARMEABISOFTFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001655// ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001656// ARMEABISOFTFP:#define __INT32_TYPE__ int
1657// ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001658// ARMEABISOFTFP:#define __INT64_FMTd__ "lld"
1659// ARMEABISOFTFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001660// ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001661// ARMEABISOFTFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001662// ARMEABISOFTFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001663// ARMEABISOFTFP:#define __INT8_FMTd__ "hhd"
1664// ARMEABISOFTFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001665// ARMEABISOFTFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001666// ARMEABISOFTFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001667// ARMEABISOFTFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001668// ARMEABISOFTFP:#define __INTMAX_FMTd__ "lld"
1669// ARMEABISOFTFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001670// ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
1671// ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
1672// ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001673// ARMEABISOFTFP:#define __INTPTR_FMTd__ "ld"
1674// ARMEABISOFTFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001675// ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001676// ARMEABISOFTFP:#define __INTPTR_TYPE__ long int
1677// ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001678// ARMEABISOFTFP:#define __INT_FAST16_FMTd__ "hd"
1679// ARMEABISOFTFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001680// ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
1681// ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001682// ARMEABISOFTFP:#define __INT_FAST32_FMTd__ "d"
1683// ARMEABISOFTFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001684// ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
1685// ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001686// ARMEABISOFTFP:#define __INT_FAST64_FMTd__ "lld"
1687// ARMEABISOFTFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001688// ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
1689// ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001690// ARMEABISOFTFP:#define __INT_FAST8_FMTd__ "hhd"
1691// ARMEABISOFTFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001692// ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001693// ARMEABISOFTFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001694// ARMEABISOFTFP:#define __INT_LEAST16_FMTd__ "hd"
1695// ARMEABISOFTFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001696// ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
1697// ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001698// ARMEABISOFTFP:#define __INT_LEAST32_FMTd__ "d"
1699// ARMEABISOFTFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001700// ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
1701// ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001702// ARMEABISOFTFP:#define __INT_LEAST64_FMTd__ "lld"
1703// ARMEABISOFTFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001704// ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1705// ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001706// ARMEABISOFTFP:#define __INT_LEAST8_FMTd__ "hhd"
1707// ARMEABISOFTFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001708// ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001709// ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001710// ARMEABISOFTFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001711// ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001712// ARMEABISOFTFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001713// ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001714// ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
1715// ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
1716// ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
1717// ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
1718// ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
1719// ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001720// ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001721// ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
1722// ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001723// ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001724// ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
1725// ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
1726// ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
1727// ARMEABISOFTFP-NOT:#define __LP64__
1728// ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
1729// ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
1730// ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
1731// ARMEABISOFTFP:#define __REGISTER_PREFIX__
1732// ARMEABISOFTFP:#define __SCHAR_MAX__ 127
1733// ARMEABISOFTFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001734// ARMEABISOFTFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001735// ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
1736// ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
1737// ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
1738// ARMEABISOFTFP:#define __SIZEOF_INT__ 4
1739// ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
1740// ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
1741// ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
1742// ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
1743// ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
1744// ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
1745// ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
1746// ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
1747// ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001748// ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001749// ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
1750// ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
1751// ARMEABISOFTFP:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00001752// ARMEABISOFTFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001753// ARMEABISOFTFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001754// ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
1755// ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
1756// ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
1757// ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
1758// ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
1759// ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
1760// ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001761// ARMEABISOFTFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001762// ARMEABISOFTFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001763// ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001764// ARMEABISOFTFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001765// ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001766// ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001767// ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001768// ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001769// ARMEABISOFTFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001770// ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001771// ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001772// ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
1773// ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
1774// ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
1775// ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1776// ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001777// ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001778// ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001779// ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001780// ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
1781// ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
1782// ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
1783// ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1784// ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001785// ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001786// ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001787// ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
1788// ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
1789// ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
1790// ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
1791// ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
1792// ARMEABISOFTFP:#define __WINT_WIDTH__ 32
1793// ARMEABISOFTFP:#define __arm 1
1794// ARMEABISOFTFP:#define __arm__ 1
1795
James Y Knightc97efa42016-02-11 16:51:29 +00001796// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix ARMEABIHARDFP %s
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001797//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001798// ARMEABIHARDFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001799// ARMEABIHARDFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001800// ARMEABIHARDFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001801// ARMEABIHARDFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001802// ARMEABIHARDFP:#define __ARM_ARCH 4
1803// ARMEABIHARDFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001804// ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001805// ARMEABIHARDFP:#define __ARM_EABI__ 1
1806// ARMEABIHARDFP:#define __ARM_PCS 1
1807// ARMEABIHARDFP:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001808// ARMEABIHARDFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001809// ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1810// ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
1811// ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
1812// ARMEABIHARDFP:#define __CHAR_BIT__ 8
1813// ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1814// ARMEABIHARDFP:#define __DBL_DIG__ 15
1815// ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
1816// ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
1817// ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
1818// ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
1819// ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
1820// ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
1821// ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
1822// ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
1823// ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
1824// ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
1825// ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001826// ARMEABIHARDFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001827// ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1828// ARMEABIHARDFP:#define __FLT_DIG__ 6
1829// ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
1830// ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
1831// ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
1832// ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
1833// ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
1834// ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
1835// ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
1836// ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
1837// ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
1838// ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
1839// ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
1840// ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
1841// ARMEABIHARDFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001842// ARMEABIHARDFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001843// ARMEABIHARDFP:#define __INT16_FMTd__ "hd"
1844// ARMEABIHARDFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001845// ARMEABIHARDFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001846// ARMEABIHARDFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001847// ARMEABIHARDFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001848// ARMEABIHARDFP:#define __INT32_FMTd__ "d"
1849// ARMEABIHARDFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001850// ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001851// ARMEABIHARDFP:#define __INT32_TYPE__ int
1852// ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001853// ARMEABIHARDFP:#define __INT64_FMTd__ "lld"
1854// ARMEABIHARDFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001855// ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001856// ARMEABIHARDFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001857// ARMEABIHARDFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001858// ARMEABIHARDFP:#define __INT8_FMTd__ "hhd"
1859// ARMEABIHARDFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001860// ARMEABIHARDFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001861// ARMEABIHARDFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001862// ARMEABIHARDFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001863// ARMEABIHARDFP:#define __INTMAX_FMTd__ "lld"
1864// ARMEABIHARDFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001865// ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
1866// ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
1867// ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001868// ARMEABIHARDFP:#define __INTPTR_FMTd__ "ld"
1869// ARMEABIHARDFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001870// ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001871// ARMEABIHARDFP:#define __INTPTR_TYPE__ long int
1872// ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001873// ARMEABIHARDFP:#define __INT_FAST16_FMTd__ "hd"
1874// ARMEABIHARDFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001875// ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
1876// ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001877// ARMEABIHARDFP:#define __INT_FAST32_FMTd__ "d"
1878// ARMEABIHARDFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001879// ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
1880// ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001881// ARMEABIHARDFP:#define __INT_FAST64_FMTd__ "lld"
1882// ARMEABIHARDFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001883// ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
1884// ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001885// ARMEABIHARDFP:#define __INT_FAST8_FMTd__ "hhd"
1886// ARMEABIHARDFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001887// ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001888// ARMEABIHARDFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001889// ARMEABIHARDFP:#define __INT_LEAST16_FMTd__ "hd"
1890// ARMEABIHARDFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001891// ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
1892// ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001893// ARMEABIHARDFP:#define __INT_LEAST32_FMTd__ "d"
1894// ARMEABIHARDFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001895// ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
1896// ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001897// ARMEABIHARDFP:#define __INT_LEAST64_FMTd__ "lld"
1898// ARMEABIHARDFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001899// ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1900// ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001901// ARMEABIHARDFP:#define __INT_LEAST8_FMTd__ "hhd"
1902// ARMEABIHARDFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001903// ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001904// ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001905// ARMEABIHARDFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001906// ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001907// ARMEABIHARDFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001908// ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001909// ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
1910// ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
1911// ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
1912// ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
1913// ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
1914// ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001915// ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001916// ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
1917// ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001918// ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001919// ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
1920// ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
1921// ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
1922// ARMEABIHARDFP-NOT:#define __LP64__
1923// ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
1924// ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
1925// ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
1926// ARMEABIHARDFP:#define __REGISTER_PREFIX__
1927// ARMEABIHARDFP:#define __SCHAR_MAX__ 127
1928// ARMEABIHARDFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001929// ARMEABIHARDFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001930// ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
1931// ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
1932// ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
1933// ARMEABIHARDFP:#define __SIZEOF_INT__ 4
1934// ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
1935// ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
1936// ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
1937// ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
1938// ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
1939// ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
1940// ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
1941// ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
1942// ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001943// ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001944// ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
1945// ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
1946// ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00001947// ARMEABIHARDFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001948// ARMEABIHARDFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001949// ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
1950// ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
1951// ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
1952// ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
1953// ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
1954// ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
1955// ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001956// ARMEABIHARDFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001957// ARMEABIHARDFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001958// ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001959// ARMEABIHARDFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001960// ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001961// ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001962// ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001963// ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001964// ARMEABIHARDFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001965// ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001966// ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001967// ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
1968// ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
1969// ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
1970// ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1971// ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001972// ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001973// ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001974// ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001975// ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
1976// ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
1977// ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
1978// ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1979// ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001980// ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001981// ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001982// ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
1983// ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
1984// ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
1985// ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
1986// ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
1987// ARMEABIHARDFP:#define __WINT_WIDTH__ 32
1988// ARMEABIHARDFP:#define __arm 1
1989// ARMEABIHARDFP:#define __arm__ 1
1990
Ed Schoutenc6d1a732016-09-05 18:38:34 +00001991// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv6-unknown-cloudabi-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARMV6-CLOUDABI %s
1992//
1993// ARMV6-CLOUDABI:#define __CloudABI__ 1
1994// ARMV6-CLOUDABI:#define __arm__ 1
1995
James Y Knightc97efa42016-02-11 16:51:29 +00001996// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-netbsd-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NETBSD %s
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00001997//
1998// ARM-NETBSD-NOT:#define _LP64
1999// ARM-NETBSD:#define __APCS_32__ 1
2000// ARM-NETBSD-NOT:#define __ARMEB__ 1
2001// ARM-NETBSD:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00002002// ARM-NETBSD:#define __ARM_ARCH_4T__ 1
Joerg Sonnenbergercc1edb52014-05-13 18:58:36 +00002003// ARM-NETBSD:#define __ARM_DWARF_EH__ 1
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002004// ARM-NETBSD:#define __ARM_EABI__ 1
2005// ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00002006// ARM-NETBSD:#define __BIGGEST_ALIGNMENT__ 8
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002007// ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2008// ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
2009// ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
2010// ARM-NETBSD:#define __CHAR_BIT__ 8
2011// ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2012// ARM-NETBSD:#define __DBL_DIG__ 15
2013// ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2014// ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
2015// ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
2016// ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2017// ARM-NETBSD:#define __DBL_MANT_DIG__ 53
2018// ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
2019// ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
2020// ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2021// ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2022// ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2023// ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002024// ARM-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002025// ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2026// ARM-NETBSD:#define __FLT_DIG__ 6
2027// ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2028// ARM-NETBSD:#define __FLT_EVAL_METHOD__ 0
2029// ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
2030// ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
2031// ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2032// ARM-NETBSD:#define __FLT_MANT_DIG__ 24
2033// ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
2034// ARM-NETBSD:#define __FLT_MAX_EXP__ 128
2035// ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2036// ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2037// ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
2038// ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2039// ARM-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002040// ARM-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002041// ARM-NETBSD:#define __INT16_FMTd__ "hd"
2042// ARM-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002043// ARM-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002044// ARM-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002045// ARM-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002046// ARM-NETBSD:#define __INT32_FMTd__ "d"
2047// ARM-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002048// ARM-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002049// ARM-NETBSD:#define __INT32_TYPE__ int
2050// ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002051// ARM-NETBSD:#define __INT64_FMTd__ "lld"
2052// ARM-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002053// ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002054// ARM-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002055// ARM-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002056// ARM-NETBSD:#define __INT8_FMTd__ "hhd"
2057// ARM-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002058// ARM-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002059// ARM-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002060// ARM-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002061// ARM-NETBSD:#define __INTMAX_FMTd__ "lld"
2062// ARM-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002063// ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2064// ARM-NETBSD:#define __INTMAX_TYPE__ long long int
2065// ARM-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002066// ARM-NETBSD:#define __INTPTR_FMTd__ "ld"
2067// ARM-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002068// ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002069// ARM-NETBSD:#define __INTPTR_TYPE__ long int
2070// ARM-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002071// ARM-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2072// ARM-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002073// ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
2074// ARM-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002075// ARM-NETBSD:#define __INT_FAST32_FMTd__ "d"
2076// ARM-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002077// ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2078// ARM-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002079// ARM-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2080// ARM-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002081// ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2082// ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002083// ARM-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2084// ARM-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002085// ARM-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002086// ARM-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002087// ARM-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2088// ARM-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002089// ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
2090// ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002091// ARM-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2092// ARM-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002093// ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2094// ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002095// ARM-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2096// ARM-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002097// ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2098// ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002099// ARM-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2100// ARM-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002101// ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002102// ARM-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002103// ARM-NETBSD:#define __INT_MAX__ 2147483647
2104// ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2105// ARM-NETBSD:#define __LDBL_DIG__ 15
2106// ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2107// ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
2108// ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2109// ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2110// ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
2111// ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
2112// ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
2113// ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
2114// ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
2115// ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
2116// ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
2117// ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
2118// ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2119// ARM-NETBSD:#define __LONG_MAX__ 2147483647L
2120// ARM-NETBSD-NOT:#define __LP64__
2121// ARM-NETBSD:#define __POINTER_WIDTH__ 32
2122// ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
2123// ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
2124// ARM-NETBSD:#define __REGISTER_PREFIX__
2125// ARM-NETBSD:#define __SCHAR_MAX__ 127
2126// ARM-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002127// ARM-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002128// ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2129// ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
2130// ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
2131// ARM-NETBSD:#define __SIZEOF_INT__ 4
2132// ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
2133// ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2134// ARM-NETBSD:#define __SIZEOF_LONG__ 4
2135// ARM-NETBSD:#define __SIZEOF_POINTER__ 4
2136// ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2137// ARM-NETBSD:#define __SIZEOF_SHORT__ 2
2138// ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
2139// ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2140// ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002141// ARM-NETBSD:#define __SIZE_MAX__ 4294967295UL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002142// ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
2143// ARM-NETBSD:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002144// ARM-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002145// ARM-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002146// ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
2147// ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
2148// ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
2149// ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
2150// ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2151// ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2152// ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002153// ARM-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002154// ARM-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002155// ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00002156// ARM-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002157// ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002158// ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002159// ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002160// ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002161// ARM-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002162// ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002163// ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002164// ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2165// ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2166// ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2167// ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2168// ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002169// ARM-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002170// ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002171// ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002172// ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2173// ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2174// ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2175// ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2176// ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002177// ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002178// ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002179// ARM-NETBSD:#define __USER_LABEL_PREFIX__
2180// ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
2181// ARM-NETBSD:#define __WCHAR_TYPE__ int
2182// ARM-NETBSD:#define __WCHAR_WIDTH__ 32
2183// ARM-NETBSD:#define __WINT_TYPE__ int
2184// ARM-NETBSD:#define __WINT_WIDTH__ 32
2185// ARM-NETBSD:#define __arm 1
2186// ARM-NETBSD:#define __arm__ 1
2187
Weiming Zhaob0613132016-04-18 16:25:46 +00002188// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2189// ARM-NONE-EABI: #define __ELF__ 1
2190
Tim Northover862eaf82016-05-13 21:26:45 +00002191// No MachO targets use the full EABI, even if AAPCS is used.
2192// RUN: %clang -target x86_64-apple-darwin -arch armv7s -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2193// RUN: %clang -target x86_64-apple-darwin -arch armv6m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2194// RUN: %clang -target x86_64-apple-darwin -arch armv7m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2195// RUN: %clang -target x86_64-apple-darwin -arch armv7em -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2196// RUN: %clang -target x86_64-apple-darwin -arch armv7 -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2197// ARM-MACHO-NO-EABI-NOT: #define __ARM_EABI__ 1
Tim Northovere77f78c2013-11-11 19:11:22 +00002198
James Y Knightc97efa42016-02-11 16:51:29 +00002199// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv7-bitrig-gnueabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-BITRIG %s
Renato Golin9ba39232015-02-27 16:35:48 +00002200// ARM-BITRIG:#define __ARM_DWARF_EH__ 1
2201// ARM-BITRIG:#define __SIZEOF_SIZE_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002202// ARM-BITRIG:#define __SIZE_MAX__ 4294967295UL
Renato Golin9ba39232015-02-27 16:35:48 +00002203// ARM-BITRIG:#define __SIZE_TYPE__ long unsigned int
2204// ARM-BITRIG:#define __SIZE_WIDTH__ 32
2205
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002206// Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
2207
James Y Knightc97efa42016-02-11 16:51:29 +00002208// RUN: %clang -target arm -mhwdiv=arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARMHWDIV-ARM %s
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002209// ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
2210
James Y Knightc97efa42016-02-11 16:51:29 +00002211// RUN: %clang -target arm -mthumb -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMBHWDIV-THUMB %s
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002212// THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
2213
James Y Knightc97efa42016-02-11 16:51:29 +00002214// RUN: %clang -target arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-FALSE %s
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002215// ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2216
James Y Knightc97efa42016-02-11 16:51:29 +00002217// RUN: %clang -target arm -mthumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMB-FALSE %s
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002218// THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2219
James Y Knightc97efa42016-02-11 16:51:29 +00002220// RUN: %clang -target arm -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMBHWDIV-ARM-FALSE %s
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002221// THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2222
James Y Knightc97efa42016-02-11 16:51:29 +00002223// RUN: %clang -target arm -mthumb -mhwdiv=arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARMHWDIV-THUMB-FALSE %s
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002224// ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2225
James Y Knightc97efa42016-02-11 16:51:29 +00002226// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv8-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARMv8 %s
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002227// ARMv8: #define __THUMB_INTERWORK__ 1
2228// ARMv8-NOT: #define __thumb2__
2229
James Y Knightc97efa42016-02-11 16:51:29 +00002230// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armebv8-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARMebv8 %s
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002231// ARMebv8: #define __THUMB_INTERWORK__ 1
2232// ARMebv8-NOT: #define __thumb2__
2233
James Y Knightc97efa42016-02-11 16:51:29 +00002234// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv8 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv8 %s
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002235// Thumbv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002236// Thumbv8: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002237
James Y Knightc97efa42016-02-11 16:51:29 +00002238// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbebv8 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbebv8 %s
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002239// Thumbebv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002240// Thumbebv8: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002241
James Y Knightc97efa42016-02-11 16:51:29 +00002242// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv5 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv5 %s
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002243// Thumbv5: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002244// Thumbv5-NOT: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002245
James Y Knightc97efa42016-02-11 16:51:29 +00002246// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv6t2 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv6t2 %s
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002247// Thumbv6t2: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002248// Thumbv6t2: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002249
James Y Knightc97efa42016-02-11 16:51:29 +00002250// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv7 %s
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002251// Thumbv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002252// Thumbv7: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002253
James Y Knightc97efa42016-02-11 16:51:29 +00002254// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbebv7 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbebv7 %s
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002255// Thumbebv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002256// Thumbebv7: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002257
Chris Lattnere963d092009-10-29 04:55:36 +00002258//
James Y Knightc97efa42016-02-11 16:51:29 +00002259// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-none-none < /dev/null | FileCheck -match-full-lines -check-prefix I386 %s
Chris Lattnere963d092009-10-29 04:55:36 +00002260//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002261// I386-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002262// I386:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002263// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002264// I386:#define __CHAR16_TYPE__ unsigned short
2265// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002266// I386:#define __CHAR_BIT__ 8
2267// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2268// I386:#define __DBL_DIG__ 15
2269// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
2270// I386:#define __DBL_HAS_DENORM__ 1
2271// I386:#define __DBL_HAS_INFINITY__ 1
2272// I386:#define __DBL_HAS_QUIET_NAN__ 1
2273// I386:#define __DBL_MANT_DIG__ 53
2274// I386:#define __DBL_MAX_10_EXP__ 308
2275// I386:#define __DBL_MAX_EXP__ 1024
2276// I386:#define __DBL_MAX__ 1.7976931348623157e+308
2277// I386:#define __DBL_MIN_10_EXP__ (-307)
2278// I386:#define __DBL_MIN_EXP__ (-1021)
2279// I386:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002280// I386:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00002281// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2282// I386:#define __FLT_DIG__ 6
2283// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramercf501472011-12-28 15:47:06 +00002284// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnere963d092009-10-29 04:55:36 +00002285// I386:#define __FLT_HAS_DENORM__ 1
2286// I386:#define __FLT_HAS_INFINITY__ 1
2287// I386:#define __FLT_HAS_QUIET_NAN__ 1
2288// I386:#define __FLT_MANT_DIG__ 24
2289// I386:#define __FLT_MAX_10_EXP__ 38
2290// I386:#define __FLT_MAX_EXP__ 128
2291// I386:#define __FLT_MAX__ 3.40282347e+38F
2292// I386:#define __FLT_MIN_10_EXP__ (-37)
2293// I386:#define __FLT_MIN_EXP__ (-125)
2294// I386:#define __FLT_MIN__ 1.17549435e-38F
2295// I386:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002296// I386:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002297// I386:#define __INT16_FMTd__ "hd"
2298// I386:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002299// I386:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00002300// I386:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002301// I386:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002302// I386:#define __INT32_FMTd__ "d"
2303// I386:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002304// I386:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00002305// I386:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002306// I386:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002307// I386:#define __INT64_FMTd__ "lld"
2308// I386:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002309// I386:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00002310// I386:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002311// I386:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002312// I386:#define __INT8_FMTd__ "hhd"
2313// I386:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002314// I386:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002315// I386:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002316// I386:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002317// I386:#define __INTMAX_FMTd__ "lld"
2318// I386:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00002319// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00002320// I386:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002321// I386:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002322// I386:#define __INTPTR_FMTd__ "d"
2323// I386:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002324// I386:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00002325// I386:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002326// I386:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002327// I386:#define __INT_FAST16_FMTd__ "hd"
2328// I386:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002329// I386:#define __INT_FAST16_MAX__ 32767
2330// I386:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002331// I386:#define __INT_FAST32_FMTd__ "d"
2332// I386:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002333// I386:#define __INT_FAST32_MAX__ 2147483647
2334// I386:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002335// I386:#define __INT_FAST64_FMTd__ "lld"
2336// I386:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002337// I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
2338// I386:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002339// I386:#define __INT_FAST8_FMTd__ "hhd"
2340// I386:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002341// I386:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002342// I386:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002343// I386:#define __INT_LEAST16_FMTd__ "hd"
2344// I386:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002345// I386:#define __INT_LEAST16_MAX__ 32767
2346// I386:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002347// I386:#define __INT_LEAST32_FMTd__ "d"
2348// I386:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002349// I386:#define __INT_LEAST32_MAX__ 2147483647
2350// I386:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002351// I386:#define __INT_LEAST64_FMTd__ "lld"
2352// I386:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002353// I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2354// I386:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002355// I386:#define __INT_LEAST8_FMTd__ "hhd"
2356// I386:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002357// I386:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002358// I386:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00002359// I386:#define __INT_MAX__ 2147483647
2360// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2361// I386:#define __LDBL_DIG__ 18
2362// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2363// I386:#define __LDBL_HAS_DENORM__ 1
2364// I386:#define __LDBL_HAS_INFINITY__ 1
2365// I386:#define __LDBL_HAS_QUIET_NAN__ 1
2366// I386:#define __LDBL_MANT_DIG__ 64
2367// I386:#define __LDBL_MAX_10_EXP__ 4932
2368// I386:#define __LDBL_MAX_EXP__ 16384
2369// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2370// I386:#define __LDBL_MIN_10_EXP__ (-4931)
2371// I386:#define __LDBL_MIN_EXP__ (-16381)
2372// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2373// I386:#define __LITTLE_ENDIAN__ 1
2374// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
2375// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002376// I386-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00002377// I386:#define __NO_MATH_INLINES 1
2378// I386:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00002379// I386:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00002380// I386:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002381// I386:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002382// I386:#define __SCHAR_MAX__ 127
2383// I386:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002384// I386:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00002385// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002386// I386:#define __SIZEOF_DOUBLE__ 8
2387// I386:#define __SIZEOF_FLOAT__ 4
2388// I386:#define __SIZEOF_INT__ 4
2389// I386:#define __SIZEOF_LONG_DOUBLE__ 12
2390// I386:#define __SIZEOF_LONG_LONG__ 8
2391// I386:#define __SIZEOF_LONG__ 4
2392// I386:#define __SIZEOF_POINTER__ 4
2393// I386:#define __SIZEOF_PTRDIFF_T__ 4
2394// I386:#define __SIZEOF_SHORT__ 2
2395// I386:#define __SIZEOF_SIZE_T__ 4
2396// I386:#define __SIZEOF_WCHAR_T__ 4
2397// I386:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002398// I386:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00002399// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002400// I386:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002401// I386:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002402// I386:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002403// I386:#define __UINT16_TYPE__ unsigned short
2404// I386:#define __UINT32_C_SUFFIX__ U
2405// I386:#define __UINT32_MAX__ 4294967295U
2406// I386:#define __UINT32_TYPE__ unsigned int
2407// I386:#define __UINT64_C_SUFFIX__ ULL
2408// I386:#define __UINT64_MAX__ 18446744073709551615ULL
2409// I386:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002410// I386:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002411// I386:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002412// I386:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002413// I386:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002414// I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00002415// I386:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002416// I386:#define __UINTMAX_WIDTH__ 64
2417// I386:#define __UINTPTR_MAX__ 4294967295U
2418// I386:#define __UINTPTR_TYPE__ unsigned int
2419// I386:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002420// I386:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002421// I386:#define __UINT_FAST16_TYPE__ unsigned short
2422// I386:#define __UINT_FAST32_MAX__ 4294967295U
2423// I386:#define __UINT_FAST32_TYPE__ unsigned int
2424// I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2425// I386:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002426// I386:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002427// I386:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002428// I386:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002429// I386:#define __UINT_LEAST16_TYPE__ unsigned short
2430// I386:#define __UINT_LEAST32_MAX__ 4294967295U
2431// I386:#define __UINT_LEAST32_TYPE__ unsigned int
2432// I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2433// I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002434// I386:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002435// I386:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00002436// I386:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002437// I386:#define __WCHAR_MAX__ 2147483647
2438// I386:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002439// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002440// I386:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002441// I386:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002442// I386:#define __i386 1
2443// I386:#define __i386__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002444// I386:#define i386 1
2445//
James Y Knightc97efa42016-02-11 16:51:29 +00002446// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -match-full-lines -check-prefix I386-LINUX %s
Richard Smith59139022016-09-30 22:41:36 +00002447// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -match-full-lines -check-prefix I386-LINUX -check-prefix I386-LINUX-CXX %s
Douglas Gregore6d6e512011-01-12 21:19:25 +00002448//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002449// I386-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002450// I386-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002451// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002452// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
2453// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
2454// I386-LINUX:#define __CHAR_BIT__ 8
2455// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2456// I386-LINUX:#define __DBL_DIG__ 15
2457// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2458// I386-LINUX:#define __DBL_HAS_DENORM__ 1
2459// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
2460// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2461// I386-LINUX:#define __DBL_MANT_DIG__ 53
2462// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
2463// I386-LINUX:#define __DBL_MAX_EXP__ 1024
2464// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2465// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2466// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
2467// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002468// I386-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002469// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2470// I386-LINUX:#define __FLT_DIG__ 6
2471// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2472// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
2473// I386-LINUX:#define __FLT_HAS_DENORM__ 1
2474// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
2475// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2476// I386-LINUX:#define __FLT_MANT_DIG__ 24
2477// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
2478// I386-LINUX:#define __FLT_MAX_EXP__ 128
2479// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2480// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2481// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
2482// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2483// I386-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002484// I386-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002485// I386-LINUX:#define __INT16_FMTd__ "hd"
2486// I386-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002487// I386-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00002488// I386-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002489// I386-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002490// I386-LINUX:#define __INT32_FMTd__ "d"
2491// I386-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002492// I386-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002493// I386-LINUX:#define __INT32_TYPE__ int
2494// I386-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002495// I386-LINUX:#define __INT64_FMTd__ "lld"
2496// I386-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002497// I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002498// I386-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002499// I386-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002500// I386-LINUX:#define __INT8_FMTd__ "hhd"
2501// I386-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002502// I386-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002503// I386-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002504// I386-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002505// I386-LINUX:#define __INTMAX_FMTd__ "lld"
2506// I386-LINUX:#define __INTMAX_FMTi__ "lli"
Douglas Gregore6d6e512011-01-12 21:19:25 +00002507// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2508// I386-LINUX:#define __INTMAX_TYPE__ long long int
2509// I386-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002510// I386-LINUX:#define __INTPTR_FMTd__ "d"
2511// I386-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002512// I386-LINUX:#define __INTPTR_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002513// I386-LINUX:#define __INTPTR_TYPE__ int
2514// I386-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002515// I386-LINUX:#define __INT_FAST16_FMTd__ "hd"
2516// I386-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002517// I386-LINUX:#define __INT_FAST16_MAX__ 32767
2518// I386-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002519// I386-LINUX:#define __INT_FAST32_FMTd__ "d"
2520// I386-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002521// I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
2522// I386-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002523// I386-LINUX:#define __INT_FAST64_FMTd__ "lld"
2524// I386-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002525// I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
2526// I386-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002527// I386-LINUX:#define __INT_FAST8_FMTd__ "hhd"
2528// I386-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002529// I386-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002530// I386-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002531// I386-LINUX:#define __INT_LEAST16_FMTd__ "hd"
2532// I386-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002533// I386-LINUX:#define __INT_LEAST16_MAX__ 32767
2534// I386-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002535// I386-LINUX:#define __INT_LEAST32_FMTd__ "d"
2536// I386-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002537// I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
2538// I386-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002539// I386-LINUX:#define __INT_LEAST64_FMTd__ "lld"
2540// I386-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002541// I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2542// I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002543// I386-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
2544// I386-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002545// I386-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002546// I386-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002547// I386-LINUX:#define __INT_MAX__ 2147483647
2548// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2549// I386-LINUX:#define __LDBL_DIG__ 18
2550// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2551// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
2552// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
2553// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2554// I386-LINUX:#define __LDBL_MANT_DIG__ 64
2555// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2556// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
2557// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2558// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2559// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2560// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2561// I386-LINUX:#define __LITTLE_ENDIAN__ 1
2562// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2563// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002564// I386-LINUX-NOT:#define __LP64__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002565// I386-LINUX:#define __NO_MATH_INLINES 1
2566// I386-LINUX:#define __POINTER_WIDTH__ 32
2567// I386-LINUX:#define __PTRDIFF_TYPE__ int
2568// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002569// I386-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002570// I386-LINUX:#define __SCHAR_MAX__ 127
2571// I386-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002572// I386-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002573// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2574// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
2575// I386-LINUX:#define __SIZEOF_FLOAT__ 4
2576// I386-LINUX:#define __SIZEOF_INT__ 4
2577// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
2578// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
2579// I386-LINUX:#define __SIZEOF_LONG__ 4
2580// I386-LINUX:#define __SIZEOF_POINTER__ 4
2581// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2582// I386-LINUX:#define __SIZEOF_SHORT__ 2
2583// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
2584// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
2585// I386-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002586// I386-LINUX:#define __SIZE_MAX__ 4294967295U
Douglas Gregore6d6e512011-01-12 21:19:25 +00002587// I386-LINUX:#define __SIZE_TYPE__ unsigned int
2588// I386-LINUX:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002589// I386-LINUX-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00002590// I386-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002591// I386-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002592// I386-LINUX:#define __UINT16_TYPE__ unsigned short
2593// I386-LINUX:#define __UINT32_C_SUFFIX__ U
2594// I386-LINUX:#define __UINT32_MAX__ 4294967295U
2595// I386-LINUX:#define __UINT32_TYPE__ unsigned int
2596// I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
2597// I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
2598// I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002599// I386-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002600// I386-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002601// I386-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002602// I386-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002603// I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002604// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002605// I386-LINUX:#define __UINTMAX_WIDTH__ 64
2606// I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
2607// I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
2608// I386-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002609// I386-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002610// I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
2611// I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
2612// I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
2613// I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2614// I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002615// I386-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002616// I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002617// I386-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002618// I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
2619// I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
2620// I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
2621// I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2622// I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002623// I386-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002624// I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002625// I386-LINUX:#define __USER_LABEL_PREFIX__
2626// I386-LINUX:#define __WCHAR_MAX__ 2147483647
2627// I386-LINUX:#define __WCHAR_TYPE__ int
2628// I386-LINUX:#define __WCHAR_WIDTH__ 32
2629// I386-LINUX:#define __WINT_TYPE__ unsigned int
2630// I386-LINUX:#define __WINT_WIDTH__ 32
2631// I386-LINUX:#define __i386 1
2632// I386-LINUX:#define __i386__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00002633// I386-LINUX:#define i386 1
2634//
James Y Knightc97efa42016-02-11 16:51:29 +00002635// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD %s
Richard Smith59139022016-09-30 22:41:36 +00002636// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=i386-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD -check-prefix I386-NETBSD-CXX %s
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002637//
2638// I386-NETBSD-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002639// I386-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002640// I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2641// I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
2642// I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
2643// I386-NETBSD:#define __CHAR_BIT__ 8
2644// I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2645// I386-NETBSD:#define __DBL_DIG__ 15
2646// I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2647// I386-NETBSD:#define __DBL_HAS_DENORM__ 1
2648// I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
2649// I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2650// I386-NETBSD:#define __DBL_MANT_DIG__ 53
2651// I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
2652// I386-NETBSD:#define __DBL_MAX_EXP__ 1024
2653// I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2654// I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2655// I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2656// I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002657// I386-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002658// I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2659// I386-NETBSD:#define __FLT_DIG__ 6
2660// I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2661// I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
2662// I386-NETBSD:#define __FLT_HAS_DENORM__ 1
2663// I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
2664// I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2665// I386-NETBSD:#define __FLT_MANT_DIG__ 24
2666// I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
2667// I386-NETBSD:#define __FLT_MAX_EXP__ 128
2668// I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2669// I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2670// I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
2671// I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2672// I386-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002673// I386-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002674// I386-NETBSD:#define __INT16_FMTd__ "hd"
2675// I386-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002676// I386-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002677// I386-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002678// I386-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002679// I386-NETBSD:#define __INT32_FMTd__ "d"
2680// I386-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002681// I386-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002682// I386-NETBSD:#define __INT32_TYPE__ int
2683// I386-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002684// I386-NETBSD:#define __INT64_FMTd__ "lld"
2685// I386-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002686// I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002687// I386-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002688// I386-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002689// I386-NETBSD:#define __INT8_FMTd__ "hhd"
2690// I386-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002691// I386-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002692// I386-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002693// I386-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002694// I386-NETBSD:#define __INTMAX_FMTd__ "lld"
2695// I386-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002696// I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2697// I386-NETBSD:#define __INTMAX_TYPE__ long long int
2698// I386-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002699// I386-NETBSD:#define __INTPTR_FMTd__ "d"
2700// I386-NETBSD:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002701// I386-NETBSD:#define __INTPTR_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002702// I386-NETBSD:#define __INTPTR_TYPE__ int
2703// I386-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002704// I386-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2705// I386-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002706// I386-NETBSD:#define __INT_FAST16_MAX__ 32767
2707// I386-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002708// I386-NETBSD:#define __INT_FAST32_FMTd__ "d"
2709// I386-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002710// I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2711// I386-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002712// I386-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2713// I386-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002714// I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2715// I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002716// I386-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2717// I386-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002718// I386-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002719// I386-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002720// I386-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2721// I386-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002722// I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
2723// I386-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002724// I386-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2725// I386-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002726// I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2727// I386-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002728// I386-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2729// I386-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002730// I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2731// I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002732// I386-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2733// I386-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002734// I386-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002735// I386-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002736// I386-NETBSD:#define __INT_MAX__ 2147483647
2737// I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2738// I386-NETBSD:#define __LDBL_DIG__ 18
2739// I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2740// I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
2741// I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2742// I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2743// I386-NETBSD:#define __LDBL_MANT_DIG__ 64
2744// I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
2745// I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
2746// I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2747// I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
2748// I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
2749// I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2750// I386-NETBSD:#define __LITTLE_ENDIAN__ 1
2751// I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2752// I386-NETBSD:#define __LONG_MAX__ 2147483647L
2753// I386-NETBSD-NOT:#define __LP64__
2754// I386-NETBSD:#define __NO_MATH_INLINES 1
2755// I386-NETBSD:#define __POINTER_WIDTH__ 32
2756// I386-NETBSD:#define __PTRDIFF_TYPE__ int
2757// I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002758// I386-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002759// I386-NETBSD:#define __SCHAR_MAX__ 127
2760// I386-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002761// I386-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002762// I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2763// I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
2764// I386-NETBSD:#define __SIZEOF_FLOAT__ 4
2765// I386-NETBSD:#define __SIZEOF_INT__ 4
2766// I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
2767// I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2768// I386-NETBSD:#define __SIZEOF_LONG__ 4
2769// I386-NETBSD:#define __SIZEOF_POINTER__ 4
2770// I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2771// I386-NETBSD:#define __SIZEOF_SHORT__ 2
2772// I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
2773// I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2774// I386-NETBSD:#define __SIZEOF_WINT_T__ 4
2775// I386-NETBSD:#define __SIZE_MAX__ 4294967295U
2776// I386-NETBSD:#define __SIZE_TYPE__ unsigned int
2777// I386-NETBSD:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002778// I386-NETBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
James Y Knightc97efa42016-02-11 16:51:29 +00002779// I386-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002780// I386-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002781// I386-NETBSD:#define __UINT16_TYPE__ unsigned short
2782// I386-NETBSD:#define __UINT32_C_SUFFIX__ U
2783// I386-NETBSD:#define __UINT32_MAX__ 4294967295U
2784// I386-NETBSD:#define __UINT32_TYPE__ unsigned int
2785// I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2786// I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2787// I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002788// I386-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002789// I386-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002790// I386-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002791// I386-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002792// I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002793// I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002794// I386-NETBSD:#define __UINTMAX_WIDTH__ 64
2795// I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
2796// I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
2797// I386-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002798// I386-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002799// I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2800// I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2801// I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2802// I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2803// I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002804// I386-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002805// I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002806// I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002807// I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2808// I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2809// I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2810// I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2811// I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002812// I386-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002813// I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002814// I386-NETBSD:#define __USER_LABEL_PREFIX__
2815// I386-NETBSD:#define __WCHAR_MAX__ 2147483647
2816// I386-NETBSD:#define __WCHAR_TYPE__ int
2817// I386-NETBSD:#define __WCHAR_WIDTH__ 32
2818// I386-NETBSD:#define __WINT_TYPE__ int
2819// I386-NETBSD:#define __WINT_WIDTH__ 32
2820// I386-NETBSD:#define __i386 1
2821// I386-NETBSD:#define __i386__ 1
2822// I386-NETBSD:#define i386 1
2823//
James Y Knightc97efa42016-02-11 16:51:29 +00002824// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd -target-feature +sse2 < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD-SSE %s
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002825// I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
James Y Knightc97efa42016-02-11 16:51:29 +00002826// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd6 < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD6 %s
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002827// I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002828// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd6 -target-feature +sse2 < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD6-SSE %s
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002829// I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
2830
James Y Knightc97efa42016-02-11 16:51:29 +00002831// RUN: %clang_cc1 -E -dM -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2832// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2833// RUN: %clang_cc1 -E -dM -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2834// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2835// I386-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00002836
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002837//
Richard Smith59139022016-09-30 22:41:36 +00002838// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-C %s
2839// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-CXX %s
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002840//
2841// MIPS32BE:#define MIPSEB 1
2842// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002843// MIPS32BE-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002844// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00002845// MIPS32BE:#define _MIPS_ARCH "mips32r2"
2846// MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00002847// MIPS32BE:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002848// MIPS32BE:#define _MIPS_SIM _ABIO32
2849// MIPS32BE:#define _MIPS_SZINT 32
2850// MIPS32BE:#define _MIPS_SZLONG 32
2851// MIPS32BE:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00002852// MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00002853// MIPS32BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002854// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002855// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
2856// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
2857// MIPS32BE:#define __CHAR_BIT__ 8
2858// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
2859// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2860// MIPS32BE:#define __DBL_DIG__ 15
2861// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
2862// MIPS32BE:#define __DBL_HAS_DENORM__ 1
2863// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
2864// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
2865// MIPS32BE:#define __DBL_MANT_DIG__ 53
2866// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
2867// MIPS32BE:#define __DBL_MAX_EXP__ 1024
2868// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
2869// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
2870// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
2871// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002872// MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002873// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2874// MIPS32BE:#define __FLT_DIG__ 6
2875// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
2876// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
2877// MIPS32BE:#define __FLT_HAS_DENORM__ 1
2878// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
2879// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
2880// MIPS32BE:#define __FLT_MANT_DIG__ 24
2881// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
2882// MIPS32BE:#define __FLT_MAX_EXP__ 128
2883// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
2884// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
2885// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
2886// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
2887// MIPS32BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002888// MIPS32BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002889// MIPS32BE:#define __INT16_FMTd__ "hd"
2890// MIPS32BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002891// MIPS32BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002892// MIPS32BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002893// MIPS32BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002894// MIPS32BE:#define __INT32_FMTd__ "d"
2895// MIPS32BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002896// MIPS32BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002897// MIPS32BE:#define __INT32_TYPE__ int
2898// MIPS32BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002899// MIPS32BE:#define __INT64_FMTd__ "lld"
2900// MIPS32BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002901// MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002902// MIPS32BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002903// MIPS32BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002904// MIPS32BE:#define __INT8_FMTd__ "hhd"
2905// MIPS32BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002906// MIPS32BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002907// MIPS32BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002908// MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002909// MIPS32BE:#define __INTMAX_FMTd__ "lld"
2910// MIPS32BE:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002911// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
2912// MIPS32BE:#define __INTMAX_TYPE__ long long int
2913// MIPS32BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002914// MIPS32BE:#define __INTPTR_FMTd__ "ld"
2915// MIPS32BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002916// MIPS32BE:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002917// MIPS32BE:#define __INTPTR_TYPE__ long int
2918// MIPS32BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002919// MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
2920// MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002921// MIPS32BE:#define __INT_FAST16_MAX__ 32767
2922// MIPS32BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002923// MIPS32BE:#define __INT_FAST32_FMTd__ "d"
2924// MIPS32BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002925// MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
2926// MIPS32BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002927// MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
2928// MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002929// MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
2930// MIPS32BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002931// MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
2932// MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002933// MIPS32BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002934// MIPS32BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002935// MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
2936// MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002937// MIPS32BE:#define __INT_LEAST16_MAX__ 32767
2938// MIPS32BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002939// MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
2940// MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002941// MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
2942// MIPS32BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002943// MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
2944// MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002945// MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2946// MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002947// MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
2948// MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002949// MIPS32BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002950// MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002951// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002952// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002953// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002954// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002955// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
2956// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
2957// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
2958// MIPS32BE:#define __LDBL_MANT_DIG__ 53
2959// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
2960// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002961// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002962// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
2963// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002964// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002965// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
2966// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002967// MIPS32BE-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002968// MIPS32BE:#define __MIPSEB 1
2969// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002970// MIPS32BE:#define __POINTER_WIDTH__ 32
2971// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
2972// MIPS32BE:#define __PTRDIFF_TYPE__ int
2973// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002974// MIPS32BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002975// MIPS32BE:#define __SCHAR_MAX__ 127
2976// MIPS32BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002977// MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002978// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
2979// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
2980// MIPS32BE:#define __SIZEOF_FLOAT__ 4
2981// MIPS32BE:#define __SIZEOF_INT__ 4
2982// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
2983// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
2984// MIPS32BE:#define __SIZEOF_LONG__ 4
2985// MIPS32BE:#define __SIZEOF_POINTER__ 4
2986// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
2987// MIPS32BE:#define __SIZEOF_SHORT__ 2
2988// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
2989// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
2990// MIPS32BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002991// MIPS32BE:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002992// MIPS32BE:#define __SIZE_TYPE__ unsigned int
2993// MIPS32BE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002994// MIPS32BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002995// MIPS32BE:#define __STDC_HOSTED__ 0
Richard Smith59139022016-09-30 22:41:36 +00002996// MIPS32BE-C:#define __STDC_VERSION__ 201112L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002997// MIPS32BE:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002998// MIPS32BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002999// MIPS32BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003000// MIPS32BE:#define __UINT16_TYPE__ unsigned short
3001// MIPS32BE:#define __UINT32_C_SUFFIX__ U
3002// MIPS32BE:#define __UINT32_MAX__ 4294967295U
3003// MIPS32BE:#define __UINT32_TYPE__ unsigned int
3004// MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
3005// MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
3006// MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003007// MIPS32BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003008// MIPS32BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003009// MIPS32BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003010// MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003011// MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003012// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003013// MIPS32BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003014// MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003015// MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003016// MIPS32BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003017// MIPS32BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003018// MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
3019// MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
3020// MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
3021// MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3022// MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003023// MIPS32BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003024// MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003025// MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003026// MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
3027// MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
3028// MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
3029// MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3030// MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003031// MIPS32BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003032// MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003033// MIPS32BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003034// MIPS32BE:#define __WCHAR_MAX__ 2147483647
3035// MIPS32BE:#define __WCHAR_TYPE__ int
3036// MIPS32BE:#define __WCHAR_WIDTH__ 32
3037// MIPS32BE:#define __WINT_TYPE__ int
3038// MIPS32BE:#define __WINT_WIDTH__ 32
3039// MIPS32BE:#define __clang__ 1
3040// MIPS32BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003041// MIPS32BE:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003042// MIPS32BE:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003043// MIPS32BE:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003044// MIPS32BE:#define __mips_hard_float 1
3045// MIPS32BE:#define __mips_o32 1
3046// MIPS32BE:#define _mips 1
3047// MIPS32BE:#define mips 1
3048//
James Y Knightc97efa42016-02-11 16:51:29 +00003049// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mipsel-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32EL %s
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003050//
3051// MIPS32EL:#define MIPSEL 1
3052// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003053// MIPS32EL-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003054// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003055// MIPS32EL:#define _MIPS_ARCH "mips32r2"
3056// MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003057// MIPS32EL:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003058// MIPS32EL:#define _MIPS_SIM _ABIO32
3059// MIPS32EL:#define _MIPS_SZINT 32
3060// MIPS32EL:#define _MIPS_SZLONG 32
3061// MIPS32EL:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003062// MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003063// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003064// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
3065// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
3066// MIPS32EL:#define __CHAR_BIT__ 8
3067// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
3068// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3069// MIPS32EL:#define __DBL_DIG__ 15
3070// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
3071// MIPS32EL:#define __DBL_HAS_DENORM__ 1
3072// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
3073// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
3074// MIPS32EL:#define __DBL_MANT_DIG__ 53
3075// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
3076// MIPS32EL:#define __DBL_MAX_EXP__ 1024
3077// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
3078// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
3079// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
3080// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003081// MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003082// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3083// MIPS32EL:#define __FLT_DIG__ 6
3084// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
3085// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
3086// MIPS32EL:#define __FLT_HAS_DENORM__ 1
3087// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
3088// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
3089// MIPS32EL:#define __FLT_MANT_DIG__ 24
3090// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
3091// MIPS32EL:#define __FLT_MAX_EXP__ 128
3092// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
3093// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
3094// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
3095// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
3096// MIPS32EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003097// MIPS32EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003098// MIPS32EL:#define __INT16_FMTd__ "hd"
3099// MIPS32EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003100// MIPS32EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003101// MIPS32EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003102// MIPS32EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003103// MIPS32EL:#define __INT32_FMTd__ "d"
3104// MIPS32EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003105// MIPS32EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003106// MIPS32EL:#define __INT32_TYPE__ int
3107// MIPS32EL:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003108// MIPS32EL:#define __INT64_FMTd__ "lld"
3109// MIPS32EL:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003110// MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003111// MIPS32EL:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003112// MIPS32EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003113// MIPS32EL:#define __INT8_FMTd__ "hhd"
3114// MIPS32EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003115// MIPS32EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003116// MIPS32EL:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003117// MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003118// MIPS32EL:#define __INTMAX_FMTd__ "lld"
3119// MIPS32EL:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003120// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
3121// MIPS32EL:#define __INTMAX_TYPE__ long long int
3122// MIPS32EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003123// MIPS32EL:#define __INTPTR_FMTd__ "ld"
3124// MIPS32EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003125// MIPS32EL:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003126// MIPS32EL:#define __INTPTR_TYPE__ long int
3127// MIPS32EL:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003128// MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
3129// MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003130// MIPS32EL:#define __INT_FAST16_MAX__ 32767
3131// MIPS32EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003132// MIPS32EL:#define __INT_FAST32_FMTd__ "d"
3133// MIPS32EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003134// MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
3135// MIPS32EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003136// MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
3137// MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003138// MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
3139// MIPS32EL:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003140// MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
3141// MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003142// MIPS32EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003143// MIPS32EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003144// MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
3145// MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003146// MIPS32EL:#define __INT_LEAST16_MAX__ 32767
3147// MIPS32EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003148// MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
3149// MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003150// MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
3151// MIPS32EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003152// MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
3153// MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003154// MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3155// MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003156// MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
3157// MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003158// MIPS32EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003159// MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003160// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003161// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003162// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003163// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003164// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
3165// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
3166// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
3167// MIPS32EL:#define __LDBL_MANT_DIG__ 53
3168// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
3169// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003170// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003171// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
3172// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003173// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00003174// MIPS32EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003175// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
3176// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003177// MIPS32EL-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003178// MIPS32EL:#define __MIPSEL 1
3179// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003180// MIPS32EL:#define __POINTER_WIDTH__ 32
3181// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
3182// MIPS32EL:#define __PTRDIFF_TYPE__ int
3183// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003184// MIPS32EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003185// MIPS32EL:#define __SCHAR_MAX__ 127
3186// MIPS32EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003187// MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003188// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
3189// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
3190// MIPS32EL:#define __SIZEOF_FLOAT__ 4
3191// MIPS32EL:#define __SIZEOF_INT__ 4
3192// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
3193// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
3194// MIPS32EL:#define __SIZEOF_LONG__ 4
3195// MIPS32EL:#define __SIZEOF_POINTER__ 4
3196// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
3197// MIPS32EL:#define __SIZEOF_SHORT__ 2
3198// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
3199// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
3200// MIPS32EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003201// MIPS32EL:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003202// MIPS32EL:#define __SIZE_TYPE__ unsigned int
3203// MIPS32EL:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003204// MIPS32EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003205// MIPS32EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003206// MIPS32EL:#define __UINT16_TYPE__ unsigned short
3207// MIPS32EL:#define __UINT32_C_SUFFIX__ U
3208// MIPS32EL:#define __UINT32_MAX__ 4294967295U
3209// MIPS32EL:#define __UINT32_TYPE__ unsigned int
3210// MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
3211// MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
3212// MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003213// MIPS32EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003214// MIPS32EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003215// MIPS32EL:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003216// MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003217// MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003218// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003219// MIPS32EL:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003220// MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003221// MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003222// MIPS32EL:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003223// MIPS32EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003224// MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
3225// MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
3226// MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
3227// MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3228// MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003229// MIPS32EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003230// MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003231// MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003232// MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
3233// MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
3234// MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
3235// MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3236// MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003237// MIPS32EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003238// MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003239// MIPS32EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003240// MIPS32EL:#define __WCHAR_MAX__ 2147483647
3241// MIPS32EL:#define __WCHAR_TYPE__ int
3242// MIPS32EL:#define __WCHAR_WIDTH__ 32
3243// MIPS32EL:#define __WINT_TYPE__ int
3244// MIPS32EL:#define __WINT_WIDTH__ 32
3245// MIPS32EL:#define __clang__ 1
3246// MIPS32EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003247// MIPS32EL:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003248// MIPS32EL:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003249// MIPS32EL:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003250// MIPS32EL:#define __mips_hard_float 1
3251// MIPS32EL:#define __mips_o32 1
3252// MIPS32EL:#define _mips 1
3253// MIPS32EL:#define mips 1
3254//
Simon Atanasyan495523e42015-01-22 23:16:48 +00003255// RUN: %clang_cc1 -E -dM -ffreestanding \
3256// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
Richard Smith59139022016-09-30 22:41:36 +00003257// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-C %s
3258// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding \
3259// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
3260// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-CXX %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003261//
3262// MIPSN32BE: #define MIPSEB 1
3263// MIPSN32BE: #define _ABIN32 2
3264// MIPSN32BE: #define _ILP32 1
3265// MIPSN32BE: #define _MIPSEB 1
3266// MIPSN32BE: #define _MIPS_ARCH "mips64r2"
3267// MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
3268// MIPSN32BE: #define _MIPS_FPSET 32
3269// MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
3270// MIPSN32BE: #define _MIPS_SIM _ABIN32
3271// MIPSN32BE: #define _MIPS_SZINT 32
3272// MIPSN32BE: #define _MIPS_SZLONG 32
3273// MIPSN32BE: #define _MIPS_SZPTR 32
3274// MIPSN32BE: #define __ATOMIC_ACQUIRE 2
3275// MIPSN32BE: #define __ATOMIC_ACQ_REL 4
3276// MIPSN32BE: #define __ATOMIC_CONSUME 1
3277// MIPSN32BE: #define __ATOMIC_RELAXED 0
3278// MIPSN32BE: #define __ATOMIC_RELEASE 3
3279// MIPSN32BE: #define __ATOMIC_SEQ_CST 5
3280// MIPSN32BE: #define __BIG_ENDIAN__ 1
3281// MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3282// MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
3283// MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
3284// MIPSN32BE: #define __CHAR_BIT__ 8
3285// MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
3286// MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3287// MIPSN32BE: #define __DBL_DIG__ 15
3288// MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
3289// MIPSN32BE: #define __DBL_HAS_DENORM__ 1
3290// MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
3291// MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
3292// MIPSN32BE: #define __DBL_MANT_DIG__ 53
3293// MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
3294// MIPSN32BE: #define __DBL_MAX_EXP__ 1024
3295// MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
3296// MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
3297// MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
3298// MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003299// MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003300// MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
3301// MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3302// MIPSN32BE: #define __FLT_DIG__ 6
3303// MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
3304// MIPSN32BE: #define __FLT_EVAL_METHOD__ 0
3305// MIPSN32BE: #define __FLT_HAS_DENORM__ 1
3306// MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
3307// MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
3308// MIPSN32BE: #define __FLT_MANT_DIG__ 24
3309// MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
3310// MIPSN32BE: #define __FLT_MAX_EXP__ 128
3311// MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
3312// MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
3313// MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
3314// MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
3315// MIPSN32BE: #define __FLT_RADIX__ 2
3316// MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3317// MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3318// MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3319// MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3320// MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3321// MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3322// MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3323// MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3324// MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3325// MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3326// MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3327// MIPSN32BE: #define __GNUC_MINOR__ 2
3328// MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
Richard Smith59139022016-09-30 22:41:36 +00003329// MIPSN32BE-C: #define __GNUC_STDC_INLINE__ 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003330// MIPSN32BE: #define __GNUC__ 4
3331// MIPSN32BE: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003332// MIPSN32BE: #define __ILP32__ 1
3333// MIPSN32BE: #define __INT16_C_SUFFIX__
3334// MIPSN32BE: #define __INT16_FMTd__ "hd"
3335// MIPSN32BE: #define __INT16_FMTi__ "hi"
3336// MIPSN32BE: #define __INT16_MAX__ 32767
3337// MIPSN32BE: #define __INT16_TYPE__ short
3338// MIPSN32BE: #define __INT32_C_SUFFIX__
3339// MIPSN32BE: #define __INT32_FMTd__ "d"
3340// MIPSN32BE: #define __INT32_FMTi__ "i"
3341// MIPSN32BE: #define __INT32_MAX__ 2147483647
3342// MIPSN32BE: #define __INT32_TYPE__ int
3343// MIPSN32BE: #define __INT64_C_SUFFIX__ LL
3344// MIPSN32BE: #define __INT64_FMTd__ "lld"
3345// MIPSN32BE: #define __INT64_FMTi__ "lli"
3346// MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
3347// MIPSN32BE: #define __INT64_TYPE__ long long int
3348// MIPSN32BE: #define __INT8_C_SUFFIX__
3349// MIPSN32BE: #define __INT8_FMTd__ "hhd"
3350// MIPSN32BE: #define __INT8_FMTi__ "hhi"
3351// MIPSN32BE: #define __INT8_MAX__ 127
3352// MIPSN32BE: #define __INT8_TYPE__ signed char
3353// MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
3354// MIPSN32BE: #define __INTMAX_FMTd__ "lld"
3355// MIPSN32BE: #define __INTMAX_FMTi__ "lli"
3356// MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
3357// MIPSN32BE: #define __INTMAX_TYPE__ long long int
3358// MIPSN32BE: #define __INTMAX_WIDTH__ 64
3359// MIPSN32BE: #define __INTPTR_FMTd__ "ld"
3360// MIPSN32BE: #define __INTPTR_FMTi__ "li"
3361// MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
3362// MIPSN32BE: #define __INTPTR_TYPE__ long int
3363// MIPSN32BE: #define __INTPTR_WIDTH__ 32
3364// MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
3365// MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
3366// MIPSN32BE: #define __INT_FAST16_MAX__ 32767
3367// MIPSN32BE: #define __INT_FAST16_TYPE__ short
3368// MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
3369// MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
3370// MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
3371// MIPSN32BE: #define __INT_FAST32_TYPE__ int
3372// MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
3373// MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
3374// MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
3375// MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
3376// MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
3377// MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
3378// MIPSN32BE: #define __INT_FAST8_MAX__ 127
3379// MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
3380// MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
3381// MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
3382// MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
3383// MIPSN32BE: #define __INT_LEAST16_TYPE__ short
3384// MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
3385// MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
3386// MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
3387// MIPSN32BE: #define __INT_LEAST32_TYPE__ int
3388// MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
3389// MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
3390// MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3391// MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
3392// MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
3393// MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
3394// MIPSN32BE: #define __INT_LEAST8_MAX__ 127
3395// MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
3396// MIPSN32BE: #define __INT_MAX__ 2147483647
3397// MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3398// MIPSN32BE: #define __LDBL_DIG__ 33
3399// MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3400// MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
3401// MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
3402// MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
3403// MIPSN32BE: #define __LDBL_MANT_DIG__ 113
3404// MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
3405// MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
3406// MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3407// MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
3408// MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
3409// MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3410// MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
3411// MIPSN32BE: #define __LONG_MAX__ 2147483647L
3412// MIPSN32BE: #define __MIPSEB 1
3413// MIPSN32BE: #define __MIPSEB__ 1
3414// MIPSN32BE: #define __NO_INLINE__ 1
3415// MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
3416// MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
3417// MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
3418// MIPSN32BE: #define __POINTER_WIDTH__ 32
3419// MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
3420// MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
3421// MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
3422// MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
3423// MIPSN32BE: #define __PTRDIFF_TYPE__ int
3424// MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
3425// MIPSN32BE: #define __REGISTER_PREFIX__
3426// MIPSN32BE: #define __SCHAR_MAX__ 127
3427// MIPSN32BE: #define __SHRT_MAX__ 32767
3428// MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
3429// MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
3430// MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
3431// MIPSN32BE: #define __SIZEOF_FLOAT__ 4
3432// MIPSN32BE: #define __SIZEOF_INT__ 4
3433// MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
3434// MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
3435// MIPSN32BE: #define __SIZEOF_LONG__ 4
3436// MIPSN32BE: #define __SIZEOF_POINTER__ 4
3437// MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
3438// MIPSN32BE: #define __SIZEOF_SHORT__ 2
3439// MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
3440// MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
3441// MIPSN32BE: #define __SIZEOF_WINT_T__ 4
3442// MIPSN32BE: #define __SIZE_FMTX__ "X"
3443// MIPSN32BE: #define __SIZE_FMTo__ "o"
3444// MIPSN32BE: #define __SIZE_FMTu__ "u"
3445// MIPSN32BE: #define __SIZE_FMTx__ "x"
3446// MIPSN32BE: #define __SIZE_MAX__ 4294967295U
3447// MIPSN32BE: #define __SIZE_TYPE__ unsigned int
3448// MIPSN32BE: #define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003449// MIPSN32BE-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
Simon Atanasyan495523e42015-01-22 23:16:48 +00003450// MIPSN32BE: #define __STDC_HOSTED__ 0
3451// MIPSN32BE: #define __STDC_UTF_16__ 1
3452// MIPSN32BE: #define __STDC_UTF_32__ 1
Richard Smith59139022016-09-30 22:41:36 +00003453// MIPSN32BE-C: #define __STDC_VERSION__ 201112L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003454// MIPSN32BE: #define __STDC__ 1
3455// MIPSN32BE: #define __UINT16_C_SUFFIX__
3456// MIPSN32BE: #define __UINT16_FMTX__ "hX"
3457// MIPSN32BE: #define __UINT16_FMTo__ "ho"
3458// MIPSN32BE: #define __UINT16_FMTu__ "hu"
3459// MIPSN32BE: #define __UINT16_FMTx__ "hx"
3460// MIPSN32BE: #define __UINT16_MAX__ 65535
3461// MIPSN32BE: #define __UINT16_TYPE__ unsigned short
3462// MIPSN32BE: #define __UINT32_C_SUFFIX__ U
3463// MIPSN32BE: #define __UINT32_FMTX__ "X"
3464// MIPSN32BE: #define __UINT32_FMTo__ "o"
3465// MIPSN32BE: #define __UINT32_FMTu__ "u"
3466// MIPSN32BE: #define __UINT32_FMTx__ "x"
3467// MIPSN32BE: #define __UINT32_MAX__ 4294967295U
3468// MIPSN32BE: #define __UINT32_TYPE__ unsigned int
3469// MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
3470// MIPSN32BE: #define __UINT64_FMTX__ "llX"
3471// MIPSN32BE: #define __UINT64_FMTo__ "llo"
3472// MIPSN32BE: #define __UINT64_FMTu__ "llu"
3473// MIPSN32BE: #define __UINT64_FMTx__ "llx"
3474// MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
3475// MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
3476// MIPSN32BE: #define __UINT8_C_SUFFIX__
3477// MIPSN32BE: #define __UINT8_FMTX__ "hhX"
3478// MIPSN32BE: #define __UINT8_FMTo__ "hho"
3479// MIPSN32BE: #define __UINT8_FMTu__ "hhu"
3480// MIPSN32BE: #define __UINT8_FMTx__ "hhx"
3481// MIPSN32BE: #define __UINT8_MAX__ 255
3482// MIPSN32BE: #define __UINT8_TYPE__ unsigned char
3483// MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
3484// MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
3485// MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
3486// MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
3487// MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
3488// MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
3489// MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
3490// MIPSN32BE: #define __UINTMAX_WIDTH__ 64
3491// MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
3492// MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
3493// MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
3494// MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
3495// MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
3496// MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
3497// MIPSN32BE: #define __UINTPTR_WIDTH__ 32
3498// MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
3499// MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
3500// MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
3501// MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
3502// MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
3503// MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
3504// MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
3505// MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
3506// MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
3507// MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
3508// MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
3509// MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
3510// MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
3511// MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
3512// MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
3513// MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
3514// MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3515// MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
3516// MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
3517// MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
3518// MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
3519// MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
3520// MIPSN32BE: #define __UINT_FAST8_MAX__ 255
3521// MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
3522// MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
3523// MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
3524// MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
3525// MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
3526// MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
3527// MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
3528// MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
3529// MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
3530// MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
3531// MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
3532// MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
3533// MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
3534// MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
3535// MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
3536// MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
3537// MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
3538// MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3539// MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
3540// MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
3541// MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
3542// MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
3543// MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
3544// MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
3545// MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003546// MIPSN32BE: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003547// MIPSN32BE: #define __WCHAR_MAX__ 2147483647
3548// MIPSN32BE: #define __WCHAR_TYPE__ int
3549// MIPSN32BE: #define __WCHAR_WIDTH__ 32
3550// MIPSN32BE: #define __WINT_TYPE__ int
3551// MIPSN32BE: #define __WINT_WIDTH__ 32
3552// MIPSN32BE: #define __clang__ 1
3553// MIPSN32BE: #define __llvm__ 1
3554// MIPSN32BE: #define __mips 64
3555// MIPSN32BE: #define __mips64 1
3556// MIPSN32BE: #define __mips64__ 1
3557// MIPSN32BE: #define __mips__ 1
3558// MIPSN32BE: #define __mips_fpr 64
3559// MIPSN32BE: #define __mips_hard_float 1
3560// MIPSN32BE: #define __mips_isa_rev 2
3561// MIPSN32BE: #define __mips_n32 1
3562// MIPSN32BE: #define _mips 1
3563// MIPSN32BE: #define mips 1
3564//
3565// RUN: %clang_cc1 -E -dM -ffreestanding \
3566// RUN: -triple=mips64el-none-none -target-abi n32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00003567// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003568//
3569// MIPSN32EL: #define MIPSEL 1
3570// MIPSN32EL: #define _ABIN32 2
3571// MIPSN32EL: #define _ILP32 1
3572// MIPSN32EL: #define _MIPSEL 1
3573// MIPSN32EL: #define _MIPS_ARCH "mips64r2"
3574// MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
3575// MIPSN32EL: #define _MIPS_FPSET 32
3576// MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
3577// MIPSN32EL: #define _MIPS_SIM _ABIN32
3578// MIPSN32EL: #define _MIPS_SZINT 32
3579// MIPSN32EL: #define _MIPS_SZLONG 32
3580// MIPSN32EL: #define _MIPS_SZPTR 32
3581// MIPSN32EL: #define __ATOMIC_ACQUIRE 2
3582// MIPSN32EL: #define __ATOMIC_ACQ_REL 4
3583// MIPSN32EL: #define __ATOMIC_CONSUME 1
3584// MIPSN32EL: #define __ATOMIC_RELAXED 0
3585// MIPSN32EL: #define __ATOMIC_RELEASE 3
3586// MIPSN32EL: #define __ATOMIC_SEQ_CST 5
3587// MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3588// MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
3589// MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
3590// MIPSN32EL: #define __CHAR_BIT__ 8
3591// MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
3592// MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3593// MIPSN32EL: #define __DBL_DIG__ 15
3594// MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
3595// MIPSN32EL: #define __DBL_HAS_DENORM__ 1
3596// MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
3597// MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
3598// MIPSN32EL: #define __DBL_MANT_DIG__ 53
3599// MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
3600// MIPSN32EL: #define __DBL_MAX_EXP__ 1024
3601// MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
3602// MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
3603// MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
3604// MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003605// MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003606// MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
3607// MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3608// MIPSN32EL: #define __FLT_DIG__ 6
3609// MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
3610// MIPSN32EL: #define __FLT_EVAL_METHOD__ 0
3611// MIPSN32EL: #define __FLT_HAS_DENORM__ 1
3612// MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
3613// MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
3614// MIPSN32EL: #define __FLT_MANT_DIG__ 24
3615// MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
3616// MIPSN32EL: #define __FLT_MAX_EXP__ 128
3617// MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
3618// MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
3619// MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
3620// MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
3621// MIPSN32EL: #define __FLT_RADIX__ 2
3622// MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3623// MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3624// MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3625// MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3626// MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3627// MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3628// MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3629// MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3630// MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3631// MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3632// MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3633// MIPSN32EL: #define __GNUC_MINOR__ 2
3634// MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
3635// MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
3636// MIPSN32EL: #define __GNUC__ 4
3637// MIPSN32EL: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003638// MIPSN32EL: #define __ILP32__ 1
3639// MIPSN32EL: #define __INT16_C_SUFFIX__
3640// MIPSN32EL: #define __INT16_FMTd__ "hd"
3641// MIPSN32EL: #define __INT16_FMTi__ "hi"
3642// MIPSN32EL: #define __INT16_MAX__ 32767
3643// MIPSN32EL: #define __INT16_TYPE__ short
3644// MIPSN32EL: #define __INT32_C_SUFFIX__
3645// MIPSN32EL: #define __INT32_FMTd__ "d"
3646// MIPSN32EL: #define __INT32_FMTi__ "i"
3647// MIPSN32EL: #define __INT32_MAX__ 2147483647
3648// MIPSN32EL: #define __INT32_TYPE__ int
3649// MIPSN32EL: #define __INT64_C_SUFFIX__ LL
3650// MIPSN32EL: #define __INT64_FMTd__ "lld"
3651// MIPSN32EL: #define __INT64_FMTi__ "lli"
3652// MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
3653// MIPSN32EL: #define __INT64_TYPE__ long long int
3654// MIPSN32EL: #define __INT8_C_SUFFIX__
3655// MIPSN32EL: #define __INT8_FMTd__ "hhd"
3656// MIPSN32EL: #define __INT8_FMTi__ "hhi"
3657// MIPSN32EL: #define __INT8_MAX__ 127
3658// MIPSN32EL: #define __INT8_TYPE__ signed char
3659// MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
3660// MIPSN32EL: #define __INTMAX_FMTd__ "lld"
3661// MIPSN32EL: #define __INTMAX_FMTi__ "lli"
3662// MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
3663// MIPSN32EL: #define __INTMAX_TYPE__ long long int
3664// MIPSN32EL: #define __INTMAX_WIDTH__ 64
3665// MIPSN32EL: #define __INTPTR_FMTd__ "ld"
3666// MIPSN32EL: #define __INTPTR_FMTi__ "li"
3667// MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
3668// MIPSN32EL: #define __INTPTR_TYPE__ long int
3669// MIPSN32EL: #define __INTPTR_WIDTH__ 32
3670// MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
3671// MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
3672// MIPSN32EL: #define __INT_FAST16_MAX__ 32767
3673// MIPSN32EL: #define __INT_FAST16_TYPE__ short
3674// MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
3675// MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
3676// MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
3677// MIPSN32EL: #define __INT_FAST32_TYPE__ int
3678// MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
3679// MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
3680// MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
3681// MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
3682// MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
3683// MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
3684// MIPSN32EL: #define __INT_FAST8_MAX__ 127
3685// MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
3686// MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
3687// MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
3688// MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
3689// MIPSN32EL: #define __INT_LEAST16_TYPE__ short
3690// MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
3691// MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
3692// MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
3693// MIPSN32EL: #define __INT_LEAST32_TYPE__ int
3694// MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
3695// MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
3696// MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3697// MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
3698// MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
3699// MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
3700// MIPSN32EL: #define __INT_LEAST8_MAX__ 127
3701// MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
3702// MIPSN32EL: #define __INT_MAX__ 2147483647
3703// MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3704// MIPSN32EL: #define __LDBL_DIG__ 33
3705// MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3706// MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
3707// MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
3708// MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
3709// MIPSN32EL: #define __LDBL_MANT_DIG__ 113
3710// MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
3711// MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
3712// MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3713// MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
3714// MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
3715// MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3716// MIPSN32EL: #define __LITTLE_ENDIAN__ 1
3717// MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
3718// MIPSN32EL: #define __LONG_MAX__ 2147483647L
3719// MIPSN32EL: #define __MIPSEL 1
3720// MIPSN32EL: #define __MIPSEL__ 1
3721// MIPSN32EL: #define __NO_INLINE__ 1
3722// MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
3723// MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
3724// MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
3725// MIPSN32EL: #define __POINTER_WIDTH__ 32
3726// MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
3727// MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
3728// MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
3729// MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
3730// MIPSN32EL: #define __PTRDIFF_TYPE__ int
3731// MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
3732// MIPSN32EL: #define __REGISTER_PREFIX__
3733// MIPSN32EL: #define __SCHAR_MAX__ 127
3734// MIPSN32EL: #define __SHRT_MAX__ 32767
3735// MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
3736// MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
3737// MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
3738// MIPSN32EL: #define __SIZEOF_FLOAT__ 4
3739// MIPSN32EL: #define __SIZEOF_INT__ 4
3740// MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
3741// MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
3742// MIPSN32EL: #define __SIZEOF_LONG__ 4
3743// MIPSN32EL: #define __SIZEOF_POINTER__ 4
3744// MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
3745// MIPSN32EL: #define __SIZEOF_SHORT__ 2
3746// MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
3747// MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
3748// MIPSN32EL: #define __SIZEOF_WINT_T__ 4
3749// MIPSN32EL: #define __SIZE_FMTX__ "X"
3750// MIPSN32EL: #define __SIZE_FMTo__ "o"
3751// MIPSN32EL: #define __SIZE_FMTu__ "u"
3752// MIPSN32EL: #define __SIZE_FMTx__ "x"
3753// MIPSN32EL: #define __SIZE_MAX__ 4294967295U
3754// MIPSN32EL: #define __SIZE_TYPE__ unsigned int
3755// MIPSN32EL: #define __SIZE_WIDTH__ 32
3756// MIPSN32EL: #define __STDC_HOSTED__ 0
3757// MIPSN32EL: #define __STDC_UTF_16__ 1
3758// MIPSN32EL: #define __STDC_UTF_32__ 1
3759// MIPSN32EL: #define __STDC_VERSION__ 201112L
3760// MIPSN32EL: #define __STDC__ 1
3761// MIPSN32EL: #define __UINT16_C_SUFFIX__
3762// MIPSN32EL: #define __UINT16_FMTX__ "hX"
3763// MIPSN32EL: #define __UINT16_FMTo__ "ho"
3764// MIPSN32EL: #define __UINT16_FMTu__ "hu"
3765// MIPSN32EL: #define __UINT16_FMTx__ "hx"
3766// MIPSN32EL: #define __UINT16_MAX__ 65535
3767// MIPSN32EL: #define __UINT16_TYPE__ unsigned short
3768// MIPSN32EL: #define __UINT32_C_SUFFIX__ U
3769// MIPSN32EL: #define __UINT32_FMTX__ "X"
3770// MIPSN32EL: #define __UINT32_FMTo__ "o"
3771// MIPSN32EL: #define __UINT32_FMTu__ "u"
3772// MIPSN32EL: #define __UINT32_FMTx__ "x"
3773// MIPSN32EL: #define __UINT32_MAX__ 4294967295U
3774// MIPSN32EL: #define __UINT32_TYPE__ unsigned int
3775// MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
3776// MIPSN32EL: #define __UINT64_FMTX__ "llX"
3777// MIPSN32EL: #define __UINT64_FMTo__ "llo"
3778// MIPSN32EL: #define __UINT64_FMTu__ "llu"
3779// MIPSN32EL: #define __UINT64_FMTx__ "llx"
3780// MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
3781// MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
3782// MIPSN32EL: #define __UINT8_C_SUFFIX__
3783// MIPSN32EL: #define __UINT8_FMTX__ "hhX"
3784// MIPSN32EL: #define __UINT8_FMTo__ "hho"
3785// MIPSN32EL: #define __UINT8_FMTu__ "hhu"
3786// MIPSN32EL: #define __UINT8_FMTx__ "hhx"
3787// MIPSN32EL: #define __UINT8_MAX__ 255
3788// MIPSN32EL: #define __UINT8_TYPE__ unsigned char
3789// MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
3790// MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
3791// MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
3792// MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
3793// MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
3794// MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
3795// MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
3796// MIPSN32EL: #define __UINTMAX_WIDTH__ 64
3797// MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
3798// MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
3799// MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
3800// MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
3801// MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
3802// MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
3803// MIPSN32EL: #define __UINTPTR_WIDTH__ 32
3804// MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
3805// MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
3806// MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
3807// MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
3808// MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
3809// MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
3810// MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
3811// MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
3812// MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
3813// MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
3814// MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
3815// MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
3816// MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
3817// MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
3818// MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
3819// MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
3820// MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3821// MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
3822// MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
3823// MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
3824// MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
3825// MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
3826// MIPSN32EL: #define __UINT_FAST8_MAX__ 255
3827// MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
3828// MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
3829// MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
3830// MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
3831// MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
3832// MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
3833// MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
3834// MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
3835// MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
3836// MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
3837// MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
3838// MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
3839// MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
3840// MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
3841// MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
3842// MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
3843// MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
3844// MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3845// MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
3846// MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
3847// MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
3848// MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
3849// MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
3850// MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
3851// MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003852// MIPSN32EL: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003853// MIPSN32EL: #define __WCHAR_MAX__ 2147483647
3854// MIPSN32EL: #define __WCHAR_TYPE__ int
3855// MIPSN32EL: #define __WCHAR_WIDTH__ 32
3856// MIPSN32EL: #define __WINT_TYPE__ int
3857// MIPSN32EL: #define __WINT_WIDTH__ 32
3858// MIPSN32EL: #define __clang__ 1
3859// MIPSN32EL: #define __llvm__ 1
3860// MIPSN32EL: #define __mips 64
3861// MIPSN32EL: #define __mips64 1
3862// MIPSN32EL: #define __mips64__ 1
3863// MIPSN32EL: #define __mips__ 1
3864// MIPSN32EL: #define __mips_fpr 64
3865// MIPSN32EL: #define __mips_hard_float 1
3866// MIPSN32EL: #define __mips_isa_rev 2
3867// MIPSN32EL: #define __mips_n32 1
3868// MIPSN32EL: #define _mips 1
3869// MIPSN32EL: #define mips 1
3870//
James Y Knightc97efa42016-02-11 16:51:29 +00003871// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE %s
Richard Smith59139022016-09-30 22:41:36 +00003872// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE -check-prefix MIPS64BE-CXX %s
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003873//
3874// MIPS64BE:#define MIPSEB 1
3875// MIPS64BE:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003876// MIPS64BE:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003877// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003878// MIPS64BE:#define _MIPS_ARCH "mips64r2"
3879// MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003880// MIPS64BE:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003881// MIPS64BE:#define _MIPS_SIM _ABI64
3882// MIPS64BE:#define _MIPS_SZINT 32
3883// MIPS64BE:#define _MIPS_SZLONG 64
3884// MIPS64BE:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00003885// MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
Robert Lytton2c942c62014-03-10 12:06:29 +00003886// MIPS64BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003887// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003888// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
3889// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
3890// MIPS64BE:#define __CHAR_BIT__ 8
3891// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
3892// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3893// MIPS64BE:#define __DBL_DIG__ 15
3894// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
3895// MIPS64BE:#define __DBL_HAS_DENORM__ 1
3896// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
3897// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
3898// MIPS64BE:#define __DBL_MANT_DIG__ 53
3899// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
3900// MIPS64BE:#define __DBL_MAX_EXP__ 1024
3901// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
3902// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
3903// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
3904// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003905// MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003906// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3907// MIPS64BE:#define __FLT_DIG__ 6
3908// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
3909// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
3910// MIPS64BE:#define __FLT_HAS_DENORM__ 1
3911// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
3912// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
3913// MIPS64BE:#define __FLT_MANT_DIG__ 24
3914// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
3915// MIPS64BE:#define __FLT_MAX_EXP__ 128
3916// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
3917// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
3918// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
3919// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
3920// MIPS64BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003921// MIPS64BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003922// MIPS64BE:#define __INT16_FMTd__ "hd"
3923// MIPS64BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003924// MIPS64BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003925// MIPS64BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003926// MIPS64BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003927// MIPS64BE:#define __INT32_FMTd__ "d"
3928// MIPS64BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003929// MIPS64BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003930// MIPS64BE:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00003931// MIPS64BE:#define __INT64_C_SUFFIX__ L
3932// MIPS64BE:#define __INT64_FMTd__ "ld"
3933// MIPS64BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003934// MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003935// MIPS64BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00003936// MIPS64BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003937// MIPS64BE:#define __INT8_FMTd__ "hhd"
3938// MIPS64BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003939// MIPS64BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003940// MIPS64BE:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00003941// MIPS64BE:#define __INTMAX_C_SUFFIX__ L
3942// MIPS64BE:#define __INTMAX_FMTd__ "ld"
3943// MIPS64BE:#define __INTMAX_FMTi__ "li"
3944// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
3945// MIPS64BE:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003946// MIPS64BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003947// MIPS64BE:#define __INTPTR_FMTd__ "ld"
3948// MIPS64BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003949// MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003950// MIPS64BE:#define __INTPTR_TYPE__ long int
3951// MIPS64BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003952// MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
3953// MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003954// MIPS64BE:#define __INT_FAST16_MAX__ 32767
3955// MIPS64BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003956// MIPS64BE:#define __INT_FAST32_FMTd__ "d"
3957// MIPS64BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003958// MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
3959// MIPS64BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003960// MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
3961// MIPS64BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003962// MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
3963// MIPS64BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003964// MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
3965// MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003966// MIPS64BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003967// MIPS64BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003968// MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
3969// MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003970// MIPS64BE:#define __INT_LEAST16_MAX__ 32767
3971// MIPS64BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003972// MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
3973// MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003974// MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
3975// MIPS64BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003976// MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
3977// MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003978// MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
3979// MIPS64BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003980// MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
3981// MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003982// MIPS64BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003983// MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003984// MIPS64BE:#define __INT_MAX__ 2147483647
3985// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3986// MIPS64BE:#define __LDBL_DIG__ 33
3987// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3988// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
3989// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
3990// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
3991// MIPS64BE:#define __LDBL_MANT_DIG__ 113
3992// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
3993// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
3994// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3995// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
3996// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
3997// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3998// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
3999// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004000// MIPS64BE:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004001// MIPS64BE:#define __MIPSEB 1
4002// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004003// MIPS64BE:#define __POINTER_WIDTH__ 64
4004// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
4005// MIPS64BE:#define __PTRDIFF_TYPE__ long int
4006// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004007// MIPS64BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004008// MIPS64BE:#define __SCHAR_MAX__ 127
4009// MIPS64BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004010// MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004011// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
4012// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
4013// MIPS64BE:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004014// MIPS64BE:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004015// MIPS64BE:#define __SIZEOF_INT__ 4
4016// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
4017// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
4018// MIPS64BE:#define __SIZEOF_LONG__ 8
4019// MIPS64BE:#define __SIZEOF_POINTER__ 8
4020// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
4021// MIPS64BE:#define __SIZEOF_SHORT__ 2
4022// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
4023// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
4024// MIPS64BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004025// MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004026// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
4027// MIPS64BE:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00004028// MIPS64BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00004029// MIPS64BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004030// MIPS64BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004031// MIPS64BE:#define __UINT16_TYPE__ unsigned short
4032// MIPS64BE:#define __UINT32_C_SUFFIX__ U
4033// MIPS64BE:#define __UINT32_MAX__ 4294967295U
4034// MIPS64BE:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004035// MIPS64BE:#define __UINT64_C_SUFFIX__ UL
4036// MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
4037// MIPS64BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004038// MIPS64BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004039// MIPS64BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004040// MIPS64BE:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004041// MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
4042// MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
4043// MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004044// MIPS64BE:#define __UINTMAX_WIDTH__ 64
4045// MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
4046// MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
4047// MIPS64BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004048// MIPS64BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004049// MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
4050// MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
4051// MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
4052// MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4053// MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004054// MIPS64BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004055// MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004056// MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004057// MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
4058// MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
4059// MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
4060// MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4061// MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004062// MIPS64BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004063// MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004064// MIPS64BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004065// MIPS64BE:#define __WCHAR_MAX__ 2147483647
4066// MIPS64BE:#define __WCHAR_TYPE__ int
4067// MIPS64BE:#define __WCHAR_WIDTH__ 32
4068// MIPS64BE:#define __WINT_TYPE__ int
4069// MIPS64BE:#define __WINT_WIDTH__ 32
4070// MIPS64BE:#define __clang__ 1
4071// MIPS64BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004072// MIPS64BE:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004073// MIPS64BE:#define __mips64 1
4074// MIPS64BE:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004075// MIPS64BE:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004076// MIPS64BE:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004077// MIPS64BE:#define __mips_hard_float 1
4078// MIPS64BE:#define __mips_n64 1
4079// MIPS64BE:#define _mips 1
4080// MIPS64BE:#define mips 1
4081//
James Y Knightc97efa42016-02-11 16:51:29 +00004082// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64EL %s
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004083//
4084// MIPS64EL:#define MIPSEL 1
4085// MIPS64EL:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004086// MIPS64EL:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004087// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004088// MIPS64EL:#define _MIPS_ARCH "mips64r2"
4089// MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004090// MIPS64EL:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004091// MIPS64EL:#define _MIPS_SIM _ABI64
4092// MIPS64EL:#define _MIPS_SZINT 32
4093// MIPS64EL:#define _MIPS_SZLONG 64
4094// MIPS64EL:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004095// MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004096// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004097// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
4098// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
4099// MIPS64EL:#define __CHAR_BIT__ 8
4100// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
4101// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4102// MIPS64EL:#define __DBL_DIG__ 15
4103// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
4104// MIPS64EL:#define __DBL_HAS_DENORM__ 1
4105// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
4106// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
4107// MIPS64EL:#define __DBL_MANT_DIG__ 53
4108// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
4109// MIPS64EL:#define __DBL_MAX_EXP__ 1024
4110// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
4111// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
4112// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
4113// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004114// MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004115// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4116// MIPS64EL:#define __FLT_DIG__ 6
4117// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
4118// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
4119// MIPS64EL:#define __FLT_HAS_DENORM__ 1
4120// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
4121// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
4122// MIPS64EL:#define __FLT_MANT_DIG__ 24
4123// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
4124// MIPS64EL:#define __FLT_MAX_EXP__ 128
4125// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
4126// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
4127// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
4128// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
4129// MIPS64EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004130// MIPS64EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004131// MIPS64EL:#define __INT16_FMTd__ "hd"
4132// MIPS64EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004133// MIPS64EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004134// MIPS64EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004135// MIPS64EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004136// MIPS64EL:#define __INT32_FMTd__ "d"
4137// MIPS64EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004138// MIPS64EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004139// MIPS64EL:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004140// MIPS64EL:#define __INT64_C_SUFFIX__ L
4141// MIPS64EL:#define __INT64_FMTd__ "ld"
4142// MIPS64EL:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004143// MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004144// MIPS64EL:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004145// MIPS64EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004146// MIPS64EL:#define __INT8_FMTd__ "hhd"
4147// MIPS64EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004148// MIPS64EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004149// MIPS64EL:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004150// MIPS64EL:#define __INTMAX_C_SUFFIX__ L
4151// MIPS64EL:#define __INTMAX_FMTd__ "ld"
4152// MIPS64EL:#define __INTMAX_FMTi__ "li"
4153// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
4154// MIPS64EL:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004155// MIPS64EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004156// MIPS64EL:#define __INTPTR_FMTd__ "ld"
4157// MIPS64EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004158// MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004159// MIPS64EL:#define __INTPTR_TYPE__ long int
4160// MIPS64EL:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004161// MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
4162// MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004163// MIPS64EL:#define __INT_FAST16_MAX__ 32767
4164// MIPS64EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004165// MIPS64EL:#define __INT_FAST32_FMTd__ "d"
4166// MIPS64EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004167// MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
4168// MIPS64EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004169// MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
4170// MIPS64EL:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004171// MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
4172// MIPS64EL:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004173// MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
4174// MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004175// MIPS64EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004176// MIPS64EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004177// MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
4178// MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004179// MIPS64EL:#define __INT_LEAST16_MAX__ 32767
4180// MIPS64EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004181// MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
4182// MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004183// MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
4184// MIPS64EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004185// MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
4186// MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004187// MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
4188// MIPS64EL:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004189// MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
4190// MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004191// MIPS64EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004192// MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004193// MIPS64EL:#define __INT_MAX__ 2147483647
4194// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4195// MIPS64EL:#define __LDBL_DIG__ 33
4196// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4197// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
4198// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
4199// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
4200// MIPS64EL:#define __LDBL_MANT_DIG__ 113
4201// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
4202// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
4203// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4204// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
4205// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
4206// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
Robert Lytton2c942c62014-03-10 12:06:29 +00004207// MIPS64EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004208// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
4209// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004210// MIPS64EL:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004211// MIPS64EL:#define __MIPSEL 1
4212// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004213// MIPS64EL:#define __POINTER_WIDTH__ 64
4214// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
4215// MIPS64EL:#define __PTRDIFF_TYPE__ long int
4216// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004217// MIPS64EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004218// MIPS64EL:#define __SCHAR_MAX__ 127
4219// MIPS64EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004220// MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004221// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
4222// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
4223// MIPS64EL:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004224// MIPS64EL:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004225// MIPS64EL:#define __SIZEOF_INT__ 4
4226// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
4227// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
4228// MIPS64EL:#define __SIZEOF_LONG__ 8
4229// MIPS64EL:#define __SIZEOF_POINTER__ 8
4230// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
4231// MIPS64EL:#define __SIZEOF_SHORT__ 2
4232// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
4233// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
4234// MIPS64EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004235// MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004236// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
4237// MIPS64EL:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004238// MIPS64EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004239// MIPS64EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004240// MIPS64EL:#define __UINT16_TYPE__ unsigned short
4241// MIPS64EL:#define __UINT32_C_SUFFIX__ U
4242// MIPS64EL:#define __UINT32_MAX__ 4294967295U
4243// MIPS64EL:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004244// MIPS64EL:#define __UINT64_C_SUFFIX__ UL
4245// MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
4246// MIPS64EL:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004247// MIPS64EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004248// MIPS64EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004249// MIPS64EL:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004250// MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
4251// MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
4252// MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004253// MIPS64EL:#define __UINTMAX_WIDTH__ 64
4254// MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
4255// MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
4256// MIPS64EL:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004257// MIPS64EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004258// MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
4259// MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
4260// MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
4261// MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4262// MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004263// MIPS64EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004264// MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004265// MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004266// MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
4267// MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
4268// MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
4269// MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4270// MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004271// MIPS64EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004272// MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004273// MIPS64EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004274// MIPS64EL:#define __WCHAR_MAX__ 2147483647
4275// MIPS64EL:#define __WCHAR_TYPE__ int
4276// MIPS64EL:#define __WCHAR_WIDTH__ 32
4277// MIPS64EL:#define __WINT_TYPE__ int
4278// MIPS64EL:#define __WINT_WIDTH__ 32
4279// MIPS64EL:#define __clang__ 1
4280// MIPS64EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004281// MIPS64EL:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004282// MIPS64EL:#define __mips64 1
4283// MIPS64EL:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004284// MIPS64EL:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004285// MIPS64EL:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004286// MIPS64EL:#define __mips_hard_float 1
4287// MIPS64EL:#define __mips_n64 1
4288// MIPS64EL:#define _mips 1
4289// MIPS64EL:#define mips 1
4290//
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004291// Check MIPS arch and isa macros
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004292//
4293// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4294// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004295// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004296//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004297// MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
4298// MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004299// MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4300// MIPS-ARCH-DEF32:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004301//
4302// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
4303// RUN: -target-cpu mips32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004304// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004305//
4306// MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
4307// MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004308// MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4309// MIPS-ARCH-32:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004310//
4311// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4312// RUN: -target-cpu mips32r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004313// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004314//
4315// MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
4316// MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004317// MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
4318// MIPS-ARCH-32R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004319//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004320// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004321// RUN: -target-cpu mips32r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004322// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004323//
4324// MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
4325// MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
4326// MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
4327// MIPS-ARCH-32R3:#define __mips_isa_rev 3
4328//
4329// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4330// RUN: -target-cpu mips32r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004331// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004332//
4333// MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
4334// MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
4335// MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
4336// MIPS-ARCH-32R5:#define __mips_isa_rev 5
4337//
4338// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004339// RUN: -target-cpu mips32r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004340// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004341//
4342// MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
4343// MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
4344// MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
4345// MIPS-ARCH-32R6:#define __mips_isa_rev 6
4346//
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004347// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4348// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004349// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004350//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004351// MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
4352// MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004353// MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4354// MIPS-ARCH-DEF64:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004355//
4356// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4357// RUN: -target-cpu mips64 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004358// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004359//
4360// MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
4361// MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004362// MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4363// MIPS-ARCH-64:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004364//
4365// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4366// RUN: -target-cpu mips64r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004367// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004368//
4369// MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
4370// MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004371// MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
4372// MIPS-ARCH-64R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004373//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004374// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004375// RUN: -target-cpu mips64r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004376// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004377//
4378// MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
4379// MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
4380// MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
4381// MIPS-ARCH-64R3:#define __mips_isa_rev 3
4382//
4383// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4384// RUN: -target-cpu mips64r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004385// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004386//
4387// MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
4388// MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
4389// MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
4390// MIPS-ARCH-64R5:#define __mips_isa_rev 5
4391//
4392// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004393// RUN: -target-cpu mips64r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004394// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004395//
4396// MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
4397// MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
4398// MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
4399// MIPS-ARCH-64R6:#define __mips_isa_rev 6
4400//
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004401// Check MIPS float ABI macros
4402//
4403// RUN: %clang_cc1 -E -dM -ffreestanding \
4404// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004405// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004406// MIPS-FABI-HARD:#define __mips_hard_float 1
4407//
4408// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
4409// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004410// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004411// MIPS-FABI-SOFT:#define __mips_soft_float 1
4412//
4413// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
4414// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004415// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyand3d173d2012-06-05 13:06:56 +00004416// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004417// MIPS-FABI-SINGLE:#define __mips_single_float 1
4418//
Simon Atanasyan16071912013-04-14 14:07:30 +00004419// RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
4420// RUN: -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004421// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
Simon Atanasyan16071912013-04-14 14:07:30 +00004422// MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
4423// MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
4424//
Simon Atanasyan72244b62012-07-05 16:06:06 +00004425// Check MIPS features macros
4426//
4427// RUN: %clang_cc1 -target-feature +mips16 \
4428// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004429// RUN: | FileCheck -match-full-lines -check-prefix MIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004430// MIPS16:#define __mips16 1
4431//
4432// RUN: %clang_cc1 -target-feature -mips16 \
4433// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004434// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004435// NOMIPS16-NOT:#define __mips16 1
4436//
Simon Atanasyan60777612013-04-14 14:07:51 +00004437// RUN: %clang_cc1 -target-feature +micromips \
4438// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004439// RUN: | FileCheck -match-full-lines -check-prefix MICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004440// MICROMIPS:#define __mips_micromips 1
4441//
4442// RUN: %clang_cc1 -target-feature -micromips \
4443// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004444// RUN: | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004445// NOMICROMIPS-NOT:#define __mips_micromips 1
4446//
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004447// RUN: %clang_cc1 -target-feature +dsp \
4448// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004449// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004450// MIPS-DSP:#define __mips_dsp 1
4451// MIPS-DSP:#define __mips_dsp_rev 1
4452// MIPS-DSP-NOT:#define __mips_dspr2 1
4453//
4454// RUN: %clang_cc1 -target-feature +dspr2 \
4455// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004456// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004457// MIPS-DSPR2:#define __mips_dsp 1
4458// MIPS-DSPR2:#define __mips_dsp_rev 2
4459// MIPS-DSPR2:#define __mips_dspr2 1
4460//
Jack Carter44ff1e52013-08-12 17:20:29 +00004461// RUN: %clang_cc1 -target-feature +msa \
4462// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004463// RUN: | FileCheck -match-full-lines -check-prefix MIPS-MSA %s
Jack Carter44ff1e52013-08-12 17:20:29 +00004464// MIPS-MSA:#define __mips_msa 1
4465//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004466// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004467// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004468// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004469// MIPS-NAN2008:#define __mips_nan2008 1
4470//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004471// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
4472// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004473// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS-NAN2008 %s
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004474// NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
4475//
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004476// RUN: %clang_cc1 -target-feature -fp64 \
4477// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004478// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004479// MIPS32-MFP32:#define _MIPS_FPSET 16
4480// MIPS32-MFP32:#define __mips_fpr 32
4481//
4482// RUN: %clang_cc1 -target-feature +fp64 \
4483// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004484// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004485// MIPS32-MFP64:#define _MIPS_FPSET 32
4486// MIPS32-MFP64:#define __mips_fpr 64
4487//
4488// RUN: %clang_cc1 -target-feature +single-float \
4489// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004490// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004491// MIPS32-MFP32SF:#define _MIPS_FPSET 32
4492// MIPS32-MFP32SF:#define __mips_fpr 32
4493//
4494// RUN: %clang_cc1 -target-feature +fp64 \
4495// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004496// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004497// MIPS64-MFP64:#define _MIPS_FPSET 32
4498// MIPS64-MFP64:#define __mips_fpr 64
4499//
4500// RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
4501// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004502// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004503// MIPS64-NOMFP64:#define _MIPS_FPSET 32
4504// MIPS64-NOMFP64:#define __mips_fpr 32
4505//
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004506// RUN: %clang_cc1 -target-cpu mips32r6 \
4507// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004508// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004509// RUN: %clang_cc1 -target-cpu mips64r6 \
4510// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004511// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004512// MIPS-XXR6:#define _MIPS_FPSET 32
4513// MIPS-XXR6:#define __mips_fpr 64
4514// MIPS-XXR6:#define __mips_nan2008 1
4515//
James Y Knightc97efa42016-02-11 16:51:29 +00004516// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MSP430 %s
Richard Smith59139022016-09-30 22:41:36 +00004517// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MSP430 -check-prefix MSP430-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00004518//
4519// MSP430:#define MSP430 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004520// MSP430-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004521// MSP430:#define __BIGGEST_ALIGNMENT__ 2
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004522// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00004523// MSP430:#define __CHAR16_TYPE__ unsigned short
4524// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00004525// MSP430:#define __CHAR_BIT__ 8
4526// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4527// MSP430:#define __DBL_DIG__ 15
4528// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
4529// MSP430:#define __DBL_HAS_DENORM__ 1
4530// MSP430:#define __DBL_HAS_INFINITY__ 1
4531// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
4532// MSP430:#define __DBL_MANT_DIG__ 53
4533// MSP430:#define __DBL_MAX_10_EXP__ 308
4534// MSP430:#define __DBL_MAX_EXP__ 1024
4535// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
4536// MSP430:#define __DBL_MIN_10_EXP__ (-307)
4537// MSP430:#define __DBL_MIN_EXP__ (-1021)
4538// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004539// MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00004540// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4541// MSP430:#define __FLT_DIG__ 6
4542// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
4543// MSP430:#define __FLT_EVAL_METHOD__ 0
4544// MSP430:#define __FLT_HAS_DENORM__ 1
4545// MSP430:#define __FLT_HAS_INFINITY__ 1
4546// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
4547// MSP430:#define __FLT_MANT_DIG__ 24
4548// MSP430:#define __FLT_MAX_10_EXP__ 38
4549// MSP430:#define __FLT_MAX_EXP__ 128
4550// MSP430:#define __FLT_MAX__ 3.40282347e+38F
4551// MSP430:#define __FLT_MIN_10_EXP__ (-37)
4552// MSP430:#define __FLT_MIN_EXP__ (-125)
4553// MSP430:#define __FLT_MIN__ 1.17549435e-38F
4554// MSP430:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004555// MSP430:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004556// MSP430:#define __INT16_FMTd__ "hd"
4557// MSP430:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004558// MSP430:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004559// MSP430:#define __INT16_TYPE__ short
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00004560// MSP430:#define __INT32_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004561// MSP430:#define __INT32_FMTd__ "ld"
4562// MSP430:#define __INT32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004563// MSP430:#define __INT32_MAX__ 2147483647L
Chris Lattner55c98772009-11-12 08:08:27 +00004564// MSP430:#define __INT32_TYPE__ long int
JF Bastienab8d0a02014-06-25 01:31:33 +00004565// MSP430:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004566// MSP430:#define __INT64_FMTd__ "lld"
4567// MSP430:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004568// MSP430:#define __INT64_MAX__ 9223372036854775807LL
4569// MSP430:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004570// MSP430:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004571// MSP430:#define __INT8_FMTd__ "hhd"
4572// MSP430:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004573// MSP430:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004574// MSP430:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004575// MSP430:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004576// MSP430:#define __INTMAX_FMTd__ "lld"
4577// MSP430:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikovef412902013-07-01 19:42:40 +00004578// MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
4579// MSP430:#define __INTMAX_TYPE__ long long int
4580// MSP430:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004581// MSP430:#define __INTPTR_FMTd__ "d"
4582// MSP430:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004583// MSP430:#define __INTPTR_MAX__ 32767
Anton Korobeynikovef412902013-07-01 19:42:40 +00004584// MSP430:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00004585// MSP430:#define __INTPTR_WIDTH__ 16
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004586// MSP430:#define __INT_FAST16_FMTd__ "hd"
4587// MSP430:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004588// MSP430:#define __INT_FAST16_MAX__ 32767
4589// MSP430:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004590// MSP430:#define __INT_FAST32_FMTd__ "ld"
4591// MSP430:#define __INT_FAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004592// MSP430:#define __INT_FAST32_MAX__ 2147483647L
4593// MSP430:#define __INT_FAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004594// MSP430:#define __INT_FAST64_FMTd__ "lld"
4595// MSP430:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004596// MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
4597// MSP430:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004598// MSP430:#define __INT_FAST8_FMTd__ "hhd"
4599// MSP430:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004600// MSP430:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004601// MSP430:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004602// MSP430:#define __INT_LEAST16_FMTd__ "hd"
4603// MSP430:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004604// MSP430:#define __INT_LEAST16_MAX__ 32767
4605// MSP430:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004606// MSP430:#define __INT_LEAST32_FMTd__ "ld"
4607// MSP430:#define __INT_LEAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004608// MSP430:#define __INT_LEAST32_MAX__ 2147483647L
4609// MSP430:#define __INT_LEAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004610// MSP430:#define __INT_LEAST64_FMTd__ "lld"
4611// MSP430:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004612// MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
4613// MSP430:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004614// MSP430:#define __INT_LEAST8_FMTd__ "hhd"
4615// MSP430:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004616// MSP430:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004617// MSP430:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00004618// MSP430:#define __INT_MAX__ 32767
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004619// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00004620// MSP430:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004621// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00004622// MSP430:#define __LDBL_HAS_DENORM__ 1
4623// MSP430:#define __LDBL_HAS_INFINITY__ 1
4624// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
4625// MSP430:#define __LDBL_MANT_DIG__ 53
4626// MSP430:#define __LDBL_MAX_10_EXP__ 308
4627// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004628// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00004629// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
4630// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004631// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004632// MSP430:#define __LITTLE_ENDIAN__ 1
Anton Korobeynikov485810e2010-01-14 21:36:52 +00004633// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00004634// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004635// MSP430-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00004636// MSP430:#define __MSP430__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00004637// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck9b25f782009-11-19 13:18:59 +00004638// MSP430:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00004639// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004640// MSP430:#define __SCHAR_MAX__ 127
4641// MSP430:#define __SHRT_MAX__ 32767
James Y Knightc97efa42016-02-11 16:51:29 +00004642// MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
Ken Dyckadc85112009-11-22 15:41:04 +00004643// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00004644// MSP430:#define __SIZEOF_DOUBLE__ 8
4645// MSP430:#define __SIZEOF_FLOAT__ 4
4646// MSP430:#define __SIZEOF_INT__ 2
4647// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
4648// MSP430:#define __SIZEOF_LONG_LONG__ 8
4649// MSP430:#define __SIZEOF_LONG__ 4
4650// MSP430:#define __SIZEOF_POINTER__ 2
4651// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
4652// MSP430:#define __SIZEOF_SHORT__ 2
4653// MSP430:#define __SIZEOF_SIZE_T__ 2
4654// MSP430:#define __SIZEOF_WCHAR_T__ 2
4655// MSP430:#define __SIZEOF_WINT_T__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004656// MSP430:#define __SIZE_MAX__ 65535U
Chris Lattnere963d092009-10-29 04:55:36 +00004657// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00004658// MSP430:#define __SIZE_WIDTH__ 16
Richard Smith59139022016-09-30 22:41:36 +00004659// MSP430-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
JF Bastienab8d0a02014-06-25 01:31:33 +00004660// MSP430:#define __UINT16_C_SUFFIX__ U
James Y Knightc97efa42016-02-11 16:51:29 +00004661// MSP430:#define __UINT16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004662// MSP430:#define __UINT16_TYPE__ unsigned short
4663// MSP430:#define __UINT32_C_SUFFIX__ UL
4664// MSP430:#define __UINT32_MAX__ 4294967295UL
4665// MSP430:#define __UINT32_TYPE__ long unsigned int
4666// MSP430:#define __UINT64_C_SUFFIX__ ULL
4667// MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
4668// MSP430:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004669// MSP430:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004670// MSP430:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004671// MSP430:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004672// MSP430:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00004673// MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikovef412902013-07-01 19:42:40 +00004674// MSP430:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004675// MSP430:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004676// MSP430:#define __UINTPTR_MAX__ 65535U
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00004677// MSP430:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004678// MSP430:#define __UINTPTR_WIDTH__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00004679// MSP430:#define __UINT_FAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004680// MSP430:#define __UINT_FAST16_TYPE__ unsigned short
4681// MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
4682// MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
4683// MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
4684// MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004685// MSP430:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004686// MSP430:#define __UINT_FAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00004687// MSP430:#define __UINT_LEAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004688// MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
4689// MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
4690// MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
4691// MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4692// MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004693// MSP430:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004694// MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004695// MSP430:#define __USER_LABEL_PREFIX__
Chris Lattner0fb5bbd2009-11-12 08:04:33 +00004696// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004697// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00004698// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004699// MSP430:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00004700// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004701// MSP430:#define __clang__ 1
4702//
James Y Knightc97efa42016-02-11 16:51:29 +00004703// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX32 %s
Richard Smith59139022016-09-30 22:41:36 +00004704// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX32 -check-prefix NVPTX32-CXX %s
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004705//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004706// NVPTX32-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004707// NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004708// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004709// NVPTX32:#define __CHAR16_TYPE__ unsigned short
4710// NVPTX32:#define __CHAR32_TYPE__ unsigned int
4711// NVPTX32:#define __CHAR_BIT__ 8
4712// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
4713// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4714// NVPTX32:#define __DBL_DIG__ 15
4715// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
4716// NVPTX32:#define __DBL_HAS_DENORM__ 1
4717// NVPTX32:#define __DBL_HAS_INFINITY__ 1
4718// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
4719// NVPTX32:#define __DBL_MANT_DIG__ 53
4720// NVPTX32:#define __DBL_MAX_10_EXP__ 308
4721// NVPTX32:#define __DBL_MAX_EXP__ 1024
4722// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
4723// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
4724// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
4725// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004726// NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004727// NVPTX32:#define __FINITE_MATH_ONLY__ 0
4728// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4729// NVPTX32:#define __FLT_DIG__ 6
4730// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
4731// NVPTX32:#define __FLT_EVAL_METHOD__ 0
4732// NVPTX32:#define __FLT_HAS_DENORM__ 1
4733// NVPTX32:#define __FLT_HAS_INFINITY__ 1
4734// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
4735// NVPTX32:#define __FLT_MANT_DIG__ 24
4736// NVPTX32:#define __FLT_MAX_10_EXP__ 38
4737// NVPTX32:#define __FLT_MAX_EXP__ 128
4738// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
4739// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
4740// NVPTX32:#define __FLT_MIN_EXP__ (-125)
4741// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
4742// NVPTX32:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004743// NVPTX32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004744// NVPTX32:#define __INT16_FMTd__ "hd"
4745// NVPTX32:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004746// NVPTX32:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004747// NVPTX32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004748// NVPTX32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004749// NVPTX32:#define __INT32_FMTd__ "d"
4750// NVPTX32:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004751// NVPTX32:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004752// NVPTX32:#define __INT32_TYPE__ int
4753// NVPTX32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004754// NVPTX32:#define __INT64_FMTd__ "lld"
4755// NVPTX32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004756// NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004757// NVPTX32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004758// NVPTX32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004759// NVPTX32:#define __INT8_FMTd__ "hhd"
4760// NVPTX32:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004761// NVPTX32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004762// NVPTX32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004763// NVPTX32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004764// NVPTX32:#define __INTMAX_FMTd__ "lld"
4765// NVPTX32:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004766// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
4767// NVPTX32:#define __INTMAX_TYPE__ long long int
4768// NVPTX32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004769// NVPTX32:#define __INTPTR_FMTd__ "d"
4770// NVPTX32:#define __INTPTR_FMTi__ "i"
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00004771// NVPTX32:#define __INTPTR_MAX__ 2147483647
4772// NVPTX32:#define __INTPTR_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004773// NVPTX32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004774// NVPTX32:#define __INT_FAST16_FMTd__ "hd"
4775// NVPTX32:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004776// NVPTX32:#define __INT_FAST16_MAX__ 32767
4777// NVPTX32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004778// NVPTX32:#define __INT_FAST32_FMTd__ "d"
4779// NVPTX32:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004780// NVPTX32:#define __INT_FAST32_MAX__ 2147483647
4781// NVPTX32:#define __INT_FAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00004782// NVPTX32:#define __INT_FAST64_FMTd__ "lld"
4783// NVPTX32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004784// NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004785// NVPTX32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004786// NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
4787// NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004788// NVPTX32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004789// NVPTX32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004790// NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
4791// NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004792// NVPTX32:#define __INT_LEAST16_MAX__ 32767
4793// NVPTX32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004794// NVPTX32:#define __INT_LEAST32_FMTd__ "d"
4795// NVPTX32:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004796// NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
4797// NVPTX32:#define __INT_LEAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00004798// NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
4799// NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004800// NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004801// NVPTX32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004802// NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
4803// NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004804// NVPTX32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004805// NVPTX32:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004806// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004807// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004808// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004809// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004810// NVPTX32:#define __LDBL_HAS_DENORM__ 1
4811// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
4812// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
4813// NVPTX32:#define __LDBL_MANT_DIG__ 53
4814// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
4815// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004816// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004817// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
4818// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004819// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004820// NVPTX32:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004821// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004822// NVPTX32:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004823// NVPTX32-NOT:#define __LP64__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004824// NVPTX32:#define __NVPTX__ 1
4825// NVPTX32:#define __POINTER_WIDTH__ 32
4826// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00004827// NVPTX32:#define __PTRDIFF_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004828// NVPTX32:#define __PTRDIFF_WIDTH__ 32
4829// NVPTX32:#define __PTX__ 1
4830// NVPTX32:#define __SCHAR_MAX__ 127
4831// NVPTX32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004832// NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004833// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
4834// NVPTX32:#define __SIZEOF_DOUBLE__ 8
4835// NVPTX32:#define __SIZEOF_FLOAT__ 4
4836// NVPTX32:#define __SIZEOF_INT__ 4
4837// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
4838// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
Artem Belevich236cfdc2015-09-28 22:54:08 +00004839// NVPTX32:#define __SIZEOF_LONG__ 4
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004840// NVPTX32:#define __SIZEOF_POINTER__ 4
4841// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
4842// NVPTX32:#define __SIZEOF_SHORT__ 2
4843// NVPTX32:#define __SIZEOF_SIZE_T__ 4
4844// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
4845// NVPTX32:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004846// NVPTX32:#define __SIZE_MAX__ 4294967295U
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004847// NVPTX32:#define __SIZE_TYPE__ unsigned int
4848// NVPTX32:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00004849// NVPTX32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00004850// NVPTX32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004851// NVPTX32:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004852// NVPTX32:#define __UINT16_TYPE__ unsigned short
4853// NVPTX32:#define __UINT32_C_SUFFIX__ U
4854// NVPTX32:#define __UINT32_MAX__ 4294967295U
4855// NVPTX32:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00004856// NVPTX32:#define __UINT64_C_SUFFIX__ ULL
4857// NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
4858// NVPTX32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004859// NVPTX32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004860// NVPTX32:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004861// NVPTX32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004862// NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00004863// NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004864// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004865// NVPTX32:#define __UINTMAX_WIDTH__ 64
4866// NVPTX32:#define __UINTPTR_MAX__ 4294967295U
4867// NVPTX32:#define __UINTPTR_TYPE__ unsigned int
4868// NVPTX32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004869// NVPTX32:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004870// NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
4871// NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
4872// NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004873// NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004874// NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004875// NVPTX32:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004876// NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004877// NVPTX32:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004878// NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
4879// NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
4880// NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004881// NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004882// NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004883// NVPTX32:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004884// NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004885// NVPTX32:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004886// NVPTX32:#define __WCHAR_MAX__ 2147483647
4887// NVPTX32:#define __WCHAR_TYPE__ int
4888// NVPTX32:#define __WCHAR_WIDTH__ 32
4889// NVPTX32:#define __WINT_TYPE__ int
4890// NVPTX32:#define __WINT_WIDTH__ 32
4891//
James Y Knightc97efa42016-02-11 16:51:29 +00004892// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX64 %s
Richard Smith59139022016-09-30 22:41:36 +00004893// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX64 -check-prefix NVPTX64-CXX %s
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004894//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004895// NVPTX64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00004896// NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004897// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004898// NVPTX64:#define __CHAR16_TYPE__ unsigned short
4899// NVPTX64:#define __CHAR32_TYPE__ unsigned int
4900// NVPTX64:#define __CHAR_BIT__ 8
4901// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
4902// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4903// NVPTX64:#define __DBL_DIG__ 15
4904// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
4905// NVPTX64:#define __DBL_HAS_DENORM__ 1
4906// NVPTX64:#define __DBL_HAS_INFINITY__ 1
4907// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
4908// NVPTX64:#define __DBL_MANT_DIG__ 53
4909// NVPTX64:#define __DBL_MAX_10_EXP__ 308
4910// NVPTX64:#define __DBL_MAX_EXP__ 1024
4911// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
4912// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
4913// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
4914// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004915// NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004916// NVPTX64:#define __FINITE_MATH_ONLY__ 0
4917// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4918// NVPTX64:#define __FLT_DIG__ 6
4919// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
4920// NVPTX64:#define __FLT_EVAL_METHOD__ 0
4921// NVPTX64:#define __FLT_HAS_DENORM__ 1
4922// NVPTX64:#define __FLT_HAS_INFINITY__ 1
4923// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
4924// NVPTX64:#define __FLT_MANT_DIG__ 24
4925// NVPTX64:#define __FLT_MAX_10_EXP__ 38
4926// NVPTX64:#define __FLT_MAX_EXP__ 128
4927// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
4928// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
4929// NVPTX64:#define __FLT_MIN_EXP__ (-125)
4930// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
4931// NVPTX64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004932// NVPTX64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004933// NVPTX64:#define __INT16_FMTd__ "hd"
4934// NVPTX64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004935// NVPTX64:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004936// NVPTX64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004937// NVPTX64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004938// NVPTX64:#define __INT32_FMTd__ "d"
4939// NVPTX64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004940// NVPTX64:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004941// NVPTX64:#define __INT32_TYPE__ int
4942// NVPTX64:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004943// NVPTX64:#define __INT64_FMTd__ "lld"
4944// NVPTX64:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004945// NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004946// NVPTX64:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004947// NVPTX64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004948// NVPTX64:#define __INT8_FMTd__ "hhd"
4949// NVPTX64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004950// NVPTX64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004951// NVPTX64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004952// NVPTX64:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004953// NVPTX64:#define __INTMAX_FMTd__ "lld"
4954// NVPTX64:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004955// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
4956// NVPTX64:#define __INTMAX_TYPE__ long long int
4957// NVPTX64:#define __INTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00004958// NVPTX64:#define __INTPTR_FMTd__ "ld"
4959// NVPTX64:#define __INTPTR_FMTi__ "li"
4960// NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
4961// NVPTX64:#define __INTPTR_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004962// NVPTX64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004963// NVPTX64:#define __INT_FAST16_FMTd__ "hd"
4964// NVPTX64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004965// NVPTX64:#define __INT_FAST16_MAX__ 32767
4966// NVPTX64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004967// NVPTX64:#define __INT_FAST32_FMTd__ "d"
4968// NVPTX64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004969// NVPTX64:#define __INT_FAST32_MAX__ 2147483647
4970// NVPTX64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004971// NVPTX64:#define __INT_FAST64_FMTd__ "ld"
4972// NVPTX64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004973// NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
4974// NVPTX64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004975// NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
4976// NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004977// NVPTX64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004978// NVPTX64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004979// NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
4980// NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004981// NVPTX64:#define __INT_LEAST16_MAX__ 32767
4982// NVPTX64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004983// NVPTX64:#define __INT_LEAST32_FMTd__ "d"
4984// NVPTX64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004985// NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
4986// NVPTX64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004987// NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
4988// NVPTX64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004989// NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
4990// NVPTX64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004991// NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
4992// NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004993// NVPTX64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004994// NVPTX64:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004995// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004996// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004997// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004998// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004999// NVPTX64:#define __LDBL_HAS_DENORM__ 1
5000// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
5001// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
5002// NVPTX64:#define __LDBL_MANT_DIG__ 53
5003// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
5004// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005005// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005006// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
5007// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005008// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005009// NVPTX64:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005010// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5011// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005012// NVPTX64:#define __LP64__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005013// NVPTX64:#define __NVPTX__ 1
5014// NVPTX64:#define __POINTER_WIDTH__ 64
5015// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005016// NVPTX64:#define __PTRDIFF_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005017// NVPTX64:#define __PTRDIFF_WIDTH__ 64
5018// NVPTX64:#define __PTX__ 1
5019// NVPTX64:#define __SCHAR_MAX__ 127
5020// NVPTX64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005021// NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005022// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
5023// NVPTX64:#define __SIZEOF_DOUBLE__ 8
5024// NVPTX64:#define __SIZEOF_FLOAT__ 4
5025// NVPTX64:#define __SIZEOF_INT__ 4
5026// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
5027// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
5028// NVPTX64:#define __SIZEOF_LONG__ 8
5029// NVPTX64:#define __SIZEOF_POINTER__ 8
5030// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
5031// NVPTX64:#define __SIZEOF_SHORT__ 2
5032// NVPTX64:#define __SIZEOF_SIZE_T__ 8
5033// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
5034// NVPTX64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005035// NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
Eli Bendersky15f63422015-04-01 18:29:27 +00005036// NVPTX64:#define __SIZE_TYPE__ long unsigned int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005037// NVPTX64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005038// NVPTX64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00005039// NVPTX64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005040// NVPTX64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005041// NVPTX64:#define __UINT16_TYPE__ unsigned short
5042// NVPTX64:#define __UINT32_C_SUFFIX__ U
5043// NVPTX64:#define __UINT32_MAX__ 4294967295U
5044// NVPTX64:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005045// NVPTX64:#define __UINT64_C_SUFFIX__ ULL
5046// NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
5047// NVPTX64:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005048// NVPTX64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005049// NVPTX64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005050// NVPTX64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005051// NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005052// NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005053// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005054// NVPTX64:#define __UINTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005055// NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
5056// NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005057// NVPTX64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005058// NVPTX64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005059// NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
5060// NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
5061// NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
5062// NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5063// NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005064// NVPTX64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005065// NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005066// NVPTX64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005067// NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
5068// NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
5069// NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
5070// NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5071// NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005072// NVPTX64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005073// NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005074// NVPTX64:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005075// NVPTX64:#define __WCHAR_MAX__ 2147483647
5076// NVPTX64:#define __WCHAR_TYPE__ int
5077// NVPTX64:#define __WCHAR_WIDTH__ 32
5078// NVPTX64:#define __WINT_TYPE__ int
5079// NVPTX64:#define __WINT_WIDTH__ 32
5080//
James Y Knightc97efa42016-02-11 16:51:29 +00005081// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -match-full-lines -check-prefix PPC603E %s
Richard Smith59139022016-09-30 22:41:36 +00005082// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -match-full-lines -check-prefix PPC603E-CXX %s
Hal Finkel6b984f02012-07-03 16:51:04 +00005083//
5084// PPC603E:#define _ARCH_603 1
5085// PPC603E:#define _ARCH_603E 1
5086// PPC603E:#define _ARCH_PPC 1
5087// PPC603E:#define _ARCH_PPCGR 1
5088// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005089// PPC603E-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00005090// PPC603E:#define __BIGGEST_ALIGNMENT__ 8
Hal Finkel6b984f02012-07-03 16:51:04 +00005091// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005092// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel6b984f02012-07-03 16:51:04 +00005093// PPC603E:#define __CHAR16_TYPE__ unsigned short
5094// PPC603E:#define __CHAR32_TYPE__ unsigned int
5095// PPC603E:#define __CHAR_BIT__ 8
5096// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5097// PPC603E:#define __DBL_DIG__ 15
5098// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
5099// PPC603E:#define __DBL_HAS_DENORM__ 1
5100// PPC603E:#define __DBL_HAS_INFINITY__ 1
5101// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
5102// PPC603E:#define __DBL_MANT_DIG__ 53
5103// PPC603E:#define __DBL_MAX_10_EXP__ 308
5104// PPC603E:#define __DBL_MAX_EXP__ 1024
5105// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
5106// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
5107// PPC603E:#define __DBL_MIN_EXP__ (-1021)
5108// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005109// PPC603E:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Hal Finkel6b984f02012-07-03 16:51:04 +00005110// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5111// PPC603E:#define __FLT_DIG__ 6
5112// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
5113// PPC603E:#define __FLT_EVAL_METHOD__ 0
5114// PPC603E:#define __FLT_HAS_DENORM__ 1
5115// PPC603E:#define __FLT_HAS_INFINITY__ 1
5116// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
5117// PPC603E:#define __FLT_MANT_DIG__ 24
5118// PPC603E:#define __FLT_MAX_10_EXP__ 38
5119// PPC603E:#define __FLT_MAX_EXP__ 128
5120// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
5121// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
5122// PPC603E:#define __FLT_MIN_EXP__ (-125)
5123// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
5124// PPC603E:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005125// PPC603E:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005126// PPC603E:#define __INT16_FMTd__ "hd"
5127// PPC603E:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005128// PPC603E:#define __INT16_MAX__ 32767
Hal Finkel6b984f02012-07-03 16:51:04 +00005129// PPC603E:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005130// PPC603E:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005131// PPC603E:#define __INT32_FMTd__ "d"
5132// PPC603E:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005133// PPC603E:#define __INT32_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005134// PPC603E:#define __INT32_TYPE__ int
5135// PPC603E:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005136// PPC603E:#define __INT64_FMTd__ "lld"
5137// PPC603E:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005138// PPC603E:#define __INT64_MAX__ 9223372036854775807LL
Hal Finkel6b984f02012-07-03 16:51:04 +00005139// PPC603E:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005140// PPC603E:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005141// PPC603E:#define __INT8_FMTd__ "hhd"
5142// PPC603E:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005143// PPC603E:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005144// PPC603E:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005145// PPC603E:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005146// PPC603E:#define __INTMAX_FMTd__ "lld"
5147// PPC603E:#define __INTMAX_FMTi__ "lli"
Hal Finkel6b984f02012-07-03 16:51:04 +00005148// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
5149// PPC603E:#define __INTMAX_TYPE__ long long int
5150// PPC603E:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005151// PPC603E:#define __INTPTR_FMTd__ "ld"
5152// PPC603E:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005153// PPC603E:#define __INTPTR_MAX__ 2147483647L
Hal Finkel6b984f02012-07-03 16:51:04 +00005154// PPC603E:#define __INTPTR_TYPE__ long int
5155// PPC603E:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005156// PPC603E:#define __INT_FAST16_FMTd__ "hd"
5157// PPC603E:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005158// PPC603E:#define __INT_FAST16_MAX__ 32767
5159// PPC603E:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005160// PPC603E:#define __INT_FAST32_FMTd__ "d"
5161// PPC603E:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005162// PPC603E:#define __INT_FAST32_MAX__ 2147483647
5163// PPC603E:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005164// PPC603E:#define __INT_FAST64_FMTd__ "lld"
5165// PPC603E:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005166// PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
5167// PPC603E:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005168// PPC603E:#define __INT_FAST8_FMTd__ "hhd"
5169// PPC603E:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005170// PPC603E:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005171// PPC603E:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005172// PPC603E:#define __INT_LEAST16_FMTd__ "hd"
5173// PPC603E:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005174// PPC603E:#define __INT_LEAST16_MAX__ 32767
5175// PPC603E:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005176// PPC603E:#define __INT_LEAST32_FMTd__ "d"
5177// PPC603E:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005178// PPC603E:#define __INT_LEAST32_MAX__ 2147483647
5179// PPC603E:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005180// PPC603E:#define __INT_LEAST64_FMTd__ "lld"
5181// PPC603E:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005182// PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5183// PPC603E:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005184// PPC603E:#define __INT_LEAST8_FMTd__ "hhd"
5185// PPC603E:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005186// PPC603E:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005187// PPC603E:#define __INT_LEAST8_TYPE__ signed char
Hal Finkel6b984f02012-07-03 16:51:04 +00005188// PPC603E:#define __INT_MAX__ 2147483647
5189// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5190// PPC603E:#define __LDBL_DIG__ 31
5191// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5192// PPC603E:#define __LDBL_HAS_DENORM__ 1
5193// PPC603E:#define __LDBL_HAS_INFINITY__ 1
5194// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
5195// PPC603E:#define __LDBL_MANT_DIG__ 106
5196// PPC603E:#define __LDBL_MAX_10_EXP__ 308
5197// PPC603E:#define __LDBL_MAX_EXP__ 1024
5198// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5199// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
5200// PPC603E:#define __LDBL_MIN_EXP__ (-968)
5201// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5202// PPC603E:#define __LONG_DOUBLE_128__ 1
5203// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
5204// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005205// PPC603E-NOT:#define __LP64__
Hal Finkel6b984f02012-07-03 16:51:04 +00005206// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005207// PPC603E:#define __POINTER_WIDTH__ 32
5208// PPC603E:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005209// PPC603E:#define __PPC__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005210// PPC603E:#define __PTRDIFF_TYPE__ long int
5211// PPC603E:#define __PTRDIFF_WIDTH__ 32
5212// PPC603E:#define __REGISTER_PREFIX__
5213// PPC603E:#define __SCHAR_MAX__ 127
5214// PPC603E:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005215// PPC603E:#define __SIG_ATOMIC_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005216// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
5217// PPC603E:#define __SIZEOF_DOUBLE__ 8
5218// PPC603E:#define __SIZEOF_FLOAT__ 4
5219// PPC603E:#define __SIZEOF_INT__ 4
5220// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
5221// PPC603E:#define __SIZEOF_LONG_LONG__ 8
5222// PPC603E:#define __SIZEOF_LONG__ 4
5223// PPC603E:#define __SIZEOF_POINTER__ 4
5224// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
5225// PPC603E:#define __SIZEOF_SHORT__ 2
5226// PPC603E:#define __SIZEOF_SIZE_T__ 4
5227// PPC603E:#define __SIZEOF_WCHAR_T__ 4
5228// PPC603E:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00005229// PPC603E:#define __SIZE_MAX__ 4294967295UL
Hal Finkel6b984f02012-07-03 16:51:04 +00005230// PPC603E:#define __SIZE_TYPE__ long unsigned int
5231// PPC603E:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005232// PPC603E-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005233// PPC603E:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005234// PPC603E:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005235// PPC603E:#define __UINT16_TYPE__ unsigned short
5236// PPC603E:#define __UINT32_C_SUFFIX__ U
5237// PPC603E:#define __UINT32_MAX__ 4294967295U
5238// PPC603E:#define __UINT32_TYPE__ unsigned int
5239// PPC603E:#define __UINT64_C_SUFFIX__ ULL
5240// PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
5241// PPC603E:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005242// PPC603E:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005243// PPC603E:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005244// PPC603E:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005245// PPC603E:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005246// PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
Hal Finkel6b984f02012-07-03 16:51:04 +00005247// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005248// PPC603E:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005249// PPC603E:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005250// PPC603E:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005251// PPC603E:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005252// PPC603E:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005253// PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
5254// PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
5255// PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
5256// PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5257// PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005258// PPC603E:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005259// PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005260// PPC603E:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005261// PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
5262// PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
5263// PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
5264// PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5265// PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005266// PPC603E:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005267// PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005268// PPC603E:#define __USER_LABEL_PREFIX__
Hal Finkel6b984f02012-07-03 16:51:04 +00005269// PPC603E:#define __WCHAR_MAX__ 2147483647
5270// PPC603E:#define __WCHAR_TYPE__ int
5271// PPC603E:#define __WCHAR_WIDTH__ 32
5272// PPC603E:#define __WINT_TYPE__ int
5273// PPC603E:#define __WINT_WIDTH__ 32
5274// PPC603E:#define __powerpc__ 1
5275// PPC603E:#define __ppc__ 1
5276//
James Y Knightc97efa42016-02-11 16:51:29 +00005277// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64 %s
Richard Smith59139022016-09-30 22:41:36 +00005278// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64 -check-prefix PPC64-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00005279//
5280// PPC64:#define _ARCH_PPC 1
5281// PPC64:#define _ARCH_PPC64 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005282// PPC64:#define _ARCH_PPCGR 1
5283// PPC64:#define _ARCH_PPCSQ 1
5284// PPC64:#define _ARCH_PWR4 1
5285// PPC64:#define _ARCH_PWR5 1
5286// PPC64:#define _ARCH_PWR6 1
Hal Finkel8eb59282012-06-11 22:35:19 +00005287// PPC64:#define _ARCH_PWR7 1
Chris Lattnere963d092009-10-29 04:55:36 +00005288// PPC64:#define _BIG_ENDIAN 1
5289// PPC64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005290// PPC64:#define __BIGGEST_ALIGNMENT__ 8
Chris Lattnere963d092009-10-29 04:55:36 +00005291// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005292// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00005293// PPC64:#define __CHAR16_TYPE__ unsigned short
5294// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00005295// PPC64:#define __CHAR_BIT__ 8
5296// PPC64:#define __CHAR_UNSIGNED__ 1
5297// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5298// PPC64:#define __DBL_DIG__ 15
5299// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5300// PPC64:#define __DBL_HAS_DENORM__ 1
5301// PPC64:#define __DBL_HAS_INFINITY__ 1
5302// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
5303// PPC64:#define __DBL_MANT_DIG__ 53
5304// PPC64:#define __DBL_MAX_10_EXP__ 308
5305// PPC64:#define __DBL_MAX_EXP__ 1024
5306// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
5307// PPC64:#define __DBL_MIN_10_EXP__ (-307)
5308// PPC64:#define __DBL_MIN_EXP__ (-1021)
5309// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005310// PPC64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00005311// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5312// PPC64:#define __FLT_DIG__ 6
5313// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
5314// PPC64:#define __FLT_EVAL_METHOD__ 0
5315// PPC64:#define __FLT_HAS_DENORM__ 1
5316// PPC64:#define __FLT_HAS_INFINITY__ 1
5317// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
5318// PPC64:#define __FLT_MANT_DIG__ 24
5319// PPC64:#define __FLT_MAX_10_EXP__ 38
5320// PPC64:#define __FLT_MAX_EXP__ 128
5321// PPC64:#define __FLT_MAX__ 3.40282347e+38F
5322// PPC64:#define __FLT_MIN_10_EXP__ (-37)
5323// PPC64:#define __FLT_MIN_EXP__ (-125)
5324// PPC64:#define __FLT_MIN__ 1.17549435e-38F
5325// PPC64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005326// PPC64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005327// PPC64:#define __INT16_FMTd__ "hd"
5328// PPC64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005329// PPC64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005330// PPC64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005331// PPC64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005332// PPC64:#define __INT32_FMTd__ "d"
5333// PPC64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005334// PPC64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00005335// PPC64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00005336// PPC64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005337// PPC64:#define __INT64_FMTd__ "ld"
5338// PPC64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005339// PPC64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00005340// PPC64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005341// PPC64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005342// PPC64:#define __INT8_FMTd__ "hhd"
5343// PPC64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005344// PPC64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005345// PPC64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005346// PPC64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005347// PPC64:#define __INTMAX_FMTd__ "ld"
5348// PPC64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00005349// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005350// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00005351// PPC64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005352// PPC64:#define __INTPTR_FMTd__ "ld"
5353// PPC64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005354// PPC64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005355// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005356// PPC64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005357// PPC64:#define __INT_FAST16_FMTd__ "hd"
5358// PPC64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005359// PPC64:#define __INT_FAST16_MAX__ 32767
5360// PPC64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005361// PPC64:#define __INT_FAST32_FMTd__ "d"
5362// PPC64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005363// PPC64:#define __INT_FAST32_MAX__ 2147483647
5364// PPC64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005365// PPC64:#define __INT_FAST64_FMTd__ "ld"
5366// PPC64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005367// PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
5368// PPC64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005369// PPC64:#define __INT_FAST8_FMTd__ "hhd"
5370// PPC64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005371// PPC64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005372// PPC64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005373// PPC64:#define __INT_LEAST16_FMTd__ "hd"
5374// PPC64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005375// PPC64:#define __INT_LEAST16_MAX__ 32767
5376// PPC64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005377// PPC64:#define __INT_LEAST32_FMTd__ "d"
5378// PPC64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005379// PPC64:#define __INT_LEAST32_MAX__ 2147483647
5380// PPC64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005381// PPC64:#define __INT_LEAST64_FMTd__ "ld"
5382// PPC64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005383// PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5384// PPC64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005385// PPC64:#define __INT_LEAST8_FMTd__ "hhd"
5386// PPC64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005387// PPC64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005388// PPC64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005389// PPC64:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005390// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5391// PPC64:#define __LDBL_DIG__ 31
5392// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005393// PPC64:#define __LDBL_HAS_DENORM__ 1
5394// PPC64:#define __LDBL_HAS_INFINITY__ 1
5395// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005396// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00005397// PPC64:#define __LDBL_MAX_10_EXP__ 308
5398// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00005399// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5400// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
5401// PPC64:#define __LDBL_MIN_EXP__ (-968)
5402// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnere963d092009-10-29 04:55:36 +00005403// PPC64:#define __LONG_DOUBLE_128__ 1
5404// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5405// PPC64:#define __LONG_MAX__ 9223372036854775807L
5406// PPC64:#define __LP64__ 1
5407// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005408// PPC64:#define __POINTER_WIDTH__ 64
5409// PPC64:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005410// PPC64:#define __PPC64__ 1
5411// PPC64:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00005412// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00005413// PPC64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005414// PPC64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005415// PPC64:#define __SCHAR_MAX__ 127
5416// PPC64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005417// PPC64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00005418// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005419// PPC64:#define __SIZEOF_DOUBLE__ 8
5420// PPC64:#define __SIZEOF_FLOAT__ 4
5421// PPC64:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00005422// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00005423// PPC64:#define __SIZEOF_LONG_LONG__ 8
5424// PPC64:#define __SIZEOF_LONG__ 8
5425// PPC64:#define __SIZEOF_POINTER__ 8
5426// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
5427// PPC64:#define __SIZEOF_SHORT__ 2
5428// PPC64:#define __SIZEOF_SIZE_T__ 8
5429// PPC64:#define __SIZEOF_WCHAR_T__ 4
5430// PPC64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005431// PPC64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00005432// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005433// PPC64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005434// PPC64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005435// PPC64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005436// PPC64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005437// PPC64:#define __UINT16_TYPE__ unsigned short
5438// PPC64:#define __UINT32_C_SUFFIX__ U
5439// PPC64:#define __UINT32_MAX__ 4294967295U
5440// PPC64:#define __UINT32_TYPE__ unsigned int
5441// PPC64:#define __UINT64_C_SUFFIX__ UL
5442// PPC64:#define __UINT64_MAX__ 18446744073709551615UL
5443// PPC64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005444// PPC64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005445// PPC64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005446// PPC64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005447// PPC64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005448// PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00005449// PPC64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005450// PPC64:#define __UINTMAX_WIDTH__ 64
5451// PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
5452// PPC64:#define __UINTPTR_TYPE__ long unsigned int
5453// PPC64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005454// PPC64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005455// PPC64:#define __UINT_FAST16_TYPE__ unsigned short
5456// PPC64:#define __UINT_FAST32_MAX__ 4294967295U
5457// PPC64:#define __UINT_FAST32_TYPE__ unsigned int
5458// PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5459// PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005460// PPC64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005461// PPC64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005462// PPC64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005463// PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
5464// PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
5465// PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
5466// PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5467// PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005468// PPC64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005469// PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005470// PPC64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005471// PPC64:#define __WCHAR_MAX__ 2147483647
5472// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005473// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005474// PPC64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005475// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005476// PPC64:#define __ppc64__ 1
5477// PPC64:#define __ppc__ 1
5478//
James Y Knightc97efa42016-02-11 16:51:29 +00005479// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64LE %s
Bill Schmidt778d3872013-07-26 01:36:11 +00005480//
5481// PPC64LE:#define _ARCH_PPC 1
5482// PPC64LE:#define _ARCH_PPC64 1
5483// PPC64LE:#define _ARCH_PPCGR 1
5484// PPC64LE:#define _ARCH_PPCSQ 1
5485// PPC64LE:#define _ARCH_PWR4 1
5486// PPC64LE:#define _ARCH_PWR5 1
5487// PPC64LE:#define _ARCH_PWR5X 1
5488// PPC64LE:#define _ARCH_PWR6 1
5489// PPC64LE:#define _ARCH_PWR6X 1
5490// PPC64LE:#define _ARCH_PWR7 1
Will Schmidt5fa50f3c2014-03-24 21:09:16 +00005491// PPC64LE:#define _CALL_ELF 2
Bill Schmidt778d3872013-07-26 01:36:11 +00005492// PPC64LE:#define _LITTLE_ENDIAN 1
5493// PPC64LE:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005494// PPC64LE:#define __BIGGEST_ALIGNMENT__ 8
Bill Schmidt778d3872013-07-26 01:36:11 +00005495// PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5496// PPC64LE:#define __CHAR16_TYPE__ unsigned short
5497// PPC64LE:#define __CHAR32_TYPE__ unsigned int
5498// PPC64LE:#define __CHAR_BIT__ 8
5499// PPC64LE:#define __CHAR_UNSIGNED__ 1
5500// PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5501// PPC64LE:#define __DBL_DIG__ 15
5502// PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
5503// PPC64LE:#define __DBL_HAS_DENORM__ 1
5504// PPC64LE:#define __DBL_HAS_INFINITY__ 1
5505// PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
5506// PPC64LE:#define __DBL_MANT_DIG__ 53
5507// PPC64LE:#define __DBL_MAX_10_EXP__ 308
5508// PPC64LE:#define __DBL_MAX_EXP__ 1024
5509// PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
5510// PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
5511// PPC64LE:#define __DBL_MIN_EXP__ (-1021)
5512// PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005513// PPC64LE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Bill Schmidt778d3872013-07-26 01:36:11 +00005514// PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5515// PPC64LE:#define __FLT_DIG__ 6
5516// PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
5517// PPC64LE:#define __FLT_EVAL_METHOD__ 0
5518// PPC64LE:#define __FLT_HAS_DENORM__ 1
5519// PPC64LE:#define __FLT_HAS_INFINITY__ 1
5520// PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
5521// PPC64LE:#define __FLT_MANT_DIG__ 24
5522// PPC64LE:#define __FLT_MAX_10_EXP__ 38
5523// PPC64LE:#define __FLT_MAX_EXP__ 128
5524// PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
5525// PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
5526// PPC64LE:#define __FLT_MIN_EXP__ (-125)
5527// PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
5528// PPC64LE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005529// PPC64LE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005530// PPC64LE:#define __INT16_FMTd__ "hd"
5531// PPC64LE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005532// PPC64LE:#define __INT16_MAX__ 32767
Bill Schmidt778d3872013-07-26 01:36:11 +00005533// PPC64LE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005534// PPC64LE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005535// PPC64LE:#define __INT32_FMTd__ "d"
5536// PPC64LE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005537// PPC64LE:#define __INT32_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005538// PPC64LE:#define __INT32_TYPE__ int
5539// PPC64LE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005540// PPC64LE:#define __INT64_FMTd__ "ld"
5541// PPC64LE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005542// PPC64LE:#define __INT64_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005543// PPC64LE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005544// PPC64LE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005545// PPC64LE:#define __INT8_FMTd__ "hhd"
5546// PPC64LE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005547// PPC64LE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005548// PPC64LE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005549// PPC64LE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005550// PPC64LE:#define __INTMAX_FMTd__ "ld"
5551// PPC64LE:#define __INTMAX_FMTi__ "li"
Bill Schmidt778d3872013-07-26 01:36:11 +00005552// PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
5553// PPC64LE:#define __INTMAX_TYPE__ long int
5554// PPC64LE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005555// PPC64LE:#define __INTPTR_FMTd__ "ld"
5556// PPC64LE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005557// PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005558// PPC64LE:#define __INTPTR_TYPE__ long int
5559// PPC64LE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005560// PPC64LE:#define __INT_FAST16_FMTd__ "hd"
5561// PPC64LE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005562// PPC64LE:#define __INT_FAST16_MAX__ 32767
5563// PPC64LE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005564// PPC64LE:#define __INT_FAST32_FMTd__ "d"
5565// PPC64LE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005566// PPC64LE:#define __INT_FAST32_MAX__ 2147483647
5567// PPC64LE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005568// PPC64LE:#define __INT_FAST64_FMTd__ "ld"
5569// PPC64LE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005570// PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
5571// PPC64LE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005572// PPC64LE:#define __INT_FAST8_FMTd__ "hhd"
5573// PPC64LE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005574// PPC64LE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005575// PPC64LE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005576// PPC64LE:#define __INT_LEAST16_FMTd__ "hd"
5577// PPC64LE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005578// PPC64LE:#define __INT_LEAST16_MAX__ 32767
5579// PPC64LE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005580// PPC64LE:#define __INT_LEAST32_FMTd__ "d"
5581// PPC64LE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005582// PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
5583// PPC64LE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005584// PPC64LE:#define __INT_LEAST64_FMTd__ "ld"
5585// PPC64LE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005586// PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
5587// PPC64LE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005588// PPC64LE:#define __INT_LEAST8_FMTd__ "hhd"
5589// PPC64LE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005590// PPC64LE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005591// PPC64LE:#define __INT_LEAST8_TYPE__ signed char
Bill Schmidt778d3872013-07-26 01:36:11 +00005592// PPC64LE:#define __INT_MAX__ 2147483647
5593// PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5594// PPC64LE:#define __LDBL_DIG__ 31
5595// PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5596// PPC64LE:#define __LDBL_HAS_DENORM__ 1
5597// PPC64LE:#define __LDBL_HAS_INFINITY__ 1
5598// PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
5599// PPC64LE:#define __LDBL_MANT_DIG__ 106
5600// PPC64LE:#define __LDBL_MAX_10_EXP__ 308
5601// PPC64LE:#define __LDBL_MAX_EXP__ 1024
5602// PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5603// PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
5604// PPC64LE:#define __LDBL_MIN_EXP__ (-968)
5605// PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5606// PPC64LE:#define __LITTLE_ENDIAN__ 1
5607// PPC64LE:#define __LONG_DOUBLE_128__ 1
5608// PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
5609// PPC64LE:#define __LONG_MAX__ 9223372036854775807L
5610// PPC64LE:#define __LP64__ 1
5611// PPC64LE:#define __NATURAL_ALIGNMENT__ 1
5612// PPC64LE:#define __POINTER_WIDTH__ 64
5613// PPC64LE:#define __POWERPC__ 1
5614// PPC64LE:#define __PPC64__ 1
5615// PPC64LE:#define __PPC__ 1
5616// PPC64LE:#define __PTRDIFF_TYPE__ long int
5617// PPC64LE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005618// PPC64LE:#define __REGISTER_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005619// PPC64LE:#define __SCHAR_MAX__ 127
5620// PPC64LE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005621// PPC64LE:#define __SIG_ATOMIC_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005622// PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
5623// PPC64LE:#define __SIZEOF_DOUBLE__ 8
5624// PPC64LE:#define __SIZEOF_FLOAT__ 4
5625// PPC64LE:#define __SIZEOF_INT__ 4
5626// PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
5627// PPC64LE:#define __SIZEOF_LONG_LONG__ 8
5628// PPC64LE:#define __SIZEOF_LONG__ 8
5629// PPC64LE:#define __SIZEOF_POINTER__ 8
5630// PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
5631// PPC64LE:#define __SIZEOF_SHORT__ 2
5632// PPC64LE:#define __SIZEOF_SIZE_T__ 8
5633// PPC64LE:#define __SIZEOF_WCHAR_T__ 4
5634// PPC64LE:#define __SIZEOF_WINT_T__ 4
5635// PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
5636// PPC64LE:#define __SIZE_TYPE__ long unsigned int
5637// PPC64LE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005638// PPC64LE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005639// PPC64LE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005640// PPC64LE:#define __UINT16_TYPE__ unsigned short
5641// PPC64LE:#define __UINT32_C_SUFFIX__ U
5642// PPC64LE:#define __UINT32_MAX__ 4294967295U
5643// PPC64LE:#define __UINT32_TYPE__ unsigned int
5644// PPC64LE:#define __UINT64_C_SUFFIX__ UL
5645// PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
5646// PPC64LE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005647// PPC64LE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005648// PPC64LE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005649// PPC64LE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005650// PPC64LE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005651// PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
Bill Schmidt778d3872013-07-26 01:36:11 +00005652// PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005653// PPC64LE:#define __UINTMAX_WIDTH__ 64
5654// PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
5655// PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
5656// PPC64LE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005657// PPC64LE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005658// PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
5659// PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
5660// PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
5661// PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5662// PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005663// PPC64LE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005664// PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005665// PPC64LE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005666// PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
5667// PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
5668// PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
5669// PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5670// PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005671// PPC64LE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005672// PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005673// PPC64LE:#define __USER_LABEL_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005674// PPC64LE:#define __WCHAR_MAX__ 2147483647
5675// PPC64LE:#define __WCHAR_TYPE__ int
5676// PPC64LE:#define __WCHAR_WIDTH__ 32
5677// PPC64LE:#define __WINT_TYPE__ int
5678// PPC64LE:#define __WINT_WIDTH__ 32
5679// PPC64LE:#define __ppc64__ 1
5680// PPC64LE:#define __ppc__ 1
5681//
James Y Knightc97efa42016-02-11 16:51:29 +00005682// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu a2q -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCA2Q %s
Hal Finkeldf1e4bf2013-02-01 05:53:33 +00005683//
5684// PPCA2Q:#define _ARCH_A2 1
5685// PPCA2Q:#define _ARCH_A2Q 1
5686// PPCA2Q:#define _ARCH_PPC 1
5687// PPCA2Q:#define _ARCH_PPC64 1
5688// PPCA2Q:#define _ARCH_QP 1
5689//
James Y Knightc97efa42016-02-11 16:51:29 +00005690// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-bgq-linux -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCBGQ %s
Hal Finkeldf1e4bf2013-02-01 05:53:33 +00005691//
5692// PPCBGQ:#define __THW_BLUEGENE__ 1
5693// PPCBGQ:#define __TOS_BGQ__ 1
5694// PPCBGQ:#define __bg__ 1
5695// PPCBGQ:#define __bgq__ 1
5696//
James Y Knightc97efa42016-02-11 16:51:29 +00005697// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu 630 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC630 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005698//
5699// PPC630:#define _ARCH_630 1
5700// PPC630:#define _ARCH_PPC 1
5701// PPC630:#define _ARCH_PPC64 1
5702// PPC630:#define _ARCH_PPCGR 1
5703//
James Y Knightc97efa42016-02-11 16:51:29 +00005704// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr3 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR3 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005705//
5706// PPCPWR3:#define _ARCH_PPC 1
5707// PPCPWR3:#define _ARCH_PPC64 1
5708// PPCPWR3:#define _ARCH_PPCGR 1
5709//
James Y Knightc97efa42016-02-11 16:51:29 +00005710// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power3 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER3 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005711//
5712// PPCPOWER3:#define _ARCH_PPC 1
5713// PPCPOWER3:#define _ARCH_PPC64 1
5714// PPCPOWER3:#define _ARCH_PPCGR 1
5715//
James Y Knightc97efa42016-02-11 16:51:29 +00005716// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr4 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR4 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005717//
5718// PPCPWR4:#define _ARCH_PPC 1
5719// PPCPWR4:#define _ARCH_PPC64 1
5720// PPCPWR4:#define _ARCH_PPCGR 1
5721// PPCPWR4:#define _ARCH_PPCSQ 1
5722// PPCPWR4:#define _ARCH_PWR4 1
5723//
James Y Knightc97efa42016-02-11 16:51:29 +00005724// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power4 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER4 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005725//
5726// PPCPOWER4:#define _ARCH_PPC 1
5727// PPCPOWER4:#define _ARCH_PPC64 1
5728// PPCPOWER4:#define _ARCH_PPCGR 1
5729// PPCPOWER4:#define _ARCH_PPCSQ 1
5730// PPCPOWER4:#define _ARCH_PWR4 1
5731//
James Y Knightc97efa42016-02-11 16:51:29 +00005732// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR5 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005733//
5734// PPCPWR5:#define _ARCH_PPC 1
5735// PPCPWR5:#define _ARCH_PPC64 1
5736// PPCPWR5:#define _ARCH_PPCGR 1
5737// PPCPWR5:#define _ARCH_PPCSQ 1
5738// PPCPWR5:#define _ARCH_PWR4 1
5739// PPCPWR5:#define _ARCH_PWR5 1
5740//
James Y Knightc97efa42016-02-11 16:51:29 +00005741// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power5 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER5 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005742//
5743// PPCPOWER5:#define _ARCH_PPC 1
5744// PPCPOWER5:#define _ARCH_PPC64 1
5745// PPCPOWER5:#define _ARCH_PPCGR 1
5746// PPCPOWER5:#define _ARCH_PPCSQ 1
5747// PPCPOWER5:#define _ARCH_PWR4 1
5748// PPCPOWER5:#define _ARCH_PWR5 1
5749//
James Y Knightc97efa42016-02-11 16:51:29 +00005750// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR5X %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005751//
5752// PPCPWR5X:#define _ARCH_PPC 1
5753// PPCPWR5X:#define _ARCH_PPC64 1
5754// PPCPWR5X:#define _ARCH_PPCGR 1
5755// PPCPWR5X:#define _ARCH_PPCSQ 1
5756// PPCPWR5X:#define _ARCH_PWR4 1
5757// PPCPWR5X:#define _ARCH_PWR5 1
5758// PPCPWR5X:#define _ARCH_PWR5X 1
5759//
James Y Knightc97efa42016-02-11 16:51:29 +00005760// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power5x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER5X %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005761//
5762// PPCPOWER5X:#define _ARCH_PPC 1
5763// PPCPOWER5X:#define _ARCH_PPC64 1
5764// PPCPOWER5X:#define _ARCH_PPCGR 1
5765// PPCPOWER5X:#define _ARCH_PPCSQ 1
5766// PPCPOWER5X:#define _ARCH_PWR4 1
5767// PPCPOWER5X:#define _ARCH_PWR5 1
5768// PPCPOWER5X:#define _ARCH_PWR5X 1
5769//
James Y Knightc97efa42016-02-11 16:51:29 +00005770// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr6 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR6 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005771//
5772// PPCPWR6:#define _ARCH_PPC 1
5773// PPCPWR6:#define _ARCH_PPC64 1
5774// PPCPWR6:#define _ARCH_PPCGR 1
5775// PPCPWR6:#define _ARCH_PPCSQ 1
5776// PPCPWR6:#define _ARCH_PWR4 1
5777// PPCPWR6:#define _ARCH_PWR5 1
5778// PPCPWR6:#define _ARCH_PWR5X 1
5779// PPCPWR6:#define _ARCH_PWR6 1
5780//
James Y Knightc97efa42016-02-11 16:51:29 +00005781// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power6 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER6 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005782//
5783// PPCPOWER6:#define _ARCH_PPC 1
5784// PPCPOWER6:#define _ARCH_PPC64 1
5785// PPCPOWER6:#define _ARCH_PPCGR 1
5786// PPCPOWER6:#define _ARCH_PPCSQ 1
5787// PPCPOWER6:#define _ARCH_PWR4 1
5788// PPCPOWER6:#define _ARCH_PWR5 1
5789// PPCPOWER6:#define _ARCH_PWR5X 1
5790// PPCPOWER6:#define _ARCH_PWR6 1
5791//
James Y Knightc97efa42016-02-11 16:51:29 +00005792// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr6x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR6X %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005793//
5794// PPCPWR6X:#define _ARCH_PPC 1
5795// PPCPWR6X:#define _ARCH_PPC64 1
5796// PPCPWR6X:#define _ARCH_PPCGR 1
5797// PPCPWR6X:#define _ARCH_PPCSQ 1
5798// PPCPWR6X:#define _ARCH_PWR4 1
5799// PPCPWR6X:#define _ARCH_PWR5 1
5800// PPCPWR6X:#define _ARCH_PWR5X 1
5801// PPCPWR6X:#define _ARCH_PWR6 1
5802// PPCPWR6X:#define _ARCH_PWR6X 1
5803//
James Y Knightc97efa42016-02-11 16:51:29 +00005804// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power6x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER6X %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005805//
5806// PPCPOWER6X:#define _ARCH_PPC 1
5807// PPCPOWER6X:#define _ARCH_PPC64 1
5808// PPCPOWER6X:#define _ARCH_PPCGR 1
5809// PPCPOWER6X:#define _ARCH_PPCSQ 1
5810// PPCPOWER6X:#define _ARCH_PWR4 1
5811// PPCPOWER6X:#define _ARCH_PWR5 1
5812// PPCPOWER6X:#define _ARCH_PWR5X 1
5813// PPCPOWER6X:#define _ARCH_PWR6 1
5814// PPCPOWER6X:#define _ARCH_PWR6X 1
5815//
James Y Knightc97efa42016-02-11 16:51:29 +00005816// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR7 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005817//
5818// PPCPWR7:#define _ARCH_PPC 1
5819// PPCPWR7:#define _ARCH_PPC64 1
5820// PPCPWR7:#define _ARCH_PPCGR 1
5821// PPCPWR7:#define _ARCH_PPCSQ 1
5822// PPCPWR7:#define _ARCH_PWR4 1
5823// PPCPWR7:#define _ARCH_PWR5 1
5824// PPCPWR7:#define _ARCH_PWR5X 1
5825// PPCPWR7:#define _ARCH_PWR6 1
5826// PPCPWR7:#define _ARCH_PWR6X 1
5827// PPCPWR7:#define _ARCH_PWR7 1
5828//
James Y Knightc97efa42016-02-11 16:51:29 +00005829// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER7 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005830//
5831// PPCPOWER7:#define _ARCH_PPC 1
5832// PPCPOWER7:#define _ARCH_PPC64 1
5833// PPCPOWER7:#define _ARCH_PPCGR 1
5834// PPCPOWER7:#define _ARCH_PPCSQ 1
5835// PPCPOWER7:#define _ARCH_PWR4 1
5836// PPCPOWER7:#define _ARCH_PWR5 1
5837// PPCPOWER7:#define _ARCH_PWR5X 1
5838// PPCPOWER7:#define _ARCH_PWR6 1
5839// PPCPOWER7:#define _ARCH_PWR6X 1
5840// PPCPOWER7:#define _ARCH_PWR7 1
5841//
James Y Knightc97efa42016-02-11 16:51:29 +00005842// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr8 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR8 %s
Will Schmidtf0487512014-06-26 13:34:10 +00005843//
5844// PPCPWR8:#define _ARCH_PPC 1
5845// PPCPWR8:#define _ARCH_PPC64 1
5846// PPCPWR8:#define _ARCH_PPCGR 1
5847// PPCPWR8:#define _ARCH_PPCSQ 1
5848// PPCPWR8:#define _ARCH_PWR4 1
5849// PPCPWR8:#define _ARCH_PWR5 1
5850// PPCPWR8:#define _ARCH_PWR5X 1
5851// PPCPWR8:#define _ARCH_PWR6 1
5852// PPCPWR8:#define _ARCH_PWR6X 1
5853// PPCPWR8:#define _ARCH_PWR7 1
5854// PPCPWR8:#define _ARCH_PWR8 1
5855//
James Y Knightc97efa42016-02-11 16:51:29 +00005856// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power8 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER8 %s
Will Schmidtf0487512014-06-26 13:34:10 +00005857//
5858// PPCPOWER8:#define _ARCH_PPC 1
5859// PPCPOWER8:#define _ARCH_PPC64 1
5860// PPCPOWER8:#define _ARCH_PPCGR 1
5861// PPCPOWER8:#define _ARCH_PPCSQ 1
5862// PPCPOWER8:#define _ARCH_PWR4 1
5863// PPCPOWER8:#define _ARCH_PWR5 1
5864// PPCPOWER8:#define _ARCH_PWR5X 1
5865// PPCPOWER8:#define _ARCH_PWR6 1
5866// PPCPOWER8:#define _ARCH_PWR6X 1
5867// PPCPOWER8:#define _ARCH_PWR7 1
5868// PPCPOWER8:#define _ARCH_PWR8 1
5869//
Nemanja Ivanovicd99f21b2016-05-09 18:58:02 +00005870// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr9 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR9 %s
5871//
5872// PPCPWR9:#define _ARCH_PPC 1
5873// PPCPWR9:#define _ARCH_PPC64 1
5874// PPCPWR9:#define _ARCH_PPCGR 1
5875// PPCPWR9:#define _ARCH_PPCSQ 1
5876// PPCPWR9:#define _ARCH_PWR4 1
5877// PPCPWR9:#define _ARCH_PWR5 1
5878// PPCPWR9:#define _ARCH_PWR5X 1
5879// PPCPWR9:#define _ARCH_PWR6 1
5880// PPCPWR9:#define _ARCH_PWR6X 1
5881// PPCPWR9:#define _ARCH_PWR7 1
5882// PPCPWR9:#define _ARCH_PWR9 1
5883//
5884// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power9 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER9 %s
5885//
5886// PPCPOWER9:#define _ARCH_PPC 1
5887// PPCPOWER9:#define _ARCH_PPC64 1
5888// PPCPOWER9:#define _ARCH_PPCGR 1
5889// PPCPOWER9:#define _ARCH_PPCSQ 1
5890// PPCPOWER9:#define _ARCH_PWR4 1
5891// PPCPOWER9:#define _ARCH_PWR5 1
5892// PPCPOWER9:#define _ARCH_PWR5X 1
5893// PPCPOWER9:#define _ARCH_PWR6 1
5894// PPCPOWER9:#define _ARCH_PWR6X 1
5895// PPCPOWER9:#define _ARCH_PWR7 1
5896// PPCPOWER9:#define _ARCH_PWR9 1
5897//
Nemanja Ivanovicbb1ea2d2016-05-09 08:52:33 +00005898// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-feature +float128 -target-cpu power8 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-FLOAT128 %s
5899// PPC-FLOAT128:#define __FLOAT128__ 1
5900//
James Y Knightc97efa42016-02-11 16:51:29 +00005901// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-LINUX %s
Nico Weber3435ede2012-01-31 02:07:33 +00005902//
5903// PPC64-LINUX:#define _ARCH_PPC 1
5904// PPC64-LINUX:#define _ARCH_PPC64 1
5905// PPC64-LINUX:#define _BIG_ENDIAN 1
5906// PPC64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005907// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 8
Nico Weber3435ede2012-01-31 02:07:33 +00005908// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005909// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00005910// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
5911// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
5912// PPC64-LINUX:#define __CHAR_BIT__ 8
5913// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
5914// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5915// PPC64-LINUX:#define __DBL_DIG__ 15
5916// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
5917// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
5918// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
5919// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
5920// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
5921// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
5922// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
5923// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
5924// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
5925// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
5926// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005927// PPC64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00005928// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5929// PPC64-LINUX:#define __FLT_DIG__ 6
5930// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
5931// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
5932// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
5933// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
5934// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
5935// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
5936// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
5937// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
5938// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
5939// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
5940// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
5941// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
5942// PPC64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005943// PPC64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005944// PPC64-LINUX:#define __INT16_FMTd__ "hd"
5945// PPC64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005946// PPC64-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00005947// PPC64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005948// PPC64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005949// PPC64-LINUX:#define __INT32_FMTd__ "d"
5950// PPC64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005951// PPC64-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005952// PPC64-LINUX:#define __INT32_TYPE__ int
5953// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005954// PPC64-LINUX:#define __INT64_FMTd__ "ld"
5955// PPC64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005956// PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00005957// PPC64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005958// PPC64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005959// PPC64-LINUX:#define __INT8_FMTd__ "hhd"
5960// PPC64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005961// PPC64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005962// PPC64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005963// PPC64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005964// PPC64-LINUX:#define __INTMAX_FMTd__ "ld"
5965// PPC64-LINUX:#define __INTMAX_FMTi__ "li"
Nico Weber3435ede2012-01-31 02:07:33 +00005966// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
5967// PPC64-LINUX:#define __INTMAX_TYPE__ long int
5968// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005969// PPC64-LINUX:#define __INTPTR_FMTd__ "ld"
5970// PPC64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005971// PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00005972// PPC64-LINUX:#define __INTPTR_TYPE__ long int
5973// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005974// PPC64-LINUX:#define __INT_FAST16_FMTd__ "hd"
5975// PPC64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005976// PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
5977// PPC64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005978// PPC64-LINUX:#define __INT_FAST32_FMTd__ "d"
5979// PPC64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005980// PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
5981// PPC64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005982// PPC64-LINUX:#define __INT_FAST64_FMTd__ "ld"
5983// PPC64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005984// PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
5985// PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005986// PPC64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
5987// PPC64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005988// PPC64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005989// PPC64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005990// PPC64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
5991// PPC64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005992// PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
5993// PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005994// PPC64-LINUX:#define __INT_LEAST32_FMTd__ "d"
5995// PPC64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005996// PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
5997// PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005998// PPC64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
5999// PPC64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006000// PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
6001// PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006002// PPC64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6003// PPC64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006004// PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006005// PPC64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006006// PPC64-LINUX:#define __INT_MAX__ 2147483647
6007// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6008// PPC64-LINUX:#define __LDBL_DIG__ 31
6009// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6010// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
6011// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
6012// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6013// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
6014// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
6015// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
6016// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6017// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6018// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
6019// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6020// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
6021// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6022// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
6023// PPC64-LINUX:#define __LP64__ 1
6024// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006025// PPC64-LINUX:#define __POINTER_WIDTH__ 64
6026// PPC64-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006027// PPC64-LINUX:#define __PPC64__ 1
6028// PPC64-LINUX:#define __PPC__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006029// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
6030// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
6031// PPC64-LINUX:#define __REGISTER_PREFIX__
6032// PPC64-LINUX:#define __SCHAR_MAX__ 127
6033// PPC64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006034// PPC64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006035// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6036// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
6037// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
6038// PPC64-LINUX:#define __SIZEOF_INT__ 4
6039// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6040// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
6041// PPC64-LINUX:#define __SIZEOF_LONG__ 8
6042// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
6043// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
6044// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
6045// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
6046// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
6047// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006048// PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006049// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
6050// PPC64-LINUX:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006051// PPC64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006052// PPC64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006053// PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
6054// PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
6055// PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
6056// PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
6057// PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
6058// PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
6059// PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006060// PPC64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006061// PPC64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006062// PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006063// PPC64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00006064// PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006065// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006066// PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
6067// PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
6068// PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
6069// PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006070// PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006071// PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6072// PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6073// PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6074// PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6075// PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006076// PPC64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006077// PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006078// PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006079// PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6080// PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6081// PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6082// PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6083// PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006084// PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006085// PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006086// PPC64-LINUX:#define __USER_LABEL_PREFIX__
6087// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
6088// PPC64-LINUX:#define __WCHAR_TYPE__ int
6089// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
6090// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
6091// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
6092// PPC64-LINUX:#define __WINT_WIDTH__ 32
6093// PPC64-LINUX:#define __powerpc64__ 1
6094// PPC64-LINUX:#define __powerpc__ 1
6095// PPC64-LINUX:#define __ppc64__ 1
6096// PPC64-LINUX:#define __ppc__ 1
Ulrich Weigand8afad612014-07-28 13:17:52 +00006097
James Y Knightc97efa42016-02-11 16:51:29 +00006098// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6099// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -target-abi elfv1 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6100// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -target-abi elfv1-qpx < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6101// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu -target-abi elfv2 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6102// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6103// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu -target-abi elfv1 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6104// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu -target-abi elfv2 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
Ulrich Weigand8afad612014-07-28 13:17:52 +00006105// PPC64-ELFv1:#define _CALL_ELF 1
6106// PPC64-ELFv2:#define _CALL_ELF 2
Nico Weber3435ede2012-01-31 02:07:33 +00006107//
James Y Knightc97efa42016-02-11 16:51:29 +00006108// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC %s
Chris Lattnere963d092009-10-29 04:55:36 +00006109//
6110// PPC:#define _ARCH_PPC 1
6111// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006112// PPC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006113// PPC:#define __BIGGEST_ALIGNMENT__ 8
Chris Lattnere963d092009-10-29 04:55:36 +00006114// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006115// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006116// PPC:#define __CHAR16_TYPE__ unsigned short
6117// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006118// PPC:#define __CHAR_BIT__ 8
6119// PPC:#define __CHAR_UNSIGNED__ 1
6120// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6121// PPC:#define __DBL_DIG__ 15
6122// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6123// PPC:#define __DBL_HAS_DENORM__ 1
6124// PPC:#define __DBL_HAS_INFINITY__ 1
6125// PPC:#define __DBL_HAS_QUIET_NAN__ 1
6126// PPC:#define __DBL_MANT_DIG__ 53
6127// PPC:#define __DBL_MAX_10_EXP__ 308
6128// PPC:#define __DBL_MAX_EXP__ 1024
6129// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
6130// PPC:#define __DBL_MIN_10_EXP__ (-307)
6131// PPC:#define __DBL_MIN_EXP__ (-1021)
6132// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006133// PPC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006134// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6135// PPC:#define __FLT_DIG__ 6
6136// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
6137// PPC:#define __FLT_EVAL_METHOD__ 0
6138// PPC:#define __FLT_HAS_DENORM__ 1
6139// PPC:#define __FLT_HAS_INFINITY__ 1
6140// PPC:#define __FLT_HAS_QUIET_NAN__ 1
6141// PPC:#define __FLT_MANT_DIG__ 24
6142// PPC:#define __FLT_MAX_10_EXP__ 38
6143// PPC:#define __FLT_MAX_EXP__ 128
6144// PPC:#define __FLT_MAX__ 3.40282347e+38F
6145// PPC:#define __FLT_MIN_10_EXP__ (-37)
6146// PPC:#define __FLT_MIN_EXP__ (-125)
6147// PPC:#define __FLT_MIN__ 1.17549435e-38F
6148// PPC:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006149// PPC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006150// PPC:#define __INT16_FMTd__ "hd"
6151// PPC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006152// PPC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006153// PPC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006154// PPC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006155// PPC:#define __INT32_FMTd__ "d"
6156// PPC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006157// PPC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006158// PPC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006159// PPC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006160// PPC:#define __INT64_FMTd__ "lld"
6161// PPC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006162// PPC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006163// PPC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006164// PPC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006165// PPC:#define __INT8_FMTd__ "hhd"
6166// PPC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006167// PPC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006168// PPC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006169// PPC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006170// PPC:#define __INTMAX_FMTd__ "lld"
6171// PPC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006172// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006173// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006174// PPC:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006175// PPC:#define __INTPTR_FMTd__ "ld"
6176// PPC:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006177// PPC:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00006178// PPC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006179// PPC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006180// PPC:#define __INT_FAST16_FMTd__ "hd"
6181// PPC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006182// PPC:#define __INT_FAST16_MAX__ 32767
6183// PPC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006184// PPC:#define __INT_FAST32_FMTd__ "d"
6185// PPC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006186// PPC:#define __INT_FAST32_MAX__ 2147483647
6187// PPC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006188// PPC:#define __INT_FAST64_FMTd__ "lld"
6189// PPC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006190// PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6191// PPC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006192// PPC:#define __INT_FAST8_FMTd__ "hhd"
6193// PPC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006194// PPC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006195// PPC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006196// PPC:#define __INT_LEAST16_FMTd__ "hd"
6197// PPC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006198// PPC:#define __INT_LEAST16_MAX__ 32767
6199// PPC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006200// PPC:#define __INT_LEAST32_FMTd__ "d"
6201// PPC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006202// PPC:#define __INT_LEAST32_MAX__ 2147483647
6203// PPC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006204// PPC:#define __INT_LEAST64_FMTd__ "lld"
6205// PPC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006206// PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6207// PPC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006208// PPC:#define __INT_LEAST8_FMTd__ "hhd"
6209// PPC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006210// PPC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006211// PPC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006212// PPC:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006213// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6214// PPC:#define __LDBL_DIG__ 31
6215// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006216// PPC:#define __LDBL_HAS_DENORM__ 1
6217// PPC:#define __LDBL_HAS_INFINITY__ 1
6218// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006219// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00006220// PPC:#define __LDBL_MAX_10_EXP__ 308
6221// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00006222// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6223// PPC:#define __LDBL_MIN_10_EXP__ (-291)
6224// PPC:#define __LDBL_MIN_EXP__ (-968)
6225// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnere963d092009-10-29 04:55:36 +00006226// PPC:#define __LONG_DOUBLE_128__ 1
6227// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6228// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006229// PPC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00006230// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00006231// PPC:#define __POINTER_WIDTH__ 32
6232// PPC:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006233// PPC:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00006234// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00006235// PPC:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006236// PPC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006237// PPC:#define __SCHAR_MAX__ 127
6238// PPC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006239// PPC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00006240// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00006241// PPC:#define __SIZEOF_DOUBLE__ 8
6242// PPC:#define __SIZEOF_FLOAT__ 4
6243// PPC:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00006244// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00006245// PPC:#define __SIZEOF_LONG_LONG__ 8
6246// PPC:#define __SIZEOF_LONG__ 4
6247// PPC:#define __SIZEOF_POINTER__ 4
6248// PPC:#define __SIZEOF_PTRDIFF_T__ 4
6249// PPC:#define __SIZEOF_SHORT__ 2
6250// PPC:#define __SIZEOF_SIZE_T__ 4
6251// PPC:#define __SIZEOF_WCHAR_T__ 4
6252// PPC:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00006253// PPC:#define __SIZE_MAX__ 4294967295UL
Chris Lattnere963d092009-10-29 04:55:36 +00006254// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00006255// PPC:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006256// PPC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006257// PPC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006258// PPC:#define __UINT16_TYPE__ unsigned short
6259// PPC:#define __UINT32_C_SUFFIX__ U
6260// PPC:#define __UINT32_MAX__ 4294967295U
6261// PPC:#define __UINT32_TYPE__ unsigned int
6262// PPC:#define __UINT64_C_SUFFIX__ ULL
6263// PPC:#define __UINT64_MAX__ 18446744073709551615ULL
6264// PPC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006265// PPC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006266// PPC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006267// PPC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006268// PPC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006269// PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00006270// PPC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006271// PPC:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006272// PPC:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006273// PPC:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006274// PPC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006275// PPC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006276// PPC:#define __UINT_FAST16_TYPE__ unsigned short
6277// PPC:#define __UINT_FAST32_MAX__ 4294967295U
6278// PPC:#define __UINT_FAST32_TYPE__ unsigned int
6279// PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6280// PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006281// PPC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006282// PPC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006283// PPC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006284// PPC:#define __UINT_LEAST16_TYPE__ unsigned short
6285// PPC:#define __UINT_LEAST32_MAX__ 4294967295U
6286// PPC:#define __UINT_LEAST32_TYPE__ unsigned int
6287// PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6288// PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006289// PPC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006290// PPC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006291// PPC:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006292// PPC:#define __WCHAR_MAX__ 2147483647
6293// PPC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00006294// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006295// PPC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00006296// PPC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006297// PPC:#define __ppc__ 1
6298//
James Y Knightc97efa42016-02-11 16:51:29 +00006299// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC-LINUX %s
Nico Weber3435ede2012-01-31 02:07:33 +00006300//
6301// PPC-LINUX:#define _ARCH_PPC 1
6302// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006303// PPC-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006304// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 8
Nico Weber3435ede2012-01-31 02:07:33 +00006305// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006306// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006307// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
6308// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
6309// PPC-LINUX:#define __CHAR_BIT__ 8
6310// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
6311// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6312// PPC-LINUX:#define __DBL_DIG__ 15
6313// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6314// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
6315// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
6316// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6317// PPC-LINUX:#define __DBL_MANT_DIG__ 53
6318// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
6319// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
6320// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6321// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6322// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
6323// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006324// PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006325// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6326// PPC-LINUX:#define __FLT_DIG__ 6
6327// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6328// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
6329// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
6330// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
6331// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6332// PPC-LINUX:#define __FLT_MANT_DIG__ 24
6333// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
6334// PPC-LINUX:#define __FLT_MAX_EXP__ 128
6335// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6336// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6337// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
6338// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6339// PPC-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006340// PPC-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006341// PPC-LINUX:#define __INT16_FMTd__ "hd"
6342// PPC-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006343// PPC-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006344// PPC-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006345// PPC-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006346// PPC-LINUX:#define __INT32_FMTd__ "d"
6347// PPC-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006348// PPC-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006349// PPC-LINUX:#define __INT32_TYPE__ int
6350// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006351// PPC-LINUX:#define __INT64_FMTd__ "lld"
6352// PPC-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006353// PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Nico Weber3435ede2012-01-31 02:07:33 +00006354// PPC-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006355// PPC-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006356// PPC-LINUX:#define __INT8_FMTd__ "hhd"
6357// PPC-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006358// PPC-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006359// PPC-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006360// PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006361// PPC-LINUX:#define __INTMAX_FMTd__ "lld"
6362// PPC-LINUX:#define __INTMAX_FMTi__ "lli"
Nico Weber3435ede2012-01-31 02:07:33 +00006363// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
6364// PPC-LINUX:#define __INTMAX_TYPE__ long long int
6365// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006366// PPC-LINUX:#define __INTPTR_FMTd__ "d"
6367// PPC-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006368// PPC-LINUX:#define __INTPTR_MAX__ 2147483647
Hal Finkel26908382012-03-02 20:54:36 +00006369// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006370// PPC-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006371// PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
6372// PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006373// PPC-LINUX:#define __INT_FAST16_MAX__ 32767
6374// PPC-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006375// PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
6376// PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006377// PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
6378// PPC-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006379// PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
6380// PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006381// PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
6382// PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006383// PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6384// PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006385// PPC-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006386// PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006387// PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6388// PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006389// PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
6390// PPC-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006391// PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
6392// PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006393// PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6394// PPC-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006395// PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
6396// PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006397// PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6398// PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006399// PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6400// PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006401// PPC-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006402// PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006403// PPC-LINUX:#define __INT_MAX__ 2147483647
6404// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6405// PPC-LINUX:#define __LDBL_DIG__ 31
6406// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6407// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
6408// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
6409// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6410// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
6411// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
6412// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
6413// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6414// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6415// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
6416// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6417// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
6418// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6419// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006420// PPC-LINUX-NOT:#define __LP64__
Nico Weber3435ede2012-01-31 02:07:33 +00006421// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006422// PPC-LINUX:#define __POINTER_WIDTH__ 32
6423// PPC-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006424// PPC-LINUX:#define __PPC__ 1
Hal Finkel26908382012-03-02 20:54:36 +00006425// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006426// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
6427// PPC-LINUX:#define __REGISTER_PREFIX__
6428// PPC-LINUX:#define __SCHAR_MAX__ 127
6429// PPC-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006430// PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006431// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6432// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
6433// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
6434// PPC-LINUX:#define __SIZEOF_INT__ 4
6435// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6436// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
6437// PPC-LINUX:#define __SIZEOF_LONG__ 4
6438// PPC-LINUX:#define __SIZEOF_POINTER__ 4
6439// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
6440// PPC-LINUX:#define __SIZEOF_SHORT__ 2
6441// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
6442// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
6443// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006444// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
Nico Weber3435ede2012-01-31 02:07:33 +00006445// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
6446// PPC-LINUX:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006447// PPC-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006448// PPC-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006449// PPC-LINUX:#define __UINT16_TYPE__ unsigned short
6450// PPC-LINUX:#define __UINT32_C_SUFFIX__ U
6451// PPC-LINUX:#define __UINT32_MAX__ 4294967295U
6452// PPC-LINUX:#define __UINT32_TYPE__ unsigned int
6453// PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
6454// PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
6455// PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006456// PPC-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006457// PPC-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006458// PPC-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006459// PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006460// PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Nico Weber3435ede2012-01-31 02:07:33 +00006461// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006462// PPC-LINUX:#define __UINTMAX_WIDTH__ 64
6463// PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
6464// PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
6465// PPC-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006466// PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006467// PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6468// PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6469// PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6470// PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6471// PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006472// PPC-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006473// PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006474// PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006475// PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6476// PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6477// PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6478// PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6479// PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006480// PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006481// PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006482// PPC-LINUX:#define __USER_LABEL_PREFIX__
6483// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
6484// PPC-LINUX:#define __WCHAR_TYPE__ int
6485// PPC-LINUX:#define __WCHAR_WIDTH__ 32
6486// PPC-LINUX:#define __WINT_TYPE__ unsigned int
6487// PPC-LINUX:#define __WINT_UNSIGNED__ 1
6488// PPC-LINUX:#define __WINT_WIDTH__ 32
6489// PPC-LINUX:#define __powerpc__ 1
6490// PPC-LINUX:#define __ppc__ 1
6491//
James Y Knightc97efa42016-02-11 16:51:29 +00006492// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC-DARWIN %s
David Fang072d47b2013-05-16 17:51:48 +00006493//
6494// PPC-DARWIN:#define _ARCH_PPC 1
6495// PPC-DARWIN:#define _BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00006496// PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
David Fang072d47b2013-05-16 17:51:48 +00006497// PPC-DARWIN:#define __BIG_ENDIAN__ 1
6498// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6499// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
6500// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
6501// PPC-DARWIN:#define __CHAR_BIT__ 8
6502// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6503// PPC-DARWIN:#define __DBL_DIG__ 15
6504// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
6505// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
6506// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
6507// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
6508// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
6509// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
6510// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
6511// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
6512// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
6513// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
6514// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006515// PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
David Fang072d47b2013-05-16 17:51:48 +00006516// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6517// PPC-DARWIN:#define __FLT_DIG__ 6
6518// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
6519// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
6520// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
6521// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
6522// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
6523// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
6524// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
6525// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
6526// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
6527// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
6528// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
6529// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
6530// PPC-DARWIN:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006531// PPC-DARWIN:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006532// PPC-DARWIN:#define __INT16_FMTd__ "hd"
6533// PPC-DARWIN:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006534// PPC-DARWIN:#define __INT16_MAX__ 32767
David Fang072d47b2013-05-16 17:51:48 +00006535// PPC-DARWIN:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006536// PPC-DARWIN:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006537// PPC-DARWIN:#define __INT32_FMTd__ "d"
6538// PPC-DARWIN:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006539// PPC-DARWIN:#define __INT32_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006540// PPC-DARWIN:#define __INT32_TYPE__ int
6541// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006542// PPC-DARWIN:#define __INT64_FMTd__ "lld"
6543// PPC-DARWIN:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006544// PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
David Fang072d47b2013-05-16 17:51:48 +00006545// PPC-DARWIN:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006546// PPC-DARWIN:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006547// PPC-DARWIN:#define __INT8_FMTd__ "hhd"
6548// PPC-DARWIN:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006549// PPC-DARWIN:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006550// PPC-DARWIN:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006551// PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006552// PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
6553// PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
David Fang072d47b2013-05-16 17:51:48 +00006554// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
6555// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
6556// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006557// PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
6558// PPC-DARWIN:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006559// PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
David Fang072d47b2013-05-16 17:51:48 +00006560// PPC-DARWIN:#define __INTPTR_TYPE__ long int
6561// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006562// PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
6563// PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006564// PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
6565// PPC-DARWIN:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006566// PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
6567// PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006568// PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
6569// PPC-DARWIN:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006570// PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
6571// PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006572// PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
6573// PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006574// PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
6575// PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006576// PPC-DARWIN:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006577// PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006578// PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
6579// PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006580// PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
6581// PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006582// PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
6583// PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006584// PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
6585// PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006586// PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
6587// PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006588// PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6589// PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006590// PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
6591// PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006592// PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006593// PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
David Fang072d47b2013-05-16 17:51:48 +00006594// PPC-DARWIN:#define __INT_MAX__ 2147483647
6595// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6596// PPC-DARWIN:#define __LDBL_DIG__ 31
6597// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6598// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
6599// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
6600// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
6601// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
6602// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
6603// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
6604// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6605// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
6606// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
6607// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6608// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
6609// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
6610// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
6611// PPC-DARWIN:#define __MACH__ 1
6612// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
6613// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
6614// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
6615// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
6616// PPC-DARWIN:#define __POINTER_WIDTH__ 32
6617// PPC-DARWIN:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006618// PPC-DARWIN:#define __PPC__ 1
David Fang072d47b2013-05-16 17:51:48 +00006619// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
6620// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006621// PPC-DARWIN:#define __REGISTER_PREFIX__
David Fang072d47b2013-05-16 17:51:48 +00006622// PPC-DARWIN:#define __SCHAR_MAX__ 127
6623// PPC-DARWIN:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006624// PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006625// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
6626// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
6627// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
6628// PPC-DARWIN:#define __SIZEOF_INT__ 4
6629// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
6630// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
6631// PPC-DARWIN:#define __SIZEOF_LONG__ 4
6632// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
6633// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
6634// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
6635// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
6636// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
6637// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
6638// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
6639// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
6640// PPC-DARWIN:#define __SIZE_WIDTH__ 32
6641// PPC-DARWIN:#define __STDC_HOSTED__ 0
Richard Smithab506ad2014-10-20 23:26:58 +00006642// PPC-DARWIN:#define __STDC_VERSION__ 201112L
David Fang072d47b2013-05-16 17:51:48 +00006643// PPC-DARWIN:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006644// PPC-DARWIN:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006645// PPC-DARWIN:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006646// PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
6647// PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
6648// PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
6649// PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
6650// PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
6651// PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
6652// PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006653// PPC-DARWIN:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006654// PPC-DARWIN:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006655// PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006656// PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006657// PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
David Fang072d47b2013-05-16 17:51:48 +00006658// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006659// PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006660// PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006661// PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006662// PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006663// PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006664// PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
6665// PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
6666// PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
6667// PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6668// PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006669// PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006670// PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006671// PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006672// PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
6673// PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
6674// PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
6675// PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6676// PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006677// PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006678// PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
David Fang072d47b2013-05-16 17:51:48 +00006679// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
6680// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
6681// PPC-DARWIN:#define __WCHAR_TYPE__ int
6682// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
6683// PPC-DARWIN:#define __WINT_TYPE__ int
6684// PPC-DARWIN:#define __WINT_WIDTH__ 32
6685// PPC-DARWIN:#define __powerpc__ 1
6686// PPC-DARWIN:#define __ppc__ 1
6687//
James Y Knightc97efa42016-02-11 16:51:29 +00006688// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
6689// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=r600 -target-cpu caicos < /dev/null | FileCheck -match-full-lines --check-prefix AMDGPU %s
Tom Stellard22041372015-07-17 13:16:52 +00006690//
Matt Arsenaultf333de32016-09-07 07:08:02 +00006691// AMDGPU:#define __ENDIAN_LITTLE__ 1
Tom Stellard22041372015-07-17 13:16:52 +00006692// AMDGPU:#define cl_khr_byte_addressable_store 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006693// AMDGCN:#define cl_khr_fp64 1
Tom Stellard22041372015-07-17 13:16:52 +00006694// AMDGPU:#define cl_khr_global_int32_base_atomics 1
6695// AMDGPU:#define cl_khr_global_int32_extended_atomics 1
6696// AMDGPU:#define cl_khr_local_int32_base_atomics 1
6697// AMDGPU:#define cl_khr_local_int32_extended_atomics 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006698
James Y Knightc97efa42016-02-11 16:51:29 +00006699// RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix S390X %s
Richard Smith59139022016-09-30 22:41:36 +00006700// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix S390X -check-prefix S390X-CXX %s
Ulrich Weigand47445072013-05-06 16:26:41 +00006701//
Tim Northovera6a19f12015-02-06 01:25:07 +00006702// S390X:#define __BIGGEST_ALIGNMENT__ 8
Ulrich Weigand47445072013-05-06 16:26:41 +00006703// S390X:#define __CHAR16_TYPE__ unsigned short
6704// S390X:#define __CHAR32_TYPE__ unsigned int
6705// S390X:#define __CHAR_BIT__ 8
6706// S390X:#define __CHAR_UNSIGNED__ 1
6707// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6708// S390X:#define __DBL_DIG__ 15
6709// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
6710// S390X:#define __DBL_HAS_DENORM__ 1
6711// S390X:#define __DBL_HAS_INFINITY__ 1
6712// S390X:#define __DBL_HAS_QUIET_NAN__ 1
6713// S390X:#define __DBL_MANT_DIG__ 53
6714// S390X:#define __DBL_MAX_10_EXP__ 308
6715// S390X:#define __DBL_MAX_EXP__ 1024
6716// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
6717// S390X:#define __DBL_MIN_10_EXP__ (-307)
6718// S390X:#define __DBL_MIN_EXP__ (-1021)
6719// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006720// S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ulrich Weigand47445072013-05-06 16:26:41 +00006721// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6722// S390X:#define __FLT_DIG__ 6
6723// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
6724// S390X:#define __FLT_EVAL_METHOD__ 0
6725// S390X:#define __FLT_HAS_DENORM__ 1
6726// S390X:#define __FLT_HAS_INFINITY__ 1
6727// S390X:#define __FLT_HAS_QUIET_NAN__ 1
6728// S390X:#define __FLT_MANT_DIG__ 24
6729// S390X:#define __FLT_MAX_10_EXP__ 38
6730// S390X:#define __FLT_MAX_EXP__ 128
6731// S390X:#define __FLT_MAX__ 3.40282347e+38F
6732// S390X:#define __FLT_MIN_10_EXP__ (-37)
6733// S390X:#define __FLT_MIN_EXP__ (-125)
6734// S390X:#define __FLT_MIN__ 1.17549435e-38F
6735// S390X:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006736// S390X:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006737// S390X:#define __INT16_FMTd__ "hd"
6738// S390X:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006739// S390X:#define __INT16_MAX__ 32767
Ulrich Weigand47445072013-05-06 16:26:41 +00006740// S390X:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006741// S390X:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006742// S390X:#define __INT32_FMTd__ "d"
6743// S390X:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006744// S390X:#define __INT32_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00006745// S390X:#define __INT32_TYPE__ int
Ulrich Weigand881497a2015-03-30 13:50:21 +00006746// S390X:#define __INT64_C_SUFFIX__ L
6747// S390X:#define __INT64_FMTd__ "ld"
6748// S390X:#define __INT64_FMTi__ "li"
6749// S390X:#define __INT64_MAX__ 9223372036854775807L
6750// S390X:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00006751// S390X:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006752// S390X:#define __INT8_FMTd__ "hhd"
6753// S390X:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006754// S390X:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006755// S390X:#define __INT8_TYPE__ signed char
Ulrich Weigand881497a2015-03-30 13:50:21 +00006756// S390X:#define __INTMAX_C_SUFFIX__ L
6757// S390X:#define __INTMAX_FMTd__ "ld"
6758// S390X:#define __INTMAX_FMTi__ "li"
6759// S390X:#define __INTMAX_MAX__ 9223372036854775807L
6760// S390X:#define __INTMAX_TYPE__ long int
Ulrich Weigand47445072013-05-06 16:26:41 +00006761// S390X:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006762// S390X:#define __INTPTR_FMTd__ "ld"
6763// S390X:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006764// S390X:#define __INTPTR_MAX__ 9223372036854775807L
Ulrich Weigand47445072013-05-06 16:26:41 +00006765// S390X:#define __INTPTR_TYPE__ long int
6766// S390X:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006767// S390X:#define __INT_FAST16_FMTd__ "hd"
6768// S390X:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006769// S390X:#define __INT_FAST16_MAX__ 32767
6770// S390X:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006771// S390X:#define __INT_FAST32_FMTd__ "d"
6772// S390X:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006773// S390X:#define __INT_FAST32_MAX__ 2147483647
6774// S390X:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006775// S390X:#define __INT_FAST64_FMTd__ "ld"
6776// S390X:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006777// S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
6778// S390X:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006779// S390X:#define __INT_FAST8_FMTd__ "hhd"
6780// S390X:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006781// S390X:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006782// S390X:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006783// S390X:#define __INT_LEAST16_FMTd__ "hd"
6784// S390X:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006785// S390X:#define __INT_LEAST16_MAX__ 32767
6786// S390X:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006787// S390X:#define __INT_LEAST32_FMTd__ "d"
6788// S390X:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006789// S390X:#define __INT_LEAST32_MAX__ 2147483647
6790// S390X:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006791// S390X:#define __INT_LEAST64_FMTd__ "ld"
6792// S390X:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006793// S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
6794// S390X:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006795// S390X:#define __INT_LEAST8_FMTd__ "hhd"
6796// S390X:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006797// S390X:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006798// S390X:#define __INT_LEAST8_TYPE__ signed char
Ulrich Weigand47445072013-05-06 16:26:41 +00006799// S390X:#define __INT_MAX__ 2147483647
6800// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
6801// S390X:#define __LDBL_DIG__ 33
6802// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
6803// S390X:#define __LDBL_HAS_DENORM__ 1
6804// S390X:#define __LDBL_HAS_INFINITY__ 1
6805// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
6806// S390X:#define __LDBL_MANT_DIG__ 113
6807// S390X:#define __LDBL_MAX_10_EXP__ 4932
6808// S390X:#define __LDBL_MAX_EXP__ 16384
6809// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
6810// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
6811// S390X:#define __LDBL_MIN_EXP__ (-16381)
6812// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
6813// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
6814// S390X:#define __LONG_MAX__ 9223372036854775807L
6815// S390X:#define __NO_INLINE__ 1
6816// S390X:#define __POINTER_WIDTH__ 64
6817// S390X:#define __PTRDIFF_TYPE__ long int
6818// S390X:#define __PTRDIFF_WIDTH__ 64
6819// S390X:#define __SCHAR_MAX__ 127
6820// S390X:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006821// S390X:#define __SIG_ATOMIC_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00006822// S390X:#define __SIG_ATOMIC_WIDTH__ 32
6823// S390X:#define __SIZEOF_DOUBLE__ 8
6824// S390X:#define __SIZEOF_FLOAT__ 4
6825// S390X:#define __SIZEOF_INT__ 4
6826// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
6827// S390X:#define __SIZEOF_LONG_LONG__ 8
6828// S390X:#define __SIZEOF_LONG__ 8
6829// S390X:#define __SIZEOF_POINTER__ 8
6830// S390X:#define __SIZEOF_PTRDIFF_T__ 8
6831// S390X:#define __SIZEOF_SHORT__ 2
6832// S390X:#define __SIZEOF_SIZE_T__ 8
6833// S390X:#define __SIZEOF_WCHAR_T__ 4
6834// S390X:#define __SIZEOF_WINT_T__ 4
6835// S390X:#define __SIZE_TYPE__ long unsigned int
6836// S390X:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00006837// S390X-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00006838// S390X:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006839// S390X:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006840// S390X:#define __UINT16_TYPE__ unsigned short
6841// S390X:#define __UINT32_C_SUFFIX__ U
6842// S390X:#define __UINT32_MAX__ 4294967295U
6843// S390X:#define __UINT32_TYPE__ unsigned int
Ulrich Weigand881497a2015-03-30 13:50:21 +00006844// S390X:#define __UINT64_C_SUFFIX__ UL
6845// S390X:#define __UINT64_MAX__ 18446744073709551615UL
6846// S390X:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006847// S390X:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006848// S390X:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006849// S390X:#define __UINT8_TYPE__ unsigned char
Ulrich Weigand881497a2015-03-30 13:50:21 +00006850// S390X:#define __UINTMAX_C_SUFFIX__ UL
6851// S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
6852// S390X:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006853// S390X:#define __UINTMAX_WIDTH__ 64
6854// S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
6855// S390X:#define __UINTPTR_TYPE__ long unsigned int
6856// S390X:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006857// S390X:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006858// S390X:#define __UINT_FAST16_TYPE__ unsigned short
6859// S390X:#define __UINT_FAST32_MAX__ 4294967295U
6860// S390X:#define __UINT_FAST32_TYPE__ unsigned int
6861// S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6862// S390X:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006863// S390X:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006864// S390X:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006865// S390X:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006866// S390X:#define __UINT_LEAST16_TYPE__ unsigned short
6867// S390X:#define __UINT_LEAST32_MAX__ 4294967295U
6868// S390X:#define __UINT_LEAST32_TYPE__ unsigned int
6869// S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6870// S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006871// S390X:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006872// S390X:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006873// S390X:#define __USER_LABEL_PREFIX__
Ulrich Weigand47445072013-05-06 16:26:41 +00006874// S390X:#define __WCHAR_MAX__ 2147483647
6875// S390X:#define __WCHAR_TYPE__ int
6876// S390X:#define __WCHAR_WIDTH__ 32
6877// S390X:#define __WINT_TYPE__ int
6878// S390X:#define __WINT_WIDTH__ 32
6879// S390X:#define __s390__ 1
6880// S390X:#define __s390x__ 1
6881//
James Y Knightb214cbc2016-03-04 19:00:41 +00006882// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
6883// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
6884// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
6885// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
Richard Smith59139022016-09-30 22:41:36 +00006886// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT -check-prefix SPARC-DEFAULT-CXX %s
6887// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD -check-prefix SPARC-NETOPENBSD-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00006888//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006889// SPARC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006890// SPARC:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00006891// SPARC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006892// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006893// SPARC:#define __CHAR16_TYPE__ unsigned short
6894// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006895// SPARC:#define __CHAR_BIT__ 8
6896// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6897// SPARC:#define __DBL_DIG__ 15
6898// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6899// SPARC:#define __DBL_HAS_DENORM__ 1
6900// SPARC:#define __DBL_HAS_INFINITY__ 1
6901// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
6902// SPARC:#define __DBL_MANT_DIG__ 53
6903// SPARC:#define __DBL_MAX_10_EXP__ 308
6904// SPARC:#define __DBL_MAX_EXP__ 1024
6905// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
6906// SPARC:#define __DBL_MIN_10_EXP__ (-307)
6907// SPARC:#define __DBL_MIN_EXP__ (-1021)
6908// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006909// SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006910// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6911// SPARC:#define __FLT_DIG__ 6
6912// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
6913// SPARC:#define __FLT_EVAL_METHOD__ 0
6914// SPARC:#define __FLT_HAS_DENORM__ 1
6915// SPARC:#define __FLT_HAS_INFINITY__ 1
6916// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
6917// SPARC:#define __FLT_MANT_DIG__ 24
6918// SPARC:#define __FLT_MAX_10_EXP__ 38
6919// SPARC:#define __FLT_MAX_EXP__ 128
6920// SPARC:#define __FLT_MAX__ 3.40282347e+38F
6921// SPARC:#define __FLT_MIN_10_EXP__ (-37)
6922// SPARC:#define __FLT_MIN_EXP__ (-125)
6923// SPARC:#define __FLT_MIN__ 1.17549435e-38F
6924// SPARC:#define __FLT_RADIX__ 2
Douglas Katzman13f4a912016-11-09 15:43:51 +00006925// SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
James Y Knightc97efa42016-02-11 16:51:29 +00006926// SPARC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006927// SPARC:#define __INT16_FMTd__ "hd"
6928// SPARC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006929// SPARC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006930// SPARC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006931// SPARC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006932// SPARC:#define __INT32_FMTd__ "d"
6933// SPARC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006934// SPARC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006935// SPARC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006936// SPARC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006937// SPARC:#define __INT64_FMTd__ "lld"
6938// SPARC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006939// SPARC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006940// SPARC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006941// SPARC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006942// SPARC:#define __INT8_FMTd__ "hhd"
6943// SPARC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006944// SPARC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006945// SPARC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006946// SPARC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006947// SPARC:#define __INTMAX_FMTd__ "lld"
6948// SPARC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006949// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006950// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006951// SPARC:#define __INTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00006952// SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
6953// SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
6954// SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
6955// SPARC-DEFAULT:#define __INTPTR_TYPE__ int
6956// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
6957// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
6958// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
6959// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006960// SPARC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006961// SPARC:#define __INT_FAST16_FMTd__ "hd"
6962// SPARC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006963// SPARC:#define __INT_FAST16_MAX__ 32767
6964// SPARC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006965// SPARC:#define __INT_FAST32_FMTd__ "d"
6966// SPARC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006967// SPARC:#define __INT_FAST32_MAX__ 2147483647
6968// SPARC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006969// SPARC:#define __INT_FAST64_FMTd__ "lld"
6970// SPARC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006971// SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6972// SPARC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006973// SPARC:#define __INT_FAST8_FMTd__ "hhd"
6974// SPARC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006975// SPARC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006976// SPARC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006977// SPARC:#define __INT_LEAST16_FMTd__ "hd"
6978// SPARC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006979// SPARC:#define __INT_LEAST16_MAX__ 32767
6980// SPARC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006981// SPARC:#define __INT_LEAST32_FMTd__ "d"
6982// SPARC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006983// SPARC:#define __INT_LEAST32_MAX__ 2147483647
6984// SPARC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006985// SPARC:#define __INT_LEAST64_FMTd__ "lld"
6986// SPARC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006987// SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6988// SPARC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006989// SPARC:#define __INT_LEAST8_FMTd__ "hhd"
6990// SPARC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006991// SPARC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006992// SPARC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006993// SPARC:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006994// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006995// SPARC:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006996// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00006997// SPARC:#define __LDBL_HAS_DENORM__ 1
6998// SPARC:#define __LDBL_HAS_INFINITY__ 1
6999// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
7000// SPARC:#define __LDBL_MANT_DIG__ 53
7001// SPARC:#define __LDBL_MAX_10_EXP__ 308
7002// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007003// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00007004// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
7005// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007006// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00007007// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
7008// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007009// SPARC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007010// SPARC:#define __POINTER_WIDTH__ 32
James Y Knightb214cbc2016-03-04 19:00:41 +00007011// SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
7012// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007013// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00007014// SPARC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007015// SPARC:#define __SCHAR_MAX__ 127
7016// SPARC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007017// SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007018// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007019// SPARC:#define __SIZEOF_DOUBLE__ 8
7020// SPARC:#define __SIZEOF_FLOAT__ 4
7021// SPARC:#define __SIZEOF_INT__ 4
7022// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
7023// SPARC:#define __SIZEOF_LONG_LONG__ 8
7024// SPARC:#define __SIZEOF_LONG__ 4
7025// SPARC:#define __SIZEOF_POINTER__ 4
7026// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
7027// SPARC:#define __SIZEOF_SHORT__ 2
7028// SPARC:#define __SIZEOF_SIZE_T__ 4
7029// SPARC:#define __SIZEOF_WCHAR_T__ 4
7030// SPARC:#define __SIZEOF_WINT_T__ 4
James Y Knightb214cbc2016-03-04 19:00:41 +00007031// SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
7032// SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
7033// SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
7034// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007035// SPARC:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007036// SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
7037// SPARC-NETOPENBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007038// SPARC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007039// SPARC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007040// SPARC:#define __UINT16_TYPE__ unsigned short
7041// SPARC:#define __UINT32_C_SUFFIX__ U
7042// SPARC:#define __UINT32_MAX__ 4294967295U
7043// SPARC:#define __UINT32_TYPE__ unsigned int
7044// SPARC:#define __UINT64_C_SUFFIX__ ULL
7045// SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
7046// SPARC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007047// SPARC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007048// SPARC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007049// SPARC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007050// SPARC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00007051// SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00007052// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007053// SPARC:#define __UINTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007054// SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
7055// SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
7056// SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
7057// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007058// SPARC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007059// SPARC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007060// SPARC:#define __UINT_FAST16_TYPE__ unsigned short
7061// SPARC:#define __UINT_FAST32_MAX__ 4294967295U
7062// SPARC:#define __UINT_FAST32_TYPE__ unsigned int
7063// SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7064// SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007065// SPARC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007066// SPARC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007067// SPARC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007068// SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
7069// SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
7070// SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
7071// SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7072// SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007073// SPARC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007074// SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007075// SPARC:#define __USER_LABEL_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00007076// SPARC:#define __VERSION__ "4.2.1 Compatible{{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +00007077// SPARC:#define __WCHAR_MAX__ 2147483647
7078// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007079// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007080// SPARC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007081// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007082// SPARC:#define __sparc 1
7083// SPARC:#define __sparc__ 1
7084// SPARC:#define __sparcv8 1
7085// SPARC:#define sparc 1
James Y Knight4b4d19e2015-06-04 15:36:29 +00007086
James Y Knightc97efa42016-02-11 16:51:29 +00007087// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE %s
Richard Smith59139022016-09-30 22:41:36 +00007088// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE -check-prefix TCE-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00007089//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007090// TCE-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007091// TCE:#define __BIGGEST_ALIGNMENT__ 4
Robert Lytton2c942c62014-03-10 12:06:29 +00007092// TCE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007093// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007094// TCE:#define __CHAR16_TYPE__ unsigned short
7095// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007096// TCE:#define __CHAR_BIT__ 8
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007097// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnere963d092009-10-29 04:55:36 +00007098// TCE:#define __DBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007099// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnere963d092009-10-29 04:55:36 +00007100// TCE:#define __DBL_HAS_DENORM__ 1
7101// TCE:#define __DBL_HAS_INFINITY__ 1
7102// TCE:#define __DBL_HAS_QUIET_NAN__ 1
7103// TCE:#define __DBL_MANT_DIG__ 24
7104// TCE:#define __DBL_MAX_10_EXP__ 38
7105// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007106// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnere963d092009-10-29 04:55:36 +00007107// TCE:#define __DBL_MIN_10_EXP__ (-37)
7108// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007109// TCE:#define __DBL_MIN__ 1.17549435e-38
Ed Schouten49920992015-02-23 09:12:31 +00007110// TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007111// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7112// TCE:#define __FLT_DIG__ 6
7113// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
7114// TCE:#define __FLT_EVAL_METHOD__ 0
7115// TCE:#define __FLT_HAS_DENORM__ 1
7116// TCE:#define __FLT_HAS_INFINITY__ 1
7117// TCE:#define __FLT_HAS_QUIET_NAN__ 1
7118// TCE:#define __FLT_MANT_DIG__ 24
7119// TCE:#define __FLT_MAX_10_EXP__ 38
7120// TCE:#define __FLT_MAX_EXP__ 128
7121// TCE:#define __FLT_MAX__ 3.40282347e+38F
7122// TCE:#define __FLT_MIN_10_EXP__ (-37)
7123// TCE:#define __FLT_MIN_EXP__ (-125)
7124// TCE:#define __FLT_MIN__ 1.17549435e-38F
7125// TCE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007126// TCE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007127// TCE:#define __INT16_FMTd__ "hd"
7128// TCE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007129// TCE:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007130// TCE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007131// TCE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007132// TCE:#define __INT32_FMTd__ "d"
7133// TCE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007134// TCE:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007135// TCE:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007136// TCE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007137// TCE:#define __INT8_FMTd__ "hhd"
7138// TCE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007139// TCE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007140// TCE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007141// TCE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007142// TCE:#define __INTMAX_FMTd__ "ld"
7143// TCE:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007144// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00007145// TCE:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007146// TCE:#define __INTMAX_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007147// TCE:#define __INTPTR_FMTd__ "d"
7148// TCE:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007149// TCE:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00007150// TCE:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007151// TCE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007152// TCE:#define __INT_FAST16_FMTd__ "hd"
7153// TCE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007154// TCE:#define __INT_FAST16_MAX__ 32767
7155// TCE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007156// TCE:#define __INT_FAST32_FMTd__ "d"
7157// TCE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007158// TCE:#define __INT_FAST32_MAX__ 2147483647
7159// TCE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007160// TCE:#define __INT_FAST8_FMTd__ "hhd"
7161// TCE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007162// TCE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007163// TCE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007164// TCE:#define __INT_LEAST16_FMTd__ "hd"
7165// TCE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007166// TCE:#define __INT_LEAST16_MAX__ 32767
7167// TCE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007168// TCE:#define __INT_LEAST32_FMTd__ "d"
7169// TCE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007170// TCE:#define __INT_LEAST32_MAX__ 2147483647
7171// TCE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007172// TCE:#define __INT_LEAST8_FMTd__ "hhd"
7173// TCE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007174// TCE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007175// TCE:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007176// TCE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007177// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnere963d092009-10-29 04:55:36 +00007178// TCE:#define __LDBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007179// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnere963d092009-10-29 04:55:36 +00007180// TCE:#define __LDBL_HAS_DENORM__ 1
7181// TCE:#define __LDBL_HAS_INFINITY__ 1
7182// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
7183// TCE:#define __LDBL_MANT_DIG__ 24
7184// TCE:#define __LDBL_MAX_10_EXP__ 38
7185// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007186// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnere963d092009-10-29 04:55:36 +00007187// TCE:#define __LDBL_MIN_10_EXP__ (-37)
7188// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007189// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnere963d092009-10-29 04:55:36 +00007190// TCE:#define __LONG_LONG_MAX__ 2147483647LL
7191// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007192// TCE-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007193// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00007194// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00007195// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007196// TCE:#define __SCHAR_MAX__ 127
7197// TCE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007198// TCE:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007199// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007200// TCE:#define __SIZEOF_DOUBLE__ 4
7201// TCE:#define __SIZEOF_FLOAT__ 4
7202// TCE:#define __SIZEOF_INT__ 4
7203// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
7204// TCE:#define __SIZEOF_LONG_LONG__ 4
7205// TCE:#define __SIZEOF_LONG__ 4
7206// TCE:#define __SIZEOF_POINTER__ 4
7207// TCE:#define __SIZEOF_PTRDIFF_T__ 4
7208// TCE:#define __SIZEOF_SHORT__ 2
7209// TCE:#define __SIZEOF_SIZE_T__ 4
7210// TCE:#define __SIZEOF_WCHAR_T__ 4
7211// TCE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007212// TCE:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00007213// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007214// TCE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007215// TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
Chris Lattnere963d092009-10-29 04:55:36 +00007216// TCE:#define __TCE_V1__ 1
7217// TCE:#define __TCE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007218// TCE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007219// TCE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007220// TCE:#define __UINT16_TYPE__ unsigned short
7221// TCE:#define __UINT32_C_SUFFIX__ U
7222// TCE:#define __UINT32_MAX__ 4294967295U
7223// TCE:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007224// TCE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007225// TCE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007226// TCE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007227// TCE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007228// TCE:#define __UINTMAX_MAX__ 4294967295UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007229// TCE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007230// TCE:#define __UINTMAX_WIDTH__ 32
7231// TCE:#define __UINTPTR_MAX__ 4294967295U
7232// TCE:#define __UINTPTR_TYPE__ unsigned int
7233// TCE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007234// TCE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007235// TCE:#define __UINT_FAST16_TYPE__ unsigned short
7236// TCE:#define __UINT_FAST32_MAX__ 4294967295U
7237// TCE:#define __UINT_FAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007238// TCE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007239// TCE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007240// TCE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007241// TCE:#define __UINT_LEAST16_TYPE__ unsigned short
7242// TCE:#define __UINT_LEAST32_MAX__ 4294967295U
7243// TCE:#define __UINT_LEAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007244// TCE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007245// TCE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007246// TCE:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007247// TCE:#define __WCHAR_MAX__ 2147483647
7248// TCE:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007249// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007250// TCE:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007251// TCE:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007252// TCE:#define __tce 1
7253// TCE:#define __tce__ 1
7254// TCE:#define tce 1
7255//
James Y Knightc97efa42016-02-11 16:51:29 +00007256// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64 %s
Richard Smith59139022016-09-30 22:41:36 +00007257// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64 -check-prefix X86_64-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00007258//
7259// X86_64:#define _LP64 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007260// X86_64-NOT:#define _LP32 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007261// X86_64:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007262// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007263// X86_64:#define __CHAR16_TYPE__ unsigned short
7264// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007265// X86_64:#define __CHAR_BIT__ 8
7266// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7267// X86_64:#define __DBL_DIG__ 15
7268// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
7269// X86_64:#define __DBL_HAS_DENORM__ 1
7270// X86_64:#define __DBL_HAS_INFINITY__ 1
7271// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
7272// X86_64:#define __DBL_MANT_DIG__ 53
7273// X86_64:#define __DBL_MAX_10_EXP__ 308
7274// X86_64:#define __DBL_MAX_EXP__ 1024
7275// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
7276// X86_64:#define __DBL_MIN_10_EXP__ (-307)
7277// X86_64:#define __DBL_MIN_EXP__ (-1021)
7278// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007279// X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007280// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7281// X86_64:#define __FLT_DIG__ 6
7282// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
7283// X86_64:#define __FLT_EVAL_METHOD__ 0
7284// X86_64:#define __FLT_HAS_DENORM__ 1
7285// X86_64:#define __FLT_HAS_INFINITY__ 1
7286// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
7287// X86_64:#define __FLT_MANT_DIG__ 24
7288// X86_64:#define __FLT_MAX_10_EXP__ 38
7289// X86_64:#define __FLT_MAX_EXP__ 128
7290// X86_64:#define __FLT_MAX__ 3.40282347e+38F
7291// X86_64:#define __FLT_MIN_10_EXP__ (-37)
7292// X86_64:#define __FLT_MIN_EXP__ (-125)
7293// X86_64:#define __FLT_MIN__ 1.17549435e-38F
7294// X86_64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007295// X86_64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007296// X86_64:#define __INT16_FMTd__ "hd"
7297// X86_64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007298// X86_64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007299// X86_64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007300// X86_64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007301// X86_64:#define __INT32_FMTd__ "d"
7302// X86_64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007303// X86_64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007304// X86_64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007305// X86_64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007306// X86_64:#define __INT64_FMTd__ "ld"
7307// X86_64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007308// X86_64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00007309// X86_64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007310// X86_64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007311// X86_64:#define __INT8_FMTd__ "hhd"
7312// X86_64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007313// X86_64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007314// X86_64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007315// X86_64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007316// X86_64:#define __INTMAX_FMTd__ "ld"
7317// X86_64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007318// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007319// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007320// X86_64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007321// X86_64:#define __INTPTR_FMTd__ "ld"
7322// X86_64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007323// X86_64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007324// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007325// X86_64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007326// X86_64:#define __INT_FAST16_FMTd__ "hd"
7327// X86_64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007328// X86_64:#define __INT_FAST16_MAX__ 32767
7329// X86_64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007330// X86_64:#define __INT_FAST32_FMTd__ "d"
7331// X86_64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007332// X86_64:#define __INT_FAST32_MAX__ 2147483647
7333// X86_64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007334// X86_64:#define __INT_FAST64_FMTd__ "ld"
7335// X86_64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007336// X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
7337// X86_64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007338// X86_64:#define __INT_FAST8_FMTd__ "hhd"
7339// X86_64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007340// X86_64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007341// X86_64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007342// X86_64:#define __INT_LEAST16_FMTd__ "hd"
7343// X86_64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007344// X86_64:#define __INT_LEAST16_MAX__ 32767
7345// X86_64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007346// X86_64:#define __INT_LEAST32_FMTd__ "d"
7347// X86_64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007348// X86_64:#define __INT_LEAST32_MAX__ 2147483647
7349// X86_64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007350// X86_64:#define __INT_LEAST64_FMTd__ "ld"
7351// X86_64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007352// X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
7353// X86_64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007354// X86_64:#define __INT_LEAST8_FMTd__ "hhd"
7355// X86_64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007356// X86_64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007357// X86_64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007358// X86_64:#define __INT_MAX__ 2147483647
7359// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7360// X86_64:#define __LDBL_DIG__ 18
7361// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7362// X86_64:#define __LDBL_HAS_DENORM__ 1
7363// X86_64:#define __LDBL_HAS_INFINITY__ 1
7364// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
7365// X86_64:#define __LDBL_MANT_DIG__ 64
7366// X86_64:#define __LDBL_MAX_10_EXP__ 4932
7367// X86_64:#define __LDBL_MAX_EXP__ 16384
7368// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7369// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
7370// X86_64:#define __LDBL_MIN_EXP__ (-16381)
7371// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7372// X86_64:#define __LITTLE_ENDIAN__ 1
7373// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
7374// X86_64:#define __LONG_MAX__ 9223372036854775807L
7375// X86_64:#define __LP64__ 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007376// X86_64-NOT:#define __ILP32__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007377// X86_64:#define __MMX__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007378// X86_64:#define __NO_MATH_INLINES 1
7379// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00007380// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007381// X86_64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007382// X86_64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007383// X86_64:#define __SCHAR_MAX__ 127
7384// X86_64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007385// X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007386// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007387// X86_64:#define __SIZEOF_DOUBLE__ 8
7388// X86_64:#define __SIZEOF_FLOAT__ 4
7389// X86_64:#define __SIZEOF_INT__ 4
7390// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
7391// X86_64:#define __SIZEOF_LONG_LONG__ 8
7392// X86_64:#define __SIZEOF_LONG__ 8
7393// X86_64:#define __SIZEOF_POINTER__ 8
7394// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
7395// X86_64:#define __SIZEOF_SHORT__ 2
7396// X86_64:#define __SIZEOF_SIZE_T__ 8
7397// X86_64:#define __SIZEOF_WCHAR_T__ 4
7398// X86_64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007399// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00007400// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007401// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00007402// X86_64:#define __SSE2_MATH__ 1
7403// X86_64:#define __SSE2__ 1
7404// X86_64:#define __SSE_MATH__ 1
7405// X86_64:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007406// X86_64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00007407// X86_64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007408// X86_64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007409// X86_64:#define __UINT16_TYPE__ unsigned short
7410// X86_64:#define __UINT32_C_SUFFIX__ U
7411// X86_64:#define __UINT32_MAX__ 4294967295U
7412// X86_64:#define __UINT32_TYPE__ unsigned int
7413// X86_64:#define __UINT64_C_SUFFIX__ UL
7414// X86_64:#define __UINT64_MAX__ 18446744073709551615UL
7415// X86_64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007416// X86_64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007417// X86_64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007418// X86_64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007419// X86_64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007420// X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007421// X86_64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007422// X86_64:#define __UINTMAX_WIDTH__ 64
7423// X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
7424// X86_64:#define __UINTPTR_TYPE__ long unsigned int
7425// X86_64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007426// X86_64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007427// X86_64:#define __UINT_FAST16_TYPE__ unsigned short
7428// X86_64:#define __UINT_FAST32_MAX__ 4294967295U
7429// X86_64:#define __UINT_FAST32_TYPE__ unsigned int
7430// X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7431// X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007432// X86_64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007433// X86_64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007434// X86_64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007435// X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
7436// X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
7437// X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
7438// X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7439// X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007440// X86_64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007441// X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007442// X86_64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007443// X86_64:#define __WCHAR_MAX__ 2147483647
7444// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007445// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007446// X86_64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007447// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007448// X86_64:#define __amd64 1
7449// X86_64:#define __amd64__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007450// X86_64:#define __x86_64 1
7451// X86_64:#define __x86_64__ 1
7452//
James Y Knightc97efa42016-02-11 16:51:29 +00007453// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64h-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64H %s
Bob Wilsona2acb1e2014-08-08 23:46:28 +00007454//
7455// X86_64H:#define __x86_64 1
7456// X86_64H:#define __x86_64__ 1
7457// X86_64H:#define __x86_64h 1
7458// X86_64H:#define __x86_64h__ 1
7459
James Y Knightc97efa42016-02-11 16:51:29 +00007460// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none-gnux32 < /dev/null | FileCheck -match-full-lines -check-prefix X32 %s
Richard Smith59139022016-09-30 22:41:36 +00007461// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-none-none-gnux32 < /dev/null | FileCheck -match-full-lines -check-prefix X32 -check-prefix X32-CXX %s
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007462//
7463// X32:#define _ILP32 1
7464// X32-NOT:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007465// X32:#define __BIGGEST_ALIGNMENT__ 16
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007466// X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7467// X32:#define __CHAR16_TYPE__ unsigned short
7468// X32:#define __CHAR32_TYPE__ unsigned int
7469// X32:#define __CHAR_BIT__ 8
7470// X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7471// X32:#define __DBL_DIG__ 15
7472// X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
7473// X32:#define __DBL_HAS_DENORM__ 1
7474// X32:#define __DBL_HAS_INFINITY__ 1
7475// X32:#define __DBL_HAS_QUIET_NAN__ 1
7476// X32:#define __DBL_MANT_DIG__ 53
7477// X32:#define __DBL_MAX_10_EXP__ 308
7478// X32:#define __DBL_MAX_EXP__ 1024
7479// X32:#define __DBL_MAX__ 1.7976931348623157e+308
7480// X32:#define __DBL_MIN_10_EXP__ (-307)
7481// X32:#define __DBL_MIN_EXP__ (-1021)
7482// X32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007483// X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007484// X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7485// X32:#define __FLT_DIG__ 6
7486// X32:#define __FLT_EPSILON__ 1.19209290e-7F
7487// X32:#define __FLT_EVAL_METHOD__ 0
7488// X32:#define __FLT_HAS_DENORM__ 1
7489// X32:#define __FLT_HAS_INFINITY__ 1
7490// X32:#define __FLT_HAS_QUIET_NAN__ 1
7491// X32:#define __FLT_MANT_DIG__ 24
7492// X32:#define __FLT_MAX_10_EXP__ 38
7493// X32:#define __FLT_MAX_EXP__ 128
7494// X32:#define __FLT_MAX__ 3.40282347e+38F
7495// X32:#define __FLT_MIN_10_EXP__ (-37)
7496// X32:#define __FLT_MIN_EXP__ (-125)
7497// X32:#define __FLT_MIN__ 1.17549435e-38F
7498// X32:#define __FLT_RADIX__ 2
7499// X32:#define __ILP32__ 1
7500// X32-NOT:#define __LP64__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007501// X32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007502// X32:#define __INT16_FMTd__ "hd"
7503// X32:#define __INT16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007504// X32:#define __INT16_MAX__ 32767
7505// X32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007506// X32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007507// X32:#define __INT32_FMTd__ "d"
7508// X32:#define __INT32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007509// X32:#define __INT32_MAX__ 2147483647
7510// X32:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007511// X32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007512// X32:#define __INT64_FMTd__ "lld"
7513// X32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007514// X32:#define __INT64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007515// X32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007516// X32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007517// X32:#define __INT8_FMTd__ "hhd"
7518// X32:#define __INT8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007519// X32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007520// X32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007521// X32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007522// X32:#define __INTMAX_FMTd__ "lld"
7523// X32:#define __INTMAX_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007524// X32:#define __INTMAX_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007525// X32:#define __INTMAX_TYPE__ long long int
7526// X32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007527// X32:#define __INTPTR_FMTd__ "d"
7528// X32:#define __INTPTR_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007529// X32:#define __INTPTR_MAX__ 2147483647
7530// X32:#define __INTPTR_TYPE__ int
7531// X32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007532// X32:#define __INT_FAST16_FMTd__ "hd"
7533// X32:#define __INT_FAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007534// X32:#define __INT_FAST16_MAX__ 32767
7535// X32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007536// X32:#define __INT_FAST32_FMTd__ "d"
7537// X32:#define __INT_FAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007538// X32:#define __INT_FAST32_MAX__ 2147483647
7539// X32:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007540// X32:#define __INT_FAST64_FMTd__ "lld"
7541// X32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007542// X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007543// X32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007544// X32:#define __INT_FAST8_FMTd__ "hhd"
7545// X32:#define __INT_FAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007546// X32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007547// X32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007548// X32:#define __INT_LEAST16_FMTd__ "hd"
7549// X32:#define __INT_LEAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007550// X32:#define __INT_LEAST16_MAX__ 32767
7551// X32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007552// X32:#define __INT_LEAST32_FMTd__ "d"
7553// X32:#define __INT_LEAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007554// X32:#define __INT_LEAST32_MAX__ 2147483647
7555// X32:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007556// X32:#define __INT_LEAST64_FMTd__ "lld"
7557// X32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007558// X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007559// X32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007560// X32:#define __INT_LEAST8_FMTd__ "hhd"
7561// X32:#define __INT_LEAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007562// X32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007563// X32:#define __INT_LEAST8_TYPE__ signed char
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007564// X32:#define __INT_MAX__ 2147483647
7565// X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7566// X32:#define __LDBL_DIG__ 18
7567// X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7568// X32:#define __LDBL_HAS_DENORM__ 1
7569// X32:#define __LDBL_HAS_INFINITY__ 1
7570// X32:#define __LDBL_HAS_QUIET_NAN__ 1
7571// X32:#define __LDBL_MANT_DIG__ 64
7572// X32:#define __LDBL_MAX_10_EXP__ 4932
7573// X32:#define __LDBL_MAX_EXP__ 16384
7574// X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7575// X32:#define __LDBL_MIN_10_EXP__ (-4931)
7576// X32:#define __LDBL_MIN_EXP__ (-16381)
7577// X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7578// X32:#define __LITTLE_ENDIAN__ 1
7579// X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
7580// X32:#define __LONG_MAX__ 2147483647L
7581// X32:#define __MMX__ 1
7582// X32:#define __NO_MATH_INLINES 1
7583// X32:#define __POINTER_WIDTH__ 32
7584// X32:#define __PTRDIFF_TYPE__ int
7585// X32:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00007586// X32:#define __REGISTER_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007587// X32:#define __SCHAR_MAX__ 127
7588// X32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007589// X32:#define __SIG_ATOMIC_MAX__ 2147483647
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007590// X32:#define __SIG_ATOMIC_WIDTH__ 32
7591// X32:#define __SIZEOF_DOUBLE__ 8
7592// X32:#define __SIZEOF_FLOAT__ 4
7593// X32:#define __SIZEOF_INT__ 4
7594// X32:#define __SIZEOF_LONG_DOUBLE__ 16
7595// X32:#define __SIZEOF_LONG_LONG__ 8
7596// X32:#define __SIZEOF_LONG__ 4
7597// X32:#define __SIZEOF_POINTER__ 4
7598// X32:#define __SIZEOF_PTRDIFF_T__ 4
7599// X32:#define __SIZEOF_SHORT__ 2
7600// X32:#define __SIZEOF_SIZE_T__ 4
7601// X32:#define __SIZEOF_WCHAR_T__ 4
7602// X32:#define __SIZEOF_WINT_T__ 4
7603// X32:#define __SIZE_MAX__ 4294967295U
7604// X32:#define __SIZE_TYPE__ unsigned int
7605// X32:#define __SIZE_WIDTH__ 32
7606// X32:#define __SSE2_MATH__ 1
7607// X32:#define __SSE2__ 1
7608// X32:#define __SSE_MATH__ 1
7609// X32:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007610// X32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
James Y Knightc97efa42016-02-11 16:51:29 +00007611// X32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007612// X32:#define __UINT16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007613// X32:#define __UINT16_TYPE__ unsigned short
7614// X32:#define __UINT32_C_SUFFIX__ U
7615// X32:#define __UINT32_MAX__ 4294967295U
7616// X32:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007617// X32:#define __UINT64_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007618// X32:#define __UINT64_MAX__ 18446744073709551615ULL
7619// X32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007620// X32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007621// X32:#define __UINT8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007622// X32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007623// X32:#define __UINTMAX_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007624// X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
7625// X32:#define __UINTMAX_TYPE__ long long unsigned int
7626// X32:#define __UINTMAX_WIDTH__ 64
7627// X32:#define __UINTPTR_MAX__ 4294967295U
7628// X32:#define __UINTPTR_TYPE__ unsigned int
7629// X32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007630// X32:#define __UINT_FAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007631// X32:#define __UINT_FAST16_TYPE__ unsigned short
7632// X32:#define __UINT_FAST32_MAX__ 4294967295U
7633// X32:#define __UINT_FAST32_TYPE__ unsigned int
7634// X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7635// X32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007636// X32:#define __UINT_FAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007637// X32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007638// X32:#define __UINT_LEAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007639// X32:#define __UINT_LEAST16_TYPE__ unsigned short
7640// X32:#define __UINT_LEAST32_MAX__ 4294967295U
7641// X32:#define __UINT_LEAST32_TYPE__ unsigned int
7642// X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7643// X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007644// X32:#define __UINT_LEAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007645// X32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007646// X32:#define __USER_LABEL_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007647// X32:#define __WCHAR_MAX__ 2147483647
7648// X32:#define __WCHAR_TYPE__ int
7649// X32:#define __WCHAR_WIDTH__ 32
7650// X32:#define __WINT_TYPE__ int
7651// X32:#define __WINT_WIDTH__ 32
7652// X32:#define __amd64 1
7653// X32:#define __amd64__ 1
7654// X32:#define __x86_64 1
7655// X32:#define __x86_64__ 1
7656//
James Y Knightc97efa42016-02-11 16:51:29 +00007657// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-unknown-cloudabi < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-CLOUDABI %s
Ed Schoutenf33c6072015-03-11 08:42:46 +00007658//
7659// X86_64-CLOUDABI:#define _LP64 1
7660// X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
7661// X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
7662// X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
7663// X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
7664// X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
7665// X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
7666// X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
7667// X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7668// X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
7669// X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
7670// X86_64-CLOUDABI:#define __CHAR_BIT__ 8
7671// X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
7672// X86_64-CLOUDABI:#define __CloudABI__ 1
7673// X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
7674// X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7675// X86_64-CLOUDABI:#define __DBL_DIG__ 15
7676// X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
7677// X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
7678// X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
7679// X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
7680// X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
7681// X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
7682// X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
7683// X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
7684// X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
7685// X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
7686// X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
7687// X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7688// X86_64-CLOUDABI:#define __ELF__ 1
7689// X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
7690// X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
7691// X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7692// X86_64-CLOUDABI:#define __FLT_DIG__ 6
7693// X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
7694// X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
7695// X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
7696// X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
7697// X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
7698// X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
7699// X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
7700// X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
7701// X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
7702// X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
7703// X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
7704// X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
7705// X86_64-CLOUDABI:#define __FLT_RADIX__ 2
7706// X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
7707// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
7708// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
7709// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
7710// X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
7711// X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
7712// X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
7713// X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
7714// X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
7715// X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
7716// X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
7717// X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
7718// X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
7719// X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
7720// X86_64-CLOUDABI:#define __GNUC__ 4
7721// X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
James Y Knightc97efa42016-02-11 16:51:29 +00007722// X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007723// X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
7724// X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
7725// X86_64-CLOUDABI:#define __INT16_MAX__ 32767
7726// X86_64-CLOUDABI:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007727// X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007728// X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
7729// X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
7730// X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
7731// X86_64-CLOUDABI:#define __INT32_TYPE__ int
7732// X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
7733// X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
7734// X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
7735// X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
7736// X86_64-CLOUDABI:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007737// X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007738// X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
7739// X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
7740// X86_64-CLOUDABI:#define __INT8_MAX__ 127
7741// X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
7742// X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
7743// X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
7744// X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
7745// X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
7746// X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
7747// X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
7748// X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
7749// X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
7750// X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
7751// X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
7752// X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
7753// X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
7754// X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
7755// X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
7756// X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
7757// X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
7758// X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
7759// X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
7760// X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
7761// X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
7762// X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
7763// X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
7764// X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
7765// X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
7766// X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
7767// X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
7768// X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
7769// X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
7770// X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
7771// X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
7772// X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
7773// X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
7774// X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
7775// X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
7776// X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
7777// X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
7778// X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
7779// X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
7780// X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
7781// X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
7782// X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
7783// X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
7784// X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
7785// X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
7786// X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
7787// X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7788// X86_64-CLOUDABI:#define __LDBL_DIG__ 18
7789// X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7790// X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
7791// X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
7792// X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
7793// X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
7794// X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
7795// X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
7796// X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7797// X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
7798// X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
7799// X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7800// X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
7801// X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
7802// X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
7803// X86_64-CLOUDABI:#define __LP64__ 1
7804// X86_64-CLOUDABI:#define __MMX__ 1
7805// X86_64-CLOUDABI:#define __NO_INLINE__ 1
7806// X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
7807// X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
7808// X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
7809// X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
7810// X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
7811// X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
7812// X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
7813// X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
7814// X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
7815// X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
7816// X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007817// X86_64-CLOUDABI:#define __REGISTER_PREFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007818// X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
7819// X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
7820// X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
7821// X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
7822// X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
7823// X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
7824// X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
7825// X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
7826// X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
7827// X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
7828// X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
7829// X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
7830// X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
7831// X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
7832// X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
7833// X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
7834// X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
7835// X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
7836// X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
7837// X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
7838// X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
7839// X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
7840// X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
7841// X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
7842// X86_64-CLOUDABI:#define __SSE2_MATH__ 1
7843// X86_64-CLOUDABI:#define __SSE2__ 1
7844// X86_64-CLOUDABI:#define __SSE_MATH__ 1
7845// X86_64-CLOUDABI:#define __SSE__ 1
7846// X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
7847// X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
7848// X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
7849// X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
7850// X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
7851// X86_64-CLOUDABI:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007852// X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007853// X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
7854// X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
7855// X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
7856// X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
7857// X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
7858// X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
7859// X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
7860// X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
7861// X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
7862// X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
7863// X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
7864// X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
7865// X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
7866// X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
7867// X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
7868// X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
7869// X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
7870// X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
7871// X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
7872// X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007873// X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007874// X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
7875// X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
7876// X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
7877// X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
7878// X86_64-CLOUDABI:#define __UINT8_MAX__ 255
7879// X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
7880// X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
7881// X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
7882// X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
7883// X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
7884// X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
7885// X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
7886// X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
7887// X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
7888// X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
7889// X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
7890// X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
7891// X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
7892// X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
7893// X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
7894// X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
7895// X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
7896// X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
7897// X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
7898// X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
7899// X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
7900// X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
7901// X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
7902// X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
7903// X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
7904// X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
7905// X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
7906// X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
7907// X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
7908// X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
7909// X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
7910// X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
7911// X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7912// X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
7913// X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
7914// X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
7915// X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
7916// X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
7917// X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
7918// X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
7919// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
7920// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
7921// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
7922// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
7923// X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
7924// X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
7925// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
7926// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
7927// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
7928// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
7929// X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
7930// X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
7931// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
7932// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
7933// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
7934// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
7935// X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7936// X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
7937// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
7938// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
7939// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
7940// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
7941// X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
7942// X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00007943// X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
7944// X86_64-CLOUDABI:#define __VERSION__ "4.2.1 Compatible{{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00007945// X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
7946// X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
7947// X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
7948// X86_64-CLOUDABI:#define __WINT_TYPE__ int
7949// X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
7950// X86_64-CLOUDABI:#define __amd64 1
7951// X86_64-CLOUDABI:#define __amd64__ 1
7952// X86_64-CLOUDABI:#define __clang__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007953// X86_64-CLOUDABI:#define __clang_major__ {{.*}}
7954// X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
7955// X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
7956// X86_64-CLOUDABI:#define __clang_version__ {{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00007957// X86_64-CLOUDABI:#define __llvm__ 1
7958// X86_64-CLOUDABI:#define __x86_64 1
7959// X86_64-CLOUDABI:#define __x86_64__ 1
7960//
James Y Knightc97efa42016-02-11 16:51:29 +00007961// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-LINUX %s
Douglas Gregore6d6e512011-01-12 21:19:25 +00007962//
7963// X86_64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007964// X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007965// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00007966// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
7967// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
7968// X86_64-LINUX:#define __CHAR_BIT__ 8
7969// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7970// X86_64-LINUX:#define __DBL_DIG__ 15
7971// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
7972// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
7973// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
7974// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
7975// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
7976// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
7977// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
7978// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
7979// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
7980// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
7981// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007982// X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00007983// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7984// X86_64-LINUX:#define __FLT_DIG__ 6
7985// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
7986// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
7987// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
7988// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
7989// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
7990// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
7991// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
7992// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
7993// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
7994// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
7995// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
7996// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
7997// X86_64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007998// X86_64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007999// X86_64-LINUX:#define __INT16_FMTd__ "hd"
8000// X86_64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008001// X86_64-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00008002// X86_64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008003// X86_64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008004// X86_64-LINUX:#define __INT32_FMTd__ "d"
8005// X86_64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008006// X86_64-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008007// X86_64-LINUX:#define __INT32_TYPE__ int
8008// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008009// X86_64-LINUX:#define __INT64_FMTd__ "ld"
8010// X86_64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008011// X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008012// X86_64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008013// X86_64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008014// X86_64-LINUX:#define __INT8_FMTd__ "hhd"
8015// X86_64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008016// X86_64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008017// X86_64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008018// X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008019// X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
8020// X86_64-LINUX:#define __INTMAX_FMTi__ "li"
Douglas Gregore6d6e512011-01-12 21:19:25 +00008021// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
8022// X86_64-LINUX:#define __INTMAX_TYPE__ long int
8023// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008024// X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
8025// X86_64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008026// X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008027// X86_64-LINUX:#define __INTPTR_TYPE__ long int
8028// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008029// X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
8030// X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008031// X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
8032// X86_64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008033// X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
8034// X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008035// X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
8036// X86_64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008037// X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
8038// X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008039// X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
8040// X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008041// X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
8042// X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008043// X86_64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008044// X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008045// X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
8046// X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008047// X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
8048// X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008049// X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
8050// X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008051// X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
8052// X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008053// X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
8054// X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008055// X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
8056// X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008057// X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
8058// X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008059// X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008060// X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008061// X86_64-LINUX:#define __INT_MAX__ 2147483647
8062// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8063// X86_64-LINUX:#define __LDBL_DIG__ 18
8064// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8065// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
8066// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
8067// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
8068// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
8069// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
8070// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
8071// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8072// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
8073// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
8074// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8075// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
8076// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
8077// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
8078// X86_64-LINUX:#define __LP64__ 1
8079// X86_64-LINUX:#define __MMX__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008080// X86_64-LINUX:#define __NO_MATH_INLINES 1
8081// X86_64-LINUX:#define __POINTER_WIDTH__ 64
8082// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
8083// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008084// X86_64-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008085// X86_64-LINUX:#define __SCHAR_MAX__ 127
8086// X86_64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008087// X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008088// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
8089// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
8090// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
8091// X86_64-LINUX:#define __SIZEOF_INT__ 4
8092// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
8093// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
8094// X86_64-LINUX:#define __SIZEOF_LONG__ 8
8095// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
8096// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
8097// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
8098// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
8099// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
8100// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00008101// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008102// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
8103// X86_64-LINUX:#define __SIZE_WIDTH__ 64
8104// X86_64-LINUX:#define __SSE2_MATH__ 1
8105// X86_64-LINUX:#define __SSE2__ 1
8106// X86_64-LINUX:#define __SSE_MATH__ 1
8107// X86_64-LINUX:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008108// X86_64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008109// X86_64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008110// X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
8111// X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
8112// X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
8113// X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
8114// X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
8115// X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
8116// X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008117// X86_64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008118// X86_64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008119// X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008120// X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008121// X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008122// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008123// X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
8124// X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
8125// X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
8126// X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008127// X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008128// X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
8129// X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
8130// X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
8131// X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8132// X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008133// X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008134// X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008135// X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008136// X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
8137// X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
8138// X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
8139// X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8140// X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008141// X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008142// X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008143// X86_64-LINUX:#define __USER_LABEL_PREFIX__
8144// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
8145// X86_64-LINUX:#define __WCHAR_TYPE__ int
8146// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
8147// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
8148// X86_64-LINUX:#define __WINT_WIDTH__ 32
8149// X86_64-LINUX:#define __amd64 1
8150// X86_64-LINUX:#define __amd64__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008151// X86_64-LINUX:#define __x86_64 1
8152// X86_64-LINUX:#define __x86_64__ 1
8153//
James Y Knightc97efa42016-02-11 16:51:29 +00008154// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-unknown-freebsd9.1 < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-FREEBSD %s
Ed Schoutend0621462013-09-29 07:54:52 +00008155//
Ed Schouten49920992015-02-23 09:12:31 +00008156// X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
8157// X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
Ed Schoutend0621462013-09-29 07:54:52 +00008158// X86_64-FREEBSD:#define __FreeBSD__ 9
8159// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
Ed Schouten49920992015-02-23 09:12:31 +00008160// X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
Ed Schoutend0621462013-09-29 07:54:52 +00008161// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
8162//
James Y Knightc97efa42016-02-11 16:51:29 +00008163// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-NETBSD %s
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008164//
8165// X86_64-NETBSD:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008166// X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008167// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8168// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
8169// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
8170// X86_64-NETBSD:#define __CHAR_BIT__ 8
8171// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8172// X86_64-NETBSD:#define __DBL_DIG__ 15
8173// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
8174// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
8175// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
8176// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
8177// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
8178// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
8179// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
8180// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
8181// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
8182// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
8183// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008184// X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008185// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8186// X86_64-NETBSD:#define __FLT_DIG__ 6
8187// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
8188// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
8189// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
8190// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
8191// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
8192// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
8193// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
8194// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
8195// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
8196// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
8197// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
8198// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
8199// X86_64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008200// X86_64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008201// X86_64-NETBSD:#define __INT16_FMTd__ "hd"
8202// X86_64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008203// X86_64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008204// X86_64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008205// X86_64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008206// X86_64-NETBSD:#define __INT32_FMTd__ "d"
8207// X86_64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008208// X86_64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008209// X86_64-NETBSD:#define __INT32_TYPE__ int
8210// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008211// X86_64-NETBSD:#define __INT64_FMTd__ "ld"
8212// X86_64-NETBSD:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008213// X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008214// X86_64-NETBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008215// X86_64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008216// X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
8217// X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008218// X86_64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008219// X86_64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008220// X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008221// X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
8222// X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008223// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
8224// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
8225// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008226// X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
8227// X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008228// X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008229// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
8230// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008231// X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
8232// X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008233// X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
8234// X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008235// X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
8236// X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008237// X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
8238// X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008239// X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
8240// X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008241// X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
8242// X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008243// X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
8244// X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008245// X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008246// X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008247// X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
8248// X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008249// X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
8250// X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008251// X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
8252// X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008253// X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
8254// X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008255// X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
8256// X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008257// X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
8258// X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008259// X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
8260// X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008261// X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008262// X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008263// X86_64-NETBSD:#define __INT_MAX__ 2147483647
8264// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8265// X86_64-NETBSD:#define __LDBL_DIG__ 18
8266// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8267// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
8268// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
8269// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
8270// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
8271// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
8272// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
8273// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8274// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
8275// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
8276// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8277// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
8278// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
8279// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
8280// X86_64-NETBSD:#define __LP64__ 1
8281// X86_64-NETBSD:#define __MMX__ 1
8282// X86_64-NETBSD:#define __NO_MATH_INLINES 1
8283// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
8284// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
8285// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008286// X86_64-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008287// X86_64-NETBSD:#define __SCHAR_MAX__ 127
8288// X86_64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008289// X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008290// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
8291// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
8292// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
8293// X86_64-NETBSD:#define __SIZEOF_INT__ 4
8294// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
8295// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
8296// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
8297// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
8298// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
8299// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
8300// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
8301// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
8302// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
8303// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
8304// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
8305// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
8306// X86_64-NETBSD:#define __SSE2_MATH__ 1
8307// X86_64-NETBSD:#define __SSE2__ 1
8308// X86_64-NETBSD:#define __SSE_MATH__ 1
8309// X86_64-NETBSD:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008310// X86_64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008311// X86_64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008312// X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
8313// X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
8314// X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
8315// X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
8316// X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
8317// X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
8318// X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008319// X86_64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008320// X86_64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008321// X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008322// X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008323// X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008324// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008325// X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
8326// X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
8327// X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
8328// X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008329// X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008330// X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
8331// X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
8332// X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
8333// X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8334// X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008335// X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008336// X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008337// X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008338// X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
8339// X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
8340// X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
8341// X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8342// X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008343// X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008344// X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008345// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
8346// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
8347// X86_64-NETBSD:#define __WCHAR_TYPE__ int
8348// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
8349// X86_64-NETBSD:#define __WINT_TYPE__ int
8350// X86_64-NETBSD:#define __WINT_WIDTH__ 32
8351// X86_64-NETBSD:#define __amd64 1
8352// X86_64-NETBSD:#define __amd64__ 1
8353// X86_64-NETBSD:#define __x86_64 1
8354// X86_64-NETBSD:#define __x86_64__ 1
8355//
James Y Knightc97efa42016-02-11 16:51:29 +00008356// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-scei-ps4 < /dev/null | FileCheck -match-full-lines -check-prefix PS4 %s
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008357//
8358// PS4:#define _LP64 1
8359// PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8360// PS4:#define __CHAR16_TYPE__ unsigned short
8361// PS4:#define __CHAR32_TYPE__ unsigned int
8362// PS4:#define __CHAR_BIT__ 8
8363// PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8364// PS4:#define __DBL_DIG__ 15
8365// PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
8366// PS4:#define __DBL_HAS_DENORM__ 1
8367// PS4:#define __DBL_HAS_INFINITY__ 1
8368// PS4:#define __DBL_HAS_QUIET_NAN__ 1
8369// PS4:#define __DBL_MANT_DIG__ 53
8370// PS4:#define __DBL_MAX_10_EXP__ 308
8371// PS4:#define __DBL_MAX_EXP__ 1024
8372// PS4:#define __DBL_MAX__ 1.7976931348623157e+308
8373// PS4:#define __DBL_MIN_10_EXP__ (-307)
8374// PS4:#define __DBL_MIN_EXP__ (-1021)
8375// PS4:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008376// PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008377// PS4:#define __ELF__ 1
8378// PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8379// PS4:#define __FLT_DIG__ 6
8380// PS4:#define __FLT_EPSILON__ 1.19209290e-7F
8381// PS4:#define __FLT_EVAL_METHOD__ 0
8382// PS4:#define __FLT_HAS_DENORM__ 1
8383// PS4:#define __FLT_HAS_INFINITY__ 1
8384// PS4:#define __FLT_HAS_QUIET_NAN__ 1
8385// PS4:#define __FLT_MANT_DIG__ 24
8386// PS4:#define __FLT_MAX_10_EXP__ 38
8387// PS4:#define __FLT_MAX_EXP__ 128
8388// PS4:#define __FLT_MAX__ 3.40282347e+38F
8389// PS4:#define __FLT_MIN_10_EXP__ (-37)
8390// PS4:#define __FLT_MIN_EXP__ (-125)
8391// PS4:#define __FLT_MIN__ 1.17549435e-38F
8392// PS4:#define __FLT_RADIX__ 2
8393// PS4:#define __FreeBSD__ 9
8394// PS4:#define __FreeBSD_cc_version 900001
8395// PS4:#define __INT16_TYPE__ short
8396// PS4:#define __INT32_TYPE__ int
8397// PS4:#define __INT64_C_SUFFIX__ L
8398// PS4:#define __INT64_TYPE__ long int
8399// PS4:#define __INT8_TYPE__ signed char
8400// PS4:#define __INTMAX_MAX__ 9223372036854775807L
8401// PS4:#define __INTMAX_TYPE__ long int
8402// PS4:#define __INTMAX_WIDTH__ 64
8403// PS4:#define __INTPTR_TYPE__ long int
8404// PS4:#define __INTPTR_WIDTH__ 64
8405// PS4:#define __INT_MAX__ 2147483647
8406// PS4:#define __KPRINTF_ATTRIBUTE__ 1
8407// PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8408// PS4:#define __LDBL_DIG__ 18
8409// PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8410// PS4:#define __LDBL_HAS_DENORM__ 1
8411// PS4:#define __LDBL_HAS_INFINITY__ 1
8412// PS4:#define __LDBL_HAS_QUIET_NAN__ 1
8413// PS4:#define __LDBL_MANT_DIG__ 64
8414// PS4:#define __LDBL_MAX_10_EXP__ 4932
8415// PS4:#define __LDBL_MAX_EXP__ 16384
8416// PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8417// PS4:#define __LDBL_MIN_10_EXP__ (-4931)
8418// PS4:#define __LDBL_MIN_EXP__ (-16381)
8419// PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8420// PS4:#define __LITTLE_ENDIAN__ 1
8421// PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
8422// PS4:#define __LONG_MAX__ 9223372036854775807L
8423// PS4:#define __LP64__ 1
8424// PS4:#define __MMX__ 1
8425// PS4:#define __NO_MATH_INLINES 1
Paul Robinson9d613612016-05-16 17:22:25 +00008426// PS4:#define __ORBIS__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008427// PS4:#define __POINTER_WIDTH__ 64
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008428// PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
8429// PS4:#define __PTRDIFF_TYPE__ long int
8430// PS4:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008431// PS4:#define __REGISTER_PREFIX__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008432// PS4:#define __SCHAR_MAX__ 127
8433// PS4:#define __SHRT_MAX__ 32767
8434// PS4:#define __SIG_ATOMIC_MAX__ 2147483647
8435// PS4:#define __SIG_ATOMIC_WIDTH__ 32
8436// PS4:#define __SIZEOF_DOUBLE__ 8
8437// PS4:#define __SIZEOF_FLOAT__ 4
8438// PS4:#define __SIZEOF_INT__ 4
8439// PS4:#define __SIZEOF_LONG_DOUBLE__ 16
8440// PS4:#define __SIZEOF_LONG_LONG__ 8
8441// PS4:#define __SIZEOF_LONG__ 8
8442// PS4:#define __SIZEOF_POINTER__ 8
8443// PS4:#define __SIZEOF_PTRDIFF_T__ 8
8444// PS4:#define __SIZEOF_SHORT__ 2
8445// PS4:#define __SIZEOF_SIZE_T__ 8
8446// PS4:#define __SIZEOF_WCHAR_T__ 2
8447// PS4:#define __SIZEOF_WINT_T__ 4
8448// PS4:#define __SIZE_TYPE__ long unsigned int
8449// PS4:#define __SIZE_WIDTH__ 64
8450// PS4:#define __SSE2_MATH__ 1
8451// PS4:#define __SSE2__ 1
8452// PS4:#define __SSE_MATH__ 1
8453// PS4:#define __SSE__ 1
Sunil Srivastavabf010802016-04-27 19:53:03 +00008454// PS4:#define __STDC_VERSION__ 199901L
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008455// PS4:#define __UINTMAX_TYPE__ long unsigned int
8456// PS4:#define __USER_LABEL_PREFIX__
8457// PS4:#define __WCHAR_MAX__ 65535
8458// PS4:#define __WCHAR_TYPE__ unsigned short
8459// PS4:#define __WCHAR_UNSIGNED__ 1
8460// PS4:#define __WCHAR_WIDTH__ 16
8461// PS4:#define __WINT_TYPE__ int
8462// PS4:#define __WINT_WIDTH__ 32
8463// PS4:#define __amd64 1
8464// PS4:#define __amd64__ 1
8465// PS4:#define __unix 1
8466// PS4:#define __unix__ 1
8467// PS4:#define __x86_64 1
8468// PS4:#define __x86_64__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008469//
James Y Knightc97efa42016-02-11 16:51:29 +00008470// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8471// RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8472// X86-64-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00008473//
James Y Knightc97efa42016-02-11 16:51:29 +00008474// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARCV9 %s
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008475// SPARCV9:#define __INT64_TYPE__ long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008476// SPARCV9:#define __INTMAX_C_SUFFIX__ L
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008477// SPARCV9:#define __INTMAX_TYPE__ long int
8478// SPARCV9:#define __INTPTR_TYPE__ long int
8479// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
8480// SPARCV9:#define __LP64__ 1
8481// SPARCV9:#define __SIZEOF_LONG__ 8
8482// SPARCV9:#define __SIZEOF_POINTER__ 8
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00008483// SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008484//
James Y Knightc97efa42016-02-11 16:51:29 +00008485// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC64-OBSD %s
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008486// SPARC64-OBSD:#define __INT64_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008487// SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008488// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008489// SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008490// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
8491//
James Y Knightc97efa42016-02-11 16:51:29 +00008492// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-pc-kfreebsd-gnu < /dev/null | FileCheck -match-full-lines -check-prefix KFREEBSD-DEFINE %s
Sylvestre Ledrufd7cd3552013-09-06 14:53:07 +00008493// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
8494// KFREEBSD-DEFINE:#define __GLIBC__ 1
8495//
James Y Knightc97efa42016-02-11 16:51:29 +00008496// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i686-pc-kfreebsd-gnu < /dev/null | FileCheck -match-full-lines -check-prefix KFREEBSDI686-DEFINE %s
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008497// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
8498// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
8499//
James Y Knightc97efa42016-02-11 16:51:29 +00008500// RUN: %clang_cc1 -x c++ -triple i686-pc-linux-gnu -fobjc-runtime=gcc -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSOURCE %s
Douglas Gregord2b896a2010-04-16 06:31:05 +00008501// GNUSOURCE:#define _GNU_SOURCE 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008502//
James Y Knightc97efa42016-02-11 16:51:29 +00008503// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
8504// NORTTI: #define __GXX_ABI_VERSION {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +00008505// NORTTI-NOT:#define __GXX_RTTI
James Y Knightc97efa42016-02-11 16:51:29 +00008506// NORTTI:#define __STDC__ 1
Evgeniy Stepanov94dc4c92012-04-26 12:08:09 +00008507//
James Y Knightc97efa42016-02-11 16:51:29 +00008508// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID %s
Stephen Hinesa89d8ff2016-11-11 01:29:39 +00008509// ANDROID-NOT:#define __ANDROID_API__
James Y Knightc97efa42016-02-11 16:51:29 +00008510// ANDROID:#define __ANDROID__ 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008511//
Richard Smith59139022016-09-30 22:41:36 +00008512// RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
8513// I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
8514//
8515// RUN: %clang_cc1 -x c++ -triple x86_64-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-ANDROID-CXX %s
8516// X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
8517//
Stephen Hinesa89d8ff2016-11-11 01:29:39 +00008518// RUN: %clang_cc1 -triple arm-linux-androideabi20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID20 %s
8519// ANDROID20:#define __ANDROID_API__ 20
8520// ANDROID20:#define __ANDROID__ 1
8521//
Jacques Pienaard964cc22016-03-28 21:02:54 +00008522// RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
8523// LANAI: #define __lanai__ 1
8524//
Renato Golin0201a9e2016-09-22 19:28:20 +00008525// RUN: %clang_cc1 -E -dM -ffreestanding -triple=amd64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8526// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8527// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8528// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8529// OPENBSD:#define __ELF__ 1
8530// OPENBSD:#define __INT16_TYPE__ short
8531// OPENBSD:#define __INT32_TYPE__ int
8532// OPENBSD:#define __INT64_TYPE__ long long int
8533// OPENBSD:#define __INT8_TYPE__ signed char
8534// OPENBSD:#define __INTMAX_TYPE__ long long int
8535// OPENBSD:#define __INTPTR_TYPE__ long int
8536// OPENBSD:#define __OpenBSD__ 1
8537// OPENBSD:#define __PTRDIFF_TYPE__ long int
8538// OPENBSD:#define __SIZE_TYPE__ long unsigned int
8539// OPENBSD:#define __UINT16_TYPE__ unsigned short
8540// OPENBSD:#define __UINT32_TYPE__ unsigned int
8541// OPENBSD:#define __UINT64_TYPE__ long long unsigned int
8542// OPENBSD:#define __UINT8_TYPE__ unsigned char
8543// OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
8544// OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
8545// OPENBSD:#define __WCHAR_TYPE__ int
8546// OPENBSD:#define __WINT_TYPE__ int
8547//
James Y Knightc97efa42016-02-11 16:51:29 +00008548// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-freebsd < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-FREEBSD %s
Roman Divacky13b586f2013-07-03 19:45:54 +00008549// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008550//
James Y Knightc97efa42016-02-11 16:51:29 +00008551// RUN: %clang_cc1 -E -dM -ffreestanding -triple=xcore-none-none < /dev/null | FileCheck -match-full-lines -check-prefix XCORE %s
Robert Lytton2c942c62014-03-10 12:06:29 +00008552// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8553// XCORE:#define __LITTLE_ENDIAN__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008554// XCORE:#define __XS1B__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008555//
8556// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
8557// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00008558// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY32 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00008559//
James Y Knightc97efa42016-02-11 16:51:29 +00008560// WEBASSEMBLY32:#define _ILP32 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008561// WEBASSEMBLY32-NOT:#define _LP64
James Y Knightc97efa42016-02-11 16:51:29 +00008562// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQUIRE 2
8563// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQ_REL 4
8564// WEBASSEMBLY32-NEXT:#define __ATOMIC_CONSUME 1
8565// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELAXED 0
8566// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELEASE 3
8567// WEBASSEMBLY32-NEXT:#define __ATOMIC_SEQ_CST 5
8568// WEBASSEMBLY32-NEXT:#define __BIGGEST_ALIGNMENT__ 16
8569// WEBASSEMBLY32-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8570// WEBASSEMBLY32-NEXT:#define __CHAR16_TYPE__ unsigned short
8571// WEBASSEMBLY32-NEXT:#define __CHAR32_TYPE__ unsigned int
8572// WEBASSEMBLY32-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00008573// WEBASSEMBLY32-NOT:#define __CHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008574// WEBASSEMBLY32-NEXT:#define __CONSTANT_CFSTRINGS__ 1
8575// WEBASSEMBLY32-NEXT:#define __DBL_DECIMAL_DIG__ 17
8576// WEBASSEMBLY32-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8577// WEBASSEMBLY32-NEXT:#define __DBL_DIG__ 15
8578// WEBASSEMBLY32-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
8579// WEBASSEMBLY32-NEXT:#define __DBL_HAS_DENORM__ 1
8580// WEBASSEMBLY32-NEXT:#define __DBL_HAS_INFINITY__ 1
8581// WEBASSEMBLY32-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
8582// WEBASSEMBLY32-NEXT:#define __DBL_MANT_DIG__ 53
8583// WEBASSEMBLY32-NEXT:#define __DBL_MAX_10_EXP__ 308
8584// WEBASSEMBLY32-NEXT:#define __DBL_MAX_EXP__ 1024
8585// WEBASSEMBLY32-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
8586// WEBASSEMBLY32-NEXT:#define __DBL_MIN_10_EXP__ (-307)
8587// WEBASSEMBLY32-NEXT:#define __DBL_MIN_EXP__ (-1021)
8588// WEBASSEMBLY32-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
8589// WEBASSEMBLY32-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00008590// WEBASSEMBLY32-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00008591// WEBASSEMBLY32-NEXT:#define __FINITE_MATH_ONLY__ 0
8592// WEBASSEMBLY32-NEXT:#define __FLT_DECIMAL_DIG__ 9
8593// WEBASSEMBLY32-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8594// WEBASSEMBLY32-NEXT:#define __FLT_DIG__ 6
8595// WEBASSEMBLY32-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
8596// WEBASSEMBLY32-NEXT:#define __FLT_EVAL_METHOD__ 0
8597// WEBASSEMBLY32-NEXT:#define __FLT_HAS_DENORM__ 1
8598// WEBASSEMBLY32-NEXT:#define __FLT_HAS_INFINITY__ 1
8599// WEBASSEMBLY32-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
8600// WEBASSEMBLY32-NEXT:#define __FLT_MANT_DIG__ 24
8601// WEBASSEMBLY32-NEXT:#define __FLT_MAX_10_EXP__ 38
8602// WEBASSEMBLY32-NEXT:#define __FLT_MAX_EXP__ 128
8603// WEBASSEMBLY32-NEXT:#define __FLT_MAX__ 3.40282347e+38F
8604// WEBASSEMBLY32-NEXT:#define __FLT_MIN_10_EXP__ (-37)
8605// WEBASSEMBLY32-NEXT:#define __FLT_MIN_EXP__ (-125)
8606// WEBASSEMBLY32-NEXT:#define __FLT_MIN__ 1.17549435e-38F
8607// WEBASSEMBLY32-NEXT:#define __FLT_RADIX__ 2
8608// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8609// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8610// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8611// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8612// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8613// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
8614// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8615// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8616// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8617// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8618// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00008619// WEBASSEMBLY32-NEXT:#define __GNUC_MINOR__ {{.*}}
8620// WEBASSEMBLY32-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008621// WEBASSEMBLY32-NEXT:#define __GNUC_STDC_INLINE__ 1
Tim Northover25809012016-02-11 21:31:51 +00008622// WEBASSEMBLY32-NEXT:#define __GNUC__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008623// WEBASSEMBLY32-NEXT:#define __GXX_ABI_VERSION 1002
8624// WEBASSEMBLY32-NEXT:#define __ILP32__ 1
8625// WEBASSEMBLY32-NEXT:#define __INT16_C_SUFFIX__
8626// WEBASSEMBLY32-NEXT:#define __INT16_FMTd__ "hd"
8627// WEBASSEMBLY32-NEXT:#define __INT16_FMTi__ "hi"
8628// WEBASSEMBLY32-NEXT:#define __INT16_MAX__ 32767
8629// WEBASSEMBLY32-NEXT:#define __INT16_TYPE__ short
8630// WEBASSEMBLY32-NEXT:#define __INT32_C_SUFFIX__
8631// WEBASSEMBLY32-NEXT:#define __INT32_FMTd__ "d"
8632// WEBASSEMBLY32-NEXT:#define __INT32_FMTi__ "i"
8633// WEBASSEMBLY32-NEXT:#define __INT32_MAX__ 2147483647
8634// WEBASSEMBLY32-NEXT:#define __INT32_TYPE__ int
8635// WEBASSEMBLY32-NEXT:#define __INT64_C_SUFFIX__ LL
8636// WEBASSEMBLY32-NEXT:#define __INT64_FMTd__ "lld"
8637// WEBASSEMBLY32-NEXT:#define __INT64_FMTi__ "lli"
8638// WEBASSEMBLY32-NEXT:#define __INT64_MAX__ 9223372036854775807LL
8639// WEBASSEMBLY32-NEXT:#define __INT64_TYPE__ long long int
8640// WEBASSEMBLY32-NEXT:#define __INT8_C_SUFFIX__
8641// WEBASSEMBLY32-NEXT:#define __INT8_FMTd__ "hhd"
8642// WEBASSEMBLY32-NEXT:#define __INT8_FMTi__ "hhi"
8643// WEBASSEMBLY32-NEXT:#define __INT8_MAX__ 127
8644// WEBASSEMBLY32-NEXT:#define __INT8_TYPE__ signed char
8645// WEBASSEMBLY32-NEXT:#define __INTMAX_C_SUFFIX__ LL
8646// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTd__ "lld"
8647// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTi__ "lli"
8648// WEBASSEMBLY32-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
8649// WEBASSEMBLY32-NEXT:#define __INTMAX_TYPE__ long long int
8650// WEBASSEMBLY32-NEXT:#define __INTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00008651// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTd__ "d"
8652// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTi__ "i"
8653// WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647
8654// WEBASSEMBLY32-NEXT:#define __INTPTR_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00008655// WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
8656// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTd__ "hd"
8657// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTi__ "hi"
8658// WEBASSEMBLY32-NEXT:#define __INT_FAST16_MAX__ 32767
8659// WEBASSEMBLY32-NEXT:#define __INT_FAST16_TYPE__ short
8660// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTd__ "d"
8661// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTi__ "i"
8662// WEBASSEMBLY32-NEXT:#define __INT_FAST32_MAX__ 2147483647
8663// WEBASSEMBLY32-NEXT:#define __INT_FAST32_TYPE__ int
8664// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTd__ "lld"
8665// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTi__ "lli"
8666// WEBASSEMBLY32-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
8667// WEBASSEMBLY32-NEXT:#define __INT_FAST64_TYPE__ long long int
8668// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTd__ "hhd"
8669// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTi__ "hhi"
8670// WEBASSEMBLY32-NEXT:#define __INT_FAST8_MAX__ 127
8671// WEBASSEMBLY32-NEXT:#define __INT_FAST8_TYPE__ signed char
8672// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTd__ "hd"
8673// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTi__ "hi"
8674// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_MAX__ 32767
8675// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_TYPE__ short
8676// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTd__ "d"
8677// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTi__ "i"
8678// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_MAX__ 2147483647
8679// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_TYPE__ int
8680// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTd__ "lld"
8681// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTi__ "lli"
8682// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8683// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_TYPE__ long long int
8684// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
8685// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
8686// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_MAX__ 127
8687// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_TYPE__ signed char
8688// WEBASSEMBLY32-NEXT:#define __INT_MAX__ 2147483647
8689// WEBASSEMBLY32-NEXT:#define __LDBL_DECIMAL_DIG__ 36
8690// WEBASSEMBLY32-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
8691// WEBASSEMBLY32-NEXT:#define __LDBL_DIG__ 33
8692// WEBASSEMBLY32-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
8693// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_DENORM__ 1
8694// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_INFINITY__ 1
8695// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
8696// WEBASSEMBLY32-NEXT:#define __LDBL_MANT_DIG__ 113
8697// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_10_EXP__ 4932
8698// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_EXP__ 16384
8699// WEBASSEMBLY32-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
8700// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
8701// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_EXP__ (-16381)
8702// WEBASSEMBLY32-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
8703// WEBASSEMBLY32-NEXT:#define __LITTLE_ENDIAN__ 1
8704// WEBASSEMBLY32-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
8705// WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
Dan Gohmanc2853072015-09-03 22:51:53 +00008706// WEBASSEMBLY32-NOT:#define __LP64__
James Y Knightc97efa42016-02-11 16:51:29 +00008707// WEBASSEMBLY32-NEXT:#define __NO_INLINE__ 1
8708// WEBASSEMBLY32-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
8709// WEBASSEMBLY32-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
8710// WEBASSEMBLY32-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
8711// WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
8712// WEBASSEMBLY32-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
Derek Schuffacdc8e62016-09-01 22:38:37 +00008713// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTd__ "d"
8714// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTi__ "i"
8715// WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647
8716// WEBASSEMBLY32-NEXT:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00008717// WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
Dan Gohmanc2853072015-09-03 22:51:53 +00008718// WEBASSEMBLY32-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00008719// WEBASSEMBLY32-NEXT:#define __SCHAR_MAX__ 127
8720// WEBASSEMBLY32-NEXT:#define __SHRT_MAX__ 32767
8721// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
8722// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
8723// WEBASSEMBLY32-NEXT:#define __SIZEOF_DOUBLE__ 8
8724// WEBASSEMBLY32-NEXT:#define __SIZEOF_FLOAT__ 4
8725// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT128__ 16
8726// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT__ 4
8727// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
8728// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_LONG__ 8
8729// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
8730// WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
8731// WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
8732// WEBASSEMBLY32-NEXT:#define __SIZEOF_SHORT__ 2
8733// WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
8734// WEBASSEMBLY32-NEXT:#define __SIZEOF_WCHAR_T__ 4
8735// WEBASSEMBLY32-NEXT:#define __SIZEOF_WINT_T__ 4
Derek Schuffacdc8e62016-09-01 22:38:37 +00008736// WEBASSEMBLY32-NEXT:#define __SIZE_FMTX__ "X"
8737// WEBASSEMBLY32-NEXT:#define __SIZE_FMTo__ "o"
8738// WEBASSEMBLY32-NEXT:#define __SIZE_FMTu__ "u"
8739// WEBASSEMBLY32-NEXT:#define __SIZE_FMTx__ "x"
8740// WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295U
8741// WEBASSEMBLY32-NEXT:#define __SIZE_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008742// WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
8743// WEBASSEMBLY32-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00008744// WEBASSEMBLY32-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
8745// WEBASSEMBLY32-NOT:#define __STDC_NO_ATOMICS__
8746// WEBASSEMBLY32-NOT:#define __STDC_NO_COMPLEX__
8747// WEBASSEMBLY32-NOT:#define __STDC_NO_VLA__
8748// WEBASSEMBLY32-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00008749// WEBASSEMBLY32-NEXT:#define __STDC_UTF_16__ 1
8750// WEBASSEMBLY32-NEXT:#define __STDC_UTF_32__ 1
8751// WEBASSEMBLY32-NEXT:#define __STDC_VERSION__ 201112L
8752// WEBASSEMBLY32-NEXT:#define __STDC__ 1
8753// WEBASSEMBLY32-NEXT:#define __UINT16_C_SUFFIX__
8754// WEBASSEMBLY32-NEXT:#define __UINT16_FMTX__ "hX"
8755// WEBASSEMBLY32-NEXT:#define __UINT16_FMTo__ "ho"
8756// WEBASSEMBLY32-NEXT:#define __UINT16_FMTu__ "hu"
8757// WEBASSEMBLY32-NEXT:#define __UINT16_FMTx__ "hx"
8758// WEBASSEMBLY32-NEXT:#define __UINT16_MAX__ 65535
8759// WEBASSEMBLY32-NEXT:#define __UINT16_TYPE__ unsigned short
8760// WEBASSEMBLY32-NEXT:#define __UINT32_C_SUFFIX__ U
8761// WEBASSEMBLY32-NEXT:#define __UINT32_FMTX__ "X"
8762// WEBASSEMBLY32-NEXT:#define __UINT32_FMTo__ "o"
8763// WEBASSEMBLY32-NEXT:#define __UINT32_FMTu__ "u"
8764// WEBASSEMBLY32-NEXT:#define __UINT32_FMTx__ "x"
8765// WEBASSEMBLY32-NEXT:#define __UINT32_MAX__ 4294967295U
8766// WEBASSEMBLY32-NEXT:#define __UINT32_TYPE__ unsigned int
8767// WEBASSEMBLY32-NEXT:#define __UINT64_C_SUFFIX__ ULL
8768// WEBASSEMBLY32-NEXT:#define __UINT64_FMTX__ "llX"
8769// WEBASSEMBLY32-NEXT:#define __UINT64_FMTo__ "llo"
8770// WEBASSEMBLY32-NEXT:#define __UINT64_FMTu__ "llu"
8771// WEBASSEMBLY32-NEXT:#define __UINT64_FMTx__ "llx"
8772// WEBASSEMBLY32-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
8773// WEBASSEMBLY32-NEXT:#define __UINT64_TYPE__ long long unsigned int
8774// WEBASSEMBLY32-NEXT:#define __UINT8_C_SUFFIX__
8775// WEBASSEMBLY32-NEXT:#define __UINT8_FMTX__ "hhX"
8776// WEBASSEMBLY32-NEXT:#define __UINT8_FMTo__ "hho"
8777// WEBASSEMBLY32-NEXT:#define __UINT8_FMTu__ "hhu"
8778// WEBASSEMBLY32-NEXT:#define __UINT8_FMTx__ "hhx"
8779// WEBASSEMBLY32-NEXT:#define __UINT8_MAX__ 255
8780// WEBASSEMBLY32-NEXT:#define __UINT8_TYPE__ unsigned char
8781// WEBASSEMBLY32-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
8782// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTX__ "llX"
8783// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTo__ "llo"
8784// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTu__ "llu"
8785// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTx__ "llx"
8786// WEBASSEMBLY32-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
8787// WEBASSEMBLY32-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
8788// WEBASSEMBLY32-NEXT:#define __UINTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00008789// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTX__ "X"
8790// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTo__ "o"
8791// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTu__ "u"
8792// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTx__ "x"
8793// WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295U
8794// WEBASSEMBLY32-NEXT:#define __UINTPTR_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008795// WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
8796// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTX__ "hX"
8797// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTo__ "ho"
8798// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTu__ "hu"
8799// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTx__ "hx"
8800// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_MAX__ 65535
8801// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
8802// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTX__ "X"
8803// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTo__ "o"
8804// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTu__ "u"
8805// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTx__ "x"
8806// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
8807// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
8808// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTX__ "llX"
8809// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTo__ "llo"
8810// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTu__ "llu"
8811// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTx__ "llx"
8812// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8813// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
8814// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
8815// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTo__ "hho"
8816// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
8817// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
8818// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_MAX__ 255
8819// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
8820// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
8821// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
8822// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
8823// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
8824// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_MAX__ 65535
8825// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
8826// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTX__ "X"
8827// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTo__ "o"
8828// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTu__ "u"
8829// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTx__ "x"
8830// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
8831// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
8832// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
8833// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
8834// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
8835// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
8836// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8837// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
8838// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
8839// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
8840// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
8841// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
8842// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_MAX__ 255
8843// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
8844// WEBASSEMBLY32-NEXT:#define __USER_LABEL_PREFIX__
8845// WEBASSEMBLY32-NEXT:#define __VERSION__ "{{.*}}"
8846// WEBASSEMBLY32-NEXT:#define __WCHAR_MAX__ 2147483647
8847// WEBASSEMBLY32-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00008848// WEBASSEMBLY32-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008849// WEBASSEMBLY32-NEXT:#define __WCHAR_WIDTH__ 32
8850// WEBASSEMBLY32-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00008851// WEBASSEMBLY32-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008852// WEBASSEMBLY32-NEXT:#define __WINT_WIDTH__ 32
8853// WEBASSEMBLY32-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00008854// WEBASSEMBLY32-NEXT:#define __clang_major__ {{.*}}
8855// WEBASSEMBLY32-NEXT:#define __clang_minor__ {{.*}}
8856// WEBASSEMBLY32-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008857// WEBASSEMBLY32-NEXT:#define __clang_version__ "{{.*}}"
8858// WEBASSEMBLY32-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008859// WEBASSEMBLY32-NOT:#define __wasm_simd128__
8860// WEBASSEMBLY32-NOT:#define __wasm_simd256__
8861// WEBASSEMBLY32-NOT:#define __wasm_simd512__
8862// WEBASSEMBLY32-NOT:#define __unix
8863// WEBASSEMBLY32-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00008864// WEBASSEMBLY32-NEXT:#define __wasm 1
8865// WEBASSEMBLY32-NEXT:#define __wasm32 1
8866// WEBASSEMBLY32-NEXT:#define __wasm32__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008867// WEBASSEMBLY32-NOT:#define __wasm64
8868// WEBASSEMBLY32-NOT:#define __wasm64__
James Y Knightc97efa42016-02-11 16:51:29 +00008869// WEBASSEMBLY32-NEXT:#define __wasm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008870//
8871// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
8872// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00008873// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY64 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00008874//
8875// WEBASSEMBLY64-NOT:#define _ILP32
James Y Knightc97efa42016-02-11 16:51:29 +00008876// WEBASSEMBLY64:#define _LP64 1
8877// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQUIRE 2
8878// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQ_REL 4
8879// WEBASSEMBLY64-NEXT:#define __ATOMIC_CONSUME 1
8880// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELAXED 0
8881// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELEASE 3
8882// WEBASSEMBLY64-NEXT:#define __ATOMIC_SEQ_CST 5
8883// WEBASSEMBLY64-NEXT:#define __BIGGEST_ALIGNMENT__ 16
8884// WEBASSEMBLY64-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8885// WEBASSEMBLY64-NEXT:#define __CHAR16_TYPE__ unsigned short
8886// WEBASSEMBLY64-NEXT:#define __CHAR32_TYPE__ unsigned int
8887// WEBASSEMBLY64-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00008888// WEBASSEMBLY64-NOT:#define __CHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008889// WEBASSEMBLY64-NEXT:#define __CONSTANT_CFSTRINGS__ 1
8890// WEBASSEMBLY64-NEXT:#define __DBL_DECIMAL_DIG__ 17
8891// WEBASSEMBLY64-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8892// WEBASSEMBLY64-NEXT:#define __DBL_DIG__ 15
8893// WEBASSEMBLY64-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
8894// WEBASSEMBLY64-NEXT:#define __DBL_HAS_DENORM__ 1
8895// WEBASSEMBLY64-NEXT:#define __DBL_HAS_INFINITY__ 1
8896// WEBASSEMBLY64-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
8897// WEBASSEMBLY64-NEXT:#define __DBL_MANT_DIG__ 53
8898// WEBASSEMBLY64-NEXT:#define __DBL_MAX_10_EXP__ 308
8899// WEBASSEMBLY64-NEXT:#define __DBL_MAX_EXP__ 1024
8900// WEBASSEMBLY64-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
8901// WEBASSEMBLY64-NEXT:#define __DBL_MIN_10_EXP__ (-307)
8902// WEBASSEMBLY64-NEXT:#define __DBL_MIN_EXP__ (-1021)
8903// WEBASSEMBLY64-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
8904// WEBASSEMBLY64-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00008905// WEBASSEMBLY64-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00008906// WEBASSEMBLY64-NEXT:#define __FINITE_MATH_ONLY__ 0
8907// WEBASSEMBLY64-NEXT:#define __FLT_DECIMAL_DIG__ 9
8908// WEBASSEMBLY64-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8909// WEBASSEMBLY64-NEXT:#define __FLT_DIG__ 6
8910// WEBASSEMBLY64-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
8911// WEBASSEMBLY64-NEXT:#define __FLT_EVAL_METHOD__ 0
8912// WEBASSEMBLY64-NEXT:#define __FLT_HAS_DENORM__ 1
8913// WEBASSEMBLY64-NEXT:#define __FLT_HAS_INFINITY__ 1
8914// WEBASSEMBLY64-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
8915// WEBASSEMBLY64-NEXT:#define __FLT_MANT_DIG__ 24
8916// WEBASSEMBLY64-NEXT:#define __FLT_MAX_10_EXP__ 38
8917// WEBASSEMBLY64-NEXT:#define __FLT_MAX_EXP__ 128
8918// WEBASSEMBLY64-NEXT:#define __FLT_MAX__ 3.40282347e+38F
8919// WEBASSEMBLY64-NEXT:#define __FLT_MIN_10_EXP__ (-37)
8920// WEBASSEMBLY64-NEXT:#define __FLT_MIN_EXP__ (-125)
8921// WEBASSEMBLY64-NEXT:#define __FLT_MIN__ 1.17549435e-38F
8922// WEBASSEMBLY64-NEXT:#define __FLT_RADIX__ 2
8923// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8924// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8925// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8926// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8927// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8928// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
8929// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8930// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8931// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8932// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8933// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00008934// WEBASSEMBLY64-NEXT:#define __GNUC_MINOR__ {{.*}}
8935// WEBASSEMBLY64-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008936// WEBASSEMBLY64-NEXT:#define __GNUC_STDC_INLINE__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008937// WEBASSEMBLY64-NEXT:#define __GNUC__ {{.}}
James Y Knightc97efa42016-02-11 16:51:29 +00008938// WEBASSEMBLY64-NEXT:#define __GXX_ABI_VERSION 1002
Dan Gohmanc2853072015-09-03 22:51:53 +00008939// WEBASSEMBLY64-NOT:#define __ILP32__
James Y Knightc97efa42016-02-11 16:51:29 +00008940// WEBASSEMBLY64-NEXT:#define __INT16_C_SUFFIX__
8941// WEBASSEMBLY64-NEXT:#define __INT16_FMTd__ "hd"
8942// WEBASSEMBLY64-NEXT:#define __INT16_FMTi__ "hi"
8943// WEBASSEMBLY64-NEXT:#define __INT16_MAX__ 32767
8944// WEBASSEMBLY64-NEXT:#define __INT16_TYPE__ short
8945// WEBASSEMBLY64-NEXT:#define __INT32_C_SUFFIX__
8946// WEBASSEMBLY64-NEXT:#define __INT32_FMTd__ "d"
8947// WEBASSEMBLY64-NEXT:#define __INT32_FMTi__ "i"
8948// WEBASSEMBLY64-NEXT:#define __INT32_MAX__ 2147483647
8949// WEBASSEMBLY64-NEXT:#define __INT32_TYPE__ int
8950// WEBASSEMBLY64-NEXT:#define __INT64_C_SUFFIX__ LL
8951// WEBASSEMBLY64-NEXT:#define __INT64_FMTd__ "lld"
8952// WEBASSEMBLY64-NEXT:#define __INT64_FMTi__ "lli"
8953// WEBASSEMBLY64-NEXT:#define __INT64_MAX__ 9223372036854775807LL
8954// WEBASSEMBLY64-NEXT:#define __INT64_TYPE__ long long int
8955// WEBASSEMBLY64-NEXT:#define __INT8_C_SUFFIX__
8956// WEBASSEMBLY64-NEXT:#define __INT8_FMTd__ "hhd"
8957// WEBASSEMBLY64-NEXT:#define __INT8_FMTi__ "hhi"
8958// WEBASSEMBLY64-NEXT:#define __INT8_MAX__ 127
8959// WEBASSEMBLY64-NEXT:#define __INT8_TYPE__ signed char
8960// WEBASSEMBLY64-NEXT:#define __INTMAX_C_SUFFIX__ LL
8961// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTd__ "lld"
8962// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTi__ "lli"
8963// WEBASSEMBLY64-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
8964// WEBASSEMBLY64-NEXT:#define __INTMAX_TYPE__ long long int
8965// WEBASSEMBLY64-NEXT:#define __INTMAX_WIDTH__ 64
8966// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTd__ "ld"
8967// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTi__ "li"
8968// WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
8969// WEBASSEMBLY64-NEXT:#define __INTPTR_TYPE__ long int
8970// WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
8971// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTd__ "hd"
8972// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTi__ "hi"
8973// WEBASSEMBLY64-NEXT:#define __INT_FAST16_MAX__ 32767
8974// WEBASSEMBLY64-NEXT:#define __INT_FAST16_TYPE__ short
8975// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTd__ "d"
8976// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTi__ "i"
8977// WEBASSEMBLY64-NEXT:#define __INT_FAST32_MAX__ 2147483647
8978// WEBASSEMBLY64-NEXT:#define __INT_FAST32_TYPE__ int
8979// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTd__ "lld"
8980// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTi__ "lli"
8981// WEBASSEMBLY64-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
8982// WEBASSEMBLY64-NEXT:#define __INT_FAST64_TYPE__ long long int
8983// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTd__ "hhd"
8984// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTi__ "hhi"
8985// WEBASSEMBLY64-NEXT:#define __INT_FAST8_MAX__ 127
8986// WEBASSEMBLY64-NEXT:#define __INT_FAST8_TYPE__ signed char
8987// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTd__ "hd"
8988// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTi__ "hi"
8989// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_MAX__ 32767
8990// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_TYPE__ short
8991// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTd__ "d"
8992// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTi__ "i"
8993// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_MAX__ 2147483647
8994// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_TYPE__ int
8995// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTd__ "lld"
8996// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTi__ "lli"
8997// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8998// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_TYPE__ long long int
8999// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9000// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9001// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_MAX__ 127
9002// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_TYPE__ signed char
9003// WEBASSEMBLY64-NEXT:#define __INT_MAX__ 2147483647
9004// WEBASSEMBLY64-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9005// WEBASSEMBLY64-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9006// WEBASSEMBLY64-NEXT:#define __LDBL_DIG__ 33
9007// WEBASSEMBLY64-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9008// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_DENORM__ 1
9009// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_INFINITY__ 1
9010// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9011// WEBASSEMBLY64-NEXT:#define __LDBL_MANT_DIG__ 113
9012// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9013// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_EXP__ 16384
9014// WEBASSEMBLY64-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9015// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9016// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9017// WEBASSEMBLY64-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9018// WEBASSEMBLY64-NEXT:#define __LITTLE_ENDIAN__ 1
9019// WEBASSEMBLY64-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9020// WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
9021// WEBASSEMBLY64-NEXT:#define __LP64__ 1
9022// WEBASSEMBLY64-NEXT:#define __NO_INLINE__ 1
9023// WEBASSEMBLY64-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9024// WEBASSEMBLY64-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9025// WEBASSEMBLY64-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9026// WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
9027// WEBASSEMBLY64-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
9028// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTd__ "ld"
9029// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTi__ "li"
9030// WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
9031// WEBASSEMBLY64-NEXT:#define __PTRDIFF_TYPE__ long int
9032// WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
Dan Gohmanc2853072015-09-03 22:51:53 +00009033// WEBASSEMBLY64-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009034// WEBASSEMBLY64-NEXT:#define __SCHAR_MAX__ 127
9035// WEBASSEMBLY64-NEXT:#define __SHRT_MAX__ 32767
9036// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
9037// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
9038// WEBASSEMBLY64-NEXT:#define __SIZEOF_DOUBLE__ 8
9039// WEBASSEMBLY64-NEXT:#define __SIZEOF_FLOAT__ 4
9040// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT128__ 16
9041// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT__ 4
9042// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9043// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_LONG__ 8
9044// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
9045// WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
9046// WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
9047// WEBASSEMBLY64-NEXT:#define __SIZEOF_SHORT__ 2
9048// WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
9049// WEBASSEMBLY64-NEXT:#define __SIZEOF_WCHAR_T__ 4
9050// WEBASSEMBLY64-NEXT:#define __SIZEOF_WINT_T__ 4
9051// WEBASSEMBLY64-NEXT:#define __SIZE_FMTX__ "lX"
9052// WEBASSEMBLY64-NEXT:#define __SIZE_FMTo__ "lo"
9053// WEBASSEMBLY64-NEXT:#define __SIZE_FMTu__ "lu"
9054// WEBASSEMBLY64-NEXT:#define __SIZE_FMTx__ "lx"
9055// WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
9056// WEBASSEMBLY64-NEXT:#define __SIZE_TYPE__ long unsigned int
9057// WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
9058// WEBASSEMBLY64-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009059// WEBASSEMBLY64-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9060// WEBASSEMBLY64-NOT:#define __STDC_NO_ATOMICS__
9061// WEBASSEMBLY64-NOT:#define __STDC_NO_COMPLEX__
9062// WEBASSEMBLY64-NOT:#define __STDC_NO_VLA__
9063// WEBASSEMBLY64-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009064// WEBASSEMBLY64-NEXT:#define __STDC_UTF_16__ 1
9065// WEBASSEMBLY64-NEXT:#define __STDC_UTF_32__ 1
9066// WEBASSEMBLY64-NEXT:#define __STDC_VERSION__ 201112L
9067// WEBASSEMBLY64-NEXT:#define __STDC__ 1
9068// WEBASSEMBLY64-NEXT:#define __UINT16_C_SUFFIX__
9069// WEBASSEMBLY64-NEXT:#define __UINT16_FMTX__ "hX"
9070// WEBASSEMBLY64-NEXT:#define __UINT16_FMTo__ "ho"
9071// WEBASSEMBLY64-NEXT:#define __UINT16_FMTu__ "hu"
9072// WEBASSEMBLY64-NEXT:#define __UINT16_FMTx__ "hx"
9073// WEBASSEMBLY64-NEXT:#define __UINT16_MAX__ 65535
9074// WEBASSEMBLY64-NEXT:#define __UINT16_TYPE__ unsigned short
9075// WEBASSEMBLY64-NEXT:#define __UINT32_C_SUFFIX__ U
9076// WEBASSEMBLY64-NEXT:#define __UINT32_FMTX__ "X"
9077// WEBASSEMBLY64-NEXT:#define __UINT32_FMTo__ "o"
9078// WEBASSEMBLY64-NEXT:#define __UINT32_FMTu__ "u"
9079// WEBASSEMBLY64-NEXT:#define __UINT32_FMTx__ "x"
9080// WEBASSEMBLY64-NEXT:#define __UINT32_MAX__ 4294967295U
9081// WEBASSEMBLY64-NEXT:#define __UINT32_TYPE__ unsigned int
9082// WEBASSEMBLY64-NEXT:#define __UINT64_C_SUFFIX__ ULL
9083// WEBASSEMBLY64-NEXT:#define __UINT64_FMTX__ "llX"
9084// WEBASSEMBLY64-NEXT:#define __UINT64_FMTo__ "llo"
9085// WEBASSEMBLY64-NEXT:#define __UINT64_FMTu__ "llu"
9086// WEBASSEMBLY64-NEXT:#define __UINT64_FMTx__ "llx"
9087// WEBASSEMBLY64-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9088// WEBASSEMBLY64-NEXT:#define __UINT64_TYPE__ long long unsigned int
9089// WEBASSEMBLY64-NEXT:#define __UINT8_C_SUFFIX__
9090// WEBASSEMBLY64-NEXT:#define __UINT8_FMTX__ "hhX"
9091// WEBASSEMBLY64-NEXT:#define __UINT8_FMTo__ "hho"
9092// WEBASSEMBLY64-NEXT:#define __UINT8_FMTu__ "hhu"
9093// WEBASSEMBLY64-NEXT:#define __UINT8_FMTx__ "hhx"
9094// WEBASSEMBLY64-NEXT:#define __UINT8_MAX__ 255
9095// WEBASSEMBLY64-NEXT:#define __UINT8_TYPE__ unsigned char
9096// WEBASSEMBLY64-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9097// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTX__ "llX"
9098// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTo__ "llo"
9099// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTu__ "llu"
9100// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTx__ "llx"
9101// WEBASSEMBLY64-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9102// WEBASSEMBLY64-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9103// WEBASSEMBLY64-NEXT:#define __UINTMAX_WIDTH__ 64
9104// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTX__ "lX"
9105// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTo__ "lo"
9106// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTu__ "lu"
9107// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTx__ "lx"
9108// WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
9109// WEBASSEMBLY64-NEXT:#define __UINTPTR_TYPE__ long unsigned int
9110// WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
9111// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9112// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9113// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9114// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9115// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_MAX__ 65535
9116// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9117// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTX__ "X"
9118// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTo__ "o"
9119// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTu__ "u"
9120// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTx__ "x"
9121// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9122// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9123// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9124// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9125// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9126// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9127// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9128// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9129// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9130// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9131// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9132// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9133// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_MAX__ 255
9134// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9135// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9136// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9137// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9138// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9139// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_MAX__ 65535
9140// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9141// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9142// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9143// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9144// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9145// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9146// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9147// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9148// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9149// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9150// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9151// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9152// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9153// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9154// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9155// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9156// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9157// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_MAX__ 255
9158// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9159// WEBASSEMBLY64-NEXT:#define __USER_LABEL_PREFIX__
9160// WEBASSEMBLY64-NEXT:#define __VERSION__ "{{.*}}"
9161// WEBASSEMBLY64-NEXT:#define __WCHAR_MAX__ 2147483647
9162// WEBASSEMBLY64-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009163// WEBASSEMBLY64-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009164// WEBASSEMBLY64-NEXT:#define __WCHAR_WIDTH__ 32
9165// WEBASSEMBLY64-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009166// WEBASSEMBLY64-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009167// WEBASSEMBLY64-NEXT:#define __WINT_WIDTH__ 32
9168// WEBASSEMBLY64-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009169// WEBASSEMBLY64-NEXT:#define __clang_major__ {{.*}}
9170// WEBASSEMBLY64-NEXT:#define __clang_minor__ {{.*}}
9171// WEBASSEMBLY64-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009172// WEBASSEMBLY64-NEXT:#define __clang_version__ "{{.*}}"
9173// WEBASSEMBLY64-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009174// WEBASSEMBLY64-NOT:#define __wasm_simd128__
9175// WEBASSEMBLY64-NOT:#define __wasm_simd256__
9176// WEBASSEMBLY64-NOT:#define __wasm_simd512__
9177// WEBASSEMBLY64-NOT:#define __unix
9178// WEBASSEMBLY64-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009179// WEBASSEMBLY64-NEXT:#define __wasm 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009180// WEBASSEMBLY64-NOT:#define __wasm32
9181// WEBASSEMBLY64-NOT:#define __wasm32__
James Y Knightc97efa42016-02-11 16:51:29 +00009182// WEBASSEMBLY64-NEXT:#define __wasm64 1
9183// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
9184// WEBASSEMBLY64-NEXT:#define __wasm__ 1
Saleem Abdulrasool16fcf0a2016-02-26 16:34:01 +00009185
9186// RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
9187// CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
9188
9189// RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
9190// CYGWIN-X64: #define __USER_LABEL_PREFIX__
9191
Dylan McKay924fa3a2017-01-05 05:20:27 +00009192// RUN: %clang_cc1 -E -dM -ffreestanding -triple=avr \
9193// RUN: < /dev/null \
9194// RUN: | FileCheck -match-full-lines -check-prefix=AVR %s
9195//
9196// AVR:#define __ATOMIC_ACQUIRE 2
9197// AVR:#define __ATOMIC_ACQ_REL 4
9198// AVR:#define __ATOMIC_CONSUME 1
9199// AVR:#define __ATOMIC_RELAXED 0
9200// AVR:#define __ATOMIC_RELEASE 3
9201// AVR:#define __ATOMIC_SEQ_CST 5
9202// AVR:#define __AVR__ 1
9203// AVR:#define __BIGGEST_ALIGNMENT__ 1
9204// AVR:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9205// AVR:#define __CHAR16_TYPE__ unsigned int
9206// AVR:#define __CHAR32_TYPE__ long unsigned int
9207// AVR:#define __CHAR_BIT__ 8
9208// AVR:#define __DBL_DECIMAL_DIG__ 9
9209// AVR:#define __DBL_DENORM_MIN__ 1.40129846e-45
9210// AVR:#define __DBL_DIG__ 6
9211// AVR:#define __DBL_EPSILON__ 1.19209290e-7
9212// AVR:#define __DBL_HAS_DENORM__ 1
9213// AVR:#define __DBL_HAS_INFINITY__ 1
9214// AVR:#define __DBL_HAS_QUIET_NAN__ 1
9215// AVR:#define __DBL_MANT_DIG__ 24
9216// AVR:#define __DBL_MAX_10_EXP__ 38
9217// AVR:#define __DBL_MAX_EXP__ 128
9218// AVR:#define __DBL_MAX__ 3.40282347e+38
9219// AVR:#define __DBL_MIN_10_EXP__ (-37)
9220// AVR:#define __DBL_MIN_EXP__ (-125)
9221// AVR:#define __DBL_MIN__ 1.17549435e-38
9222// AVR:#define __FINITE_MATH_ONLY__ 0
9223// AVR:#define __FLT_DECIMAL_DIG__ 9
9224// AVR:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9225// AVR:#define __FLT_DIG__ 6
9226// AVR:#define __FLT_EPSILON__ 1.19209290e-7F
9227// AVR:#define __FLT_EVAL_METHOD__ 0
9228// AVR:#define __FLT_HAS_DENORM__ 1
9229// AVR:#define __FLT_HAS_INFINITY__ 1
9230// AVR:#define __FLT_HAS_QUIET_NAN__ 1
9231// AVR:#define __FLT_MANT_DIG__ 24
9232// AVR:#define __FLT_MAX_10_EXP__ 38
9233// AVR:#define __FLT_MAX_EXP__ 128
9234// AVR:#define __FLT_MAX__ 3.40282347e+38F
9235// AVR:#define __FLT_MIN_10_EXP__ (-37)
9236// AVR:#define __FLT_MIN_EXP__ (-125)
9237// AVR:#define __FLT_MIN__ 1.17549435e-38F
9238// AVR:#define __FLT_RADIX__ 2
9239// AVR:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1
9240// AVR:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
9241// AVR:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
9242// AVR:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1
9243// AVR:#define __GCC_ATOMIC_INT_LOCK_FREE 1
9244// AVR:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
9245// AVR:#define __GCC_ATOMIC_LONG_LOCK_FREE 1
9246// AVR:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1
9247// AVR:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1
9248// AVR:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9249// AVR:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
9250// AVR:#define __GXX_ABI_VERSION 1002
9251// AVR:#define __INT16_C_SUFFIX__
9252// AVR:#define __INT16_MAX__ 32767
9253// AVR:#define __INT16_TYPE__ short
9254// AVR:#define __INT32_C_SUFFIX__ L
9255// AVR:#define __INT32_MAX__ 2147483647L
9256// AVR:#define __INT32_TYPE__ long int
9257// AVR:#define __INT64_C_SUFFIX__ LL
9258// AVR:#define __INT64_MAX__ 9223372036854775807LL
9259// AVR:#define __INT64_TYPE__ long long int
9260// AVR:#define __INT8_C_SUFFIX__
9261// AVR:#define __INT8_MAX__ 127
9262// AVR:#define __INT8_TYPE__ signed char
9263// AVR:#define __INTMAX_C_SUFFIX__ LL
9264// AVR:#define __INTMAX_MAX__ 9223372036854775807LL
9265// AVR:#define __INTMAX_TYPE__ long long int
9266// AVR:#define __INTPTR_MAX__ 32767
9267// AVR:#define __INTPTR_TYPE__ int
9268// AVR:#define __INT_FAST16_MAX__ 32767
9269// AVR:#define __INT_FAST16_TYPE__ int
9270// AVR:#define __INT_FAST32_MAX__ 2147483647L
9271// AVR:#define __INT_FAST32_TYPE__ long int
9272// AVR:#define __INT_FAST64_MAX__ 9223372036854775807LL
9273// AVR:#define __INT_FAST64_TYPE__ long long int
9274// AVR:#define __INT_FAST8_MAX__ 127
9275// AVR:#define __INT_FAST8_TYPE__ signed char
9276// AVR:#define __INT_LEAST16_MAX__ 32767
9277// AVR:#define __INT_LEAST16_TYPE__ int
9278// AVR:#define __INT_LEAST32_MAX__ 2147483647L
9279// AVR:#define __INT_LEAST32_TYPE__ long int
9280// AVR:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9281// AVR:#define __INT_LEAST64_TYPE__ long long int
9282// AVR:#define __INT_LEAST8_MAX__ 127
9283// AVR:#define __INT_LEAST8_TYPE__ signed char
9284// AVR:#define __INT_MAX__ 32767
9285// AVR:#define __LDBL_DECIMAL_DIG__ 9
9286// AVR:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
9287// AVR:#define __LDBL_DIG__ 6
9288// AVR:#define __LDBL_EPSILON__ 1.19209290e-7L
9289// AVR:#define __LDBL_HAS_DENORM__ 1
9290// AVR:#define __LDBL_HAS_INFINITY__ 1
9291// AVR:#define __LDBL_HAS_QUIET_NAN__ 1
9292// AVR:#define __LDBL_MANT_DIG__ 24
9293// AVR:#define __LDBL_MAX_10_EXP__ 38
9294// AVR:#define __LDBL_MAX_EXP__ 128
9295// AVR:#define __LDBL_MAX__ 3.40282347e+38L
9296// AVR:#define __LDBL_MIN_10_EXP__ (-37)
9297// AVR:#define __LDBL_MIN_EXP__ (-125)
9298// AVR:#define __LDBL_MIN__ 1.17549435e-38L
9299// AVR:#define __LONG_LONG_MAX__ 9223372036854775807LL
9300// AVR:#define __LONG_MAX__ 2147483647L
9301// AVR:#define __NO_INLINE__ 1
9302// AVR:#define __ORDER_BIG_ENDIAN__ 4321
9303// AVR:#define __ORDER_LITTLE_ENDIAN__ 1234
9304// AVR:#define __ORDER_PDP_ENDIAN__ 3412
9305// AVR:#define __PRAGMA_REDEFINE_EXTNAME 1
9306// AVR:#define __PTRDIFF_MAX__ 32767
9307// AVR:#define __PTRDIFF_TYPE__ int
9308// AVR:#define __SCHAR_MAX__ 127
9309// AVR:#define __SHRT_MAX__ 32767
9310// AVR:#define __SIG_ATOMIC_MAX__ 127
9311// AVR:#define __SIG_ATOMIC_WIDTH__ 8
9312// AVR:#define __SIZEOF_DOUBLE__ 4
9313// AVR:#define __SIZEOF_FLOAT__ 4
9314// AVR:#define __SIZEOF_INT__ 2
9315// AVR:#define __SIZEOF_LONG_DOUBLE__ 4
9316// AVR:#define __SIZEOF_LONG_LONG__ 8
9317// AVR:#define __SIZEOF_LONG__ 4
9318// AVR:#define __SIZEOF_POINTER__ 2
9319// AVR:#define __SIZEOF_PTRDIFF_T__ 2
9320// AVR:#define __SIZEOF_SHORT__ 2
9321// AVR:#define __SIZEOF_SIZE_T__ 2
9322// AVR:#define __SIZEOF_WCHAR_T__ 2
9323// AVR:#define __SIZEOF_WINT_T__ 2
9324// AVR:#define __SIZE_MAX__ 65535U
9325// AVR:#define __SIZE_TYPE__ unsigned int
9326// AVR:#define __STDC__ 1
9327// AVR:#define __UINT16_MAX__ 65535U
9328// AVR:#define __UINT16_TYPE__ unsigned short
9329// AVR:#define __UINT32_C_SUFFIX__ UL
9330// AVR:#define __UINT32_MAX__ 4294967295UL
9331// AVR:#define __UINT32_TYPE__ long unsigned int
9332// AVR:#define __UINT64_C_SUFFIX__ ULL
9333// AVR:#define __UINT64_MAX__ 18446744073709551615ULL
9334// AVR:#define __UINT64_TYPE__ long long unsigned int
9335// AVR:#define __UINT8_C_SUFFIX__
9336// AVR:#define __UINT8_MAX__ 255
9337// AVR:#define __UINT8_TYPE__ unsigned char
9338// AVR:#define __UINTMAX_C_SUFFIX__ ULL
9339// AVR:#define __UINTMAX_MAX__ 18446744073709551615ULL
9340// AVR:#define __UINTMAX_TYPE__ long long unsigned int
9341// AVR:#define __UINTPTR_MAX__ 65535U
9342// AVR:#define __UINTPTR_TYPE__ unsigned int
9343// AVR:#define __UINT_FAST16_MAX__ 65535U
9344// AVR:#define __UINT_FAST16_TYPE__ unsigned int
9345// AVR:#define __UINT_FAST32_MAX__ 4294967295UL
9346// AVR:#define __UINT_FAST32_TYPE__ long unsigned int
9347// AVR:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9348// AVR:#define __UINT_FAST64_TYPE__ long long unsigned int
9349// AVR:#define __UINT_FAST8_MAX__ 255
9350// AVR:#define __UINT_FAST8_TYPE__ unsigned char
9351// AVR:#define __UINT_LEAST16_MAX__ 65535U
9352// AVR:#define __UINT_LEAST16_TYPE__ unsigned int
9353// AVR:#define __UINT_LEAST32_MAX__ 4294967295UL
9354// AVR:#define __UINT_LEAST32_TYPE__ long unsigned int
9355// AVR:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9356// AVR:#define __UINT_LEAST64_TYPE__ long long unsigned int
9357// AVR:#define __UINT_LEAST8_MAX__ 255
9358// AVR:#define __UINT_LEAST8_TYPE__ unsigned char
9359// AVR:#define __USER_LABEL_PREFIX__
9360// AVR:#define __WCHAR_MAX__ 32767
9361// AVR:#define __WCHAR_TYPE__ int
9362// AVR:#define __WINT_TYPE__ int