blob: d48d476d700995570fa56601ec4c670c86efa8ce [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
Richard Smith4b0cad02017-03-20 20:12:48 +000018// CXX1Z:#define __cplusplus 201703L
Richard Smithdbd4d4c2014-06-16 15:16:56 +000019// 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
Richard Smith4b0cad02017-03-20 20:12:48 +0000118// GXX1Z:#define __cplusplus 201703L
Richard Smithdbd4d4c2014-06-16 15:16:56 +0000119// 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//
Brad Smith9aa2bf22017-02-21 23:13:09 +0000834// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-OPENBSD %s
835//
836// AARCH64-OPENBSD:#define _LP64 1
837// AARCH64-OPENBSD-NOT:#define __AARCH64EB__ 1
838// AARCH64-OPENBSD:#define __AARCH64EL__ 1
839// AARCH64-OPENBSD-NOT:#define __AARCH_BIG_ENDIAN 1
840// AARCH64-OPENBSD:#define __ARM_64BIT_STATE 1
841// AARCH64-OPENBSD:#define __ARM_ARCH 8
842// AARCH64-OPENBSD:#define __ARM_ARCH_ISA_A64 1
843// AARCH64-OPENBSD-NOT:#define __ARM_BIG_ENDIAN 1
844// AARCH64-OPENBSD:#define __BIGGEST_ALIGNMENT__ 16
845// AARCH64-OPENBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
846// AARCH64-OPENBSD:#define __CHAR16_TYPE__ unsigned short
847// AARCH64-OPENBSD:#define __CHAR32_TYPE__ unsigned int
848// AARCH64-OPENBSD:#define __CHAR_BIT__ 8
849// AARCH64-OPENBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
850// AARCH64-OPENBSD:#define __DBL_DIG__ 15
851// AARCH64-OPENBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
852// AARCH64-OPENBSD:#define __DBL_HAS_DENORM__ 1
853// AARCH64-OPENBSD:#define __DBL_HAS_INFINITY__ 1
854// AARCH64-OPENBSD:#define __DBL_HAS_QUIET_NAN__ 1
855// AARCH64-OPENBSD:#define __DBL_MANT_DIG__ 53
856// AARCH64-OPENBSD:#define __DBL_MAX_10_EXP__ 308
857// AARCH64-OPENBSD:#define __DBL_MAX_EXP__ 1024
858// AARCH64-OPENBSD:#define __DBL_MAX__ 1.7976931348623157e+308
859// AARCH64-OPENBSD:#define __DBL_MIN_10_EXP__ (-307)
860// AARCH64-OPENBSD:#define __DBL_MIN_EXP__ (-1021)
861// AARCH64-OPENBSD:#define __DBL_MIN__ 2.2250738585072014e-308
862// AARCH64-OPENBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
863// AARCH64-OPENBSD:#define __ELF__ 1
864// AARCH64-OPENBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
865// AARCH64-OPENBSD:#define __FLT_DIG__ 6
866// AARCH64-OPENBSD:#define __FLT_EPSILON__ 1.19209290e-7F
867// AARCH64-OPENBSD:#define __FLT_EVAL_METHOD__ 0
868// AARCH64-OPENBSD:#define __FLT_HAS_DENORM__ 1
869// AARCH64-OPENBSD:#define __FLT_HAS_INFINITY__ 1
870// AARCH64-OPENBSD:#define __FLT_HAS_QUIET_NAN__ 1
871// AARCH64-OPENBSD:#define __FLT_MANT_DIG__ 24
872// AARCH64-OPENBSD:#define __FLT_MAX_10_EXP__ 38
873// AARCH64-OPENBSD:#define __FLT_MAX_EXP__ 128
874// AARCH64-OPENBSD:#define __FLT_MAX__ 3.40282347e+38F
875// AARCH64-OPENBSD:#define __FLT_MIN_10_EXP__ (-37)
876// AARCH64-OPENBSD:#define __FLT_MIN_EXP__ (-125)
877// AARCH64-OPENBSD:#define __FLT_MIN__ 1.17549435e-38F
878// AARCH64-OPENBSD:#define __FLT_RADIX__ 2
879// AARCH64-OPENBSD:#define __INT16_C_SUFFIX__
880// AARCH64-OPENBSD:#define __INT16_FMTd__ "hd"
881// AARCH64-OPENBSD:#define __INT16_FMTi__ "hi"
882// AARCH64-OPENBSD:#define __INT16_MAX__ 32767
883// AARCH64-OPENBSD:#define __INT16_TYPE__ short
884// AARCH64-OPENBSD:#define __INT32_C_SUFFIX__
885// AARCH64-OPENBSD:#define __INT32_FMTd__ "d"
886// AARCH64-OPENBSD:#define __INT32_FMTi__ "i"
887// AARCH64-OPENBSD:#define __INT32_MAX__ 2147483647
888// AARCH64-OPENBSD:#define __INT32_TYPE__ int
889// AARCH64-OPENBSD:#define __INT64_C_SUFFIX__ LL
890// AARCH64-OPENBSD:#define __INT64_FMTd__ "lld"
891// AARCH64-OPENBSD:#define __INT64_FMTi__ "lli"
892// AARCH64-OPENBSD:#define __INT64_MAX__ 9223372036854775807LL
893// AARCH64-OPENBSD:#define __INT64_TYPE__ long long int
894// AARCH64-OPENBSD:#define __INT8_C_SUFFIX__
895// AARCH64-OPENBSD:#define __INT8_FMTd__ "hhd"
896// AARCH64-OPENBSD:#define __INT8_FMTi__ "hhi"
897// AARCH64-OPENBSD:#define __INT8_MAX__ 127
898// AARCH64-OPENBSD:#define __INT8_TYPE__ signed char
899// AARCH64-OPENBSD:#define __INTMAX_C_SUFFIX__ LL
900// AARCH64-OPENBSD:#define __INTMAX_FMTd__ "lld"
901// AARCH64-OPENBSD:#define __INTMAX_FMTi__ "lli"
902// AARCH64-OPENBSD:#define __INTMAX_MAX__ 9223372036854775807LL
903// AARCH64-OPENBSD:#define __INTMAX_TYPE__ long long int
904// AARCH64-OPENBSD:#define __INTMAX_WIDTH__ 64
905// AARCH64-OPENBSD:#define __INTPTR_FMTd__ "ld"
906// AARCH64-OPENBSD:#define __INTPTR_FMTi__ "li"
907// AARCH64-OPENBSD:#define __INTPTR_MAX__ 9223372036854775807L
908// AARCH64-OPENBSD:#define __INTPTR_TYPE__ long int
909// AARCH64-OPENBSD:#define __INTPTR_WIDTH__ 64
910// AARCH64-OPENBSD:#define __INT_FAST16_FMTd__ "hd"
911// AARCH64-OPENBSD:#define __INT_FAST16_FMTi__ "hi"
912// AARCH64-OPENBSD:#define __INT_FAST16_MAX__ 32767
913// AARCH64-OPENBSD:#define __INT_FAST16_TYPE__ short
914// AARCH64-OPENBSD:#define __INT_FAST32_FMTd__ "d"
915// AARCH64-OPENBSD:#define __INT_FAST32_FMTi__ "i"
916// AARCH64-OPENBSD:#define __INT_FAST32_MAX__ 2147483647
917// AARCH64-OPENBSD:#define __INT_FAST32_TYPE__ int
918// AARCH64-OPENBSD:#define __INT_FAST64_FMTd__ "ld"
919// AARCH64-OPENBSD:#define __INT_FAST64_FMTi__ "li"
920// AARCH64-OPENBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
921// AARCH64-OPENBSD:#define __INT_FAST64_TYPE__ long int
922// AARCH64-OPENBSD:#define __INT_FAST8_FMTd__ "hhd"
923// AARCH64-OPENBSD:#define __INT_FAST8_FMTi__ "hhi"
924// AARCH64-OPENBSD:#define __INT_FAST8_MAX__ 127
925// AARCH64-OPENBSD:#define __INT_FAST8_TYPE__ signed char
926// AARCH64-OPENBSD:#define __INT_LEAST16_FMTd__ "hd"
927// AARCH64-OPENBSD:#define __INT_LEAST16_FMTi__ "hi"
928// AARCH64-OPENBSD:#define __INT_LEAST16_MAX__ 32767
929// AARCH64-OPENBSD:#define __INT_LEAST16_TYPE__ short
930// AARCH64-OPENBSD:#define __INT_LEAST32_FMTd__ "d"
931// AARCH64-OPENBSD:#define __INT_LEAST32_FMTi__ "i"
932// AARCH64-OPENBSD:#define __INT_LEAST32_MAX__ 2147483647
933// AARCH64-OPENSD:#define __INT_LEAST32_TYPE__ int
934// AARCH64-OPENBSD:#define __INT_LEAST64_FMTd__ "ld"
935// AARCH64-OPENBSD:#define __INT_LEAST64_FMTi__ "li"
936// AARCH64-OPENBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
937// AARCH64-OPENBSD:#define __INT_LEAST64_TYPE__ long int
938// AARCH64-OPENBSD:#define __INT_LEAST8_FMTd__ "hhd"
939// AARCH64-OPENBSD:#define __INT_LEAST8_FMTi__ "hhi"
940// AARCH64-OPENBSD:#define __INT_LEAST8_MAX__ 127
941// AARCH64-OPENBSD:#define __INT_LEAST8_TYPE__ signed char
942// AARCH64-OPENBSD:#define __INT_MAX__ 2147483647
943// AARCH64-OPENBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
944// AARCH64-OPENBSD:#define __LDBL_DIG__ 33
945// AARCH64-OPENBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
946// AARCH64-OPENBSD:#define __LDBL_HAS_DENORM__ 1
947// AARCH64-OPENBSD:#define __LDBL_HAS_INFINITY__ 1
948// AARCH64-OPENBSD:#define __LDBL_HAS_QUIET_NAN__ 1
949// AARCH64-OPENBSD:#define __LDBL_MANT_DIG__ 113
950// AARCH64-OPENBSD:#define __LDBL_MAX_10_EXP__ 4932
951// AARCH64-OPENBSD:#define __LDBL_MAX_EXP__ 16384
952// AARCH64-OPENBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
953// AARCH64-OPENBSD:#define __LDBL_MIN_10_EXP__ (-4931)
954// AARCH64-OPENBSD:#define __LDBL_MIN_EXP__ (-16381)
955// AARCH64-OPENBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
956// AARCH64-OPENBSD:#define __LITTLE_ENDIAN__ 1
957// AARCH64-OPENBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
958// AARCH64-OPENBSD:#define __LONG_MAX__ 9223372036854775807L
959// AARCH64-OPENBSD:#define __LP64__ 1
960// AARCH64-OPENBSD:#define __OpenBSD__ 1
961// AARCH64-OPENBSD:#define __POINTER_WIDTH__ 64
962// AARCH64-OPENBSD:#define __PTRDIFF_TYPE__ long int
963// AARCH64-OPENBSD:#define __PTRDIFF_WIDTH__ 64
964// AARCH64-OPENBSD:#define __SCHAR_MAX__ 127
965// AARCH64-OPENBSD:#define __SHRT_MAX__ 32767
966// AARCH64-OPENBSD:#define __SIG_ATOMIC_MAX__ 2147483647
967// AARCH64-OPENBSD:#define __SIG_ATOMIC_WIDTH__ 32
968// AARCH64-OPENBSD:#define __SIZEOF_DOUBLE__ 8
969// AARCH64-OPENBSD:#define __SIZEOF_FLOAT__ 4
970// AARCH64-OPENBSD:#define __SIZEOF_INT__ 4
971// AARCH64-OPENBSD:#define __SIZEOF_LONG_DOUBLE__ 16
972// AARCH64-OPENBSD:#define __SIZEOF_LONG_LONG__ 8
973// AARCH64-OPENBSD:#define __SIZEOF_LONG__ 8
974// AARCH64-OPENBSD:#define __SIZEOF_POINTER__ 8
975// AARCH64-OPENBSD:#define __SIZEOF_PTRDIFF_T__ 8
976// AARCH64-OPENBSD:#define __SIZEOF_SHORT__ 2
977// AARCH64-OPENBSD:#define __SIZEOF_SIZE_T__ 8
978// AARCH64-OPENBSD:#define __SIZEOF_WCHAR_T__ 4
979// AARCH64-OPENBSD:#define __SIZEOF_WINT_T__ 4
980// AARCH64-OPENBSD:#define __SIZE_MAX__ 18446744073709551615UL
981// AARCH64-OPENBSD:#define __SIZE_TYPE__ long unsigned int
982// AARCH64-OPENBSD:#define __SIZE_WIDTH__ 64
983// AARCH64-OPENBSD:#define __UINT16_C_SUFFIX__
984// AARCH64-OPENBSD:#define __UINT16_MAX__ 65535
985// AARCH64-OPENBSD:#define __UINT16_TYPE__ unsigned short
986// AARCH64-OPENBSD:#define __UINT32_C_SUFFIX__ U
987// AARCH64-OPENBSD:#define __UINT32_MAX__ 4294967295U
988// AARCH64-OPENBSD:#define __UINT32_TYPE__ unsigned int
989// AARCH64-OPENBSD:#define __UINT64_C_SUFFIX__ ULL
990// AARCH64-OPENBSD:#define __UINT64_MAX__ 18446744073709551615ULL
991// AARCH64-OPENBSD:#define __UINT64_TYPE__ long long unsigned int
992// AARCH64-OPENBSD:#define __UINT8_C_SUFFIX__
993// AARCH64-OPENBSD:#define __UINT8_MAX__ 255
994// AARCH64-OPENBSD:#define __UINT8_TYPE__ unsigned char
995// AARCH64-OPENBSD:#define __UINTMAX_C_SUFFIX__ ULL
996// AARCH64-OPENBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
997// AARCH64-OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
998// AARCH64-OPENBSD:#define __UINTMAX_WIDTH__ 64
999// AARCH64-OPENBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1000// AARCH64-OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
1001// AARCH64-OPENBSD:#define __UINTPTR_WIDTH__ 64
1002// AARCH64-OPENBSD:#define __UINT_FAST16_MAX__ 65535
1003// AARCH64-OPENBSD:#define __UINT_FAST16_TYPE__ unsigned short
1004// AARCH64-OPENBSD:#define __UINT_FAST32_MAX__ 4294967295U
1005// AARCH64-OPENBSD:#define __UINT_FAST32_TYPE__ unsigned int
1006// AARCH64-OPENBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1007// AARCH64-OPENBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1008// AARCH64-OPENBSD:#define __UINT_FAST8_MAX__ 255
1009// AARCH64-OPENBSD:#define __UINT_FAST8_TYPE__ unsigned char
1010// AARCH64-OPENBSD:#define __UINT_LEAST16_MAX__ 65535
1011// AARCH64-OPENBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1012// AARCH64-OPENBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1013// AARCH64-OPENBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1014// AARCH64-OPENBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1015// AARCH64-OPENBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1016// AARCH64-OPENBSD:#define __UINT_LEAST8_MAX__ 255
1017// AARCH64-OPENBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1018// AARCH64-OPENBSD:#define __USER_LABEL_PREFIX__
1019// AARCH64-OPENBSD:#define __WCHAR_MAX__ 2147483647
1020// AARCH64-OPENBSD:#define __WCHAR_TYPE__ int
1021// AARCH64-OPENBSD:#define __WCHAR_WIDTH__ 32
1022// AARCH64-OPENBSD:#define __WINT_TYPE__ int
1023// AARCH64-OPENBSD:#define __WINT_WIDTH__ 32
1024// AARCH64-OPENBSD:#define __aarch64__ 1
1025//
James Y Knightc97efa42016-02-11 16:51:29 +00001026// 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 +00001027//
1028// AARCH64-FREEBSD:#define _LP64 1
1029// AARCH64-FREEBSD-NOT:#define __AARCH64EB__ 1
1030// AARCH64-FREEBSD:#define __AARCH64EL__ 1
1031// AARCH64-FREEBSD-NOT:#define __AARCH_BIG_ENDIAN 1
1032// AARCH64-FREEBSD:#define __ARM_64BIT_STATE 1
1033// AARCH64-FREEBSD:#define __ARM_ARCH 8
1034// AARCH64-FREEBSD:#define __ARM_ARCH_ISA_A64 1
1035// AARCH64-FREEBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001036// AARCH64-FREEBSD:#define __BIGGEST_ALIGNMENT__ 16
Ed Maste6a9eda52014-11-13 16:55:42 +00001037// AARCH64-FREEBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1038// AARCH64-FREEBSD:#define __CHAR16_TYPE__ unsigned short
1039// AARCH64-FREEBSD:#define __CHAR32_TYPE__ unsigned int
1040// AARCH64-FREEBSD:#define __CHAR_BIT__ 8
1041// AARCH64-FREEBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1042// AARCH64-FREEBSD:#define __DBL_DIG__ 15
1043// AARCH64-FREEBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
1044// AARCH64-FREEBSD:#define __DBL_HAS_DENORM__ 1
1045// AARCH64-FREEBSD:#define __DBL_HAS_INFINITY__ 1
1046// AARCH64-FREEBSD:#define __DBL_HAS_QUIET_NAN__ 1
1047// AARCH64-FREEBSD:#define __DBL_MANT_DIG__ 53
1048// AARCH64-FREEBSD:#define __DBL_MAX_10_EXP__ 308
1049// AARCH64-FREEBSD:#define __DBL_MAX_EXP__ 1024
1050// AARCH64-FREEBSD:#define __DBL_MAX__ 1.7976931348623157e+308
1051// AARCH64-FREEBSD:#define __DBL_MIN_10_EXP__ (-307)
1052// AARCH64-FREEBSD:#define __DBL_MIN_EXP__ (-1021)
1053// AARCH64-FREEBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001054// AARCH64-FREEBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ed Maste6a9eda52014-11-13 16:55:42 +00001055// AARCH64-FREEBSD:#define __ELF__ 1
1056// AARCH64-FREEBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1057// AARCH64-FREEBSD:#define __FLT_DIG__ 6
1058// AARCH64-FREEBSD:#define __FLT_EPSILON__ 1.19209290e-7F
1059// AARCH64-FREEBSD:#define __FLT_EVAL_METHOD__ 0
1060// AARCH64-FREEBSD:#define __FLT_HAS_DENORM__ 1
1061// AARCH64-FREEBSD:#define __FLT_HAS_INFINITY__ 1
1062// AARCH64-FREEBSD:#define __FLT_HAS_QUIET_NAN__ 1
1063// AARCH64-FREEBSD:#define __FLT_MANT_DIG__ 24
1064// AARCH64-FREEBSD:#define __FLT_MAX_10_EXP__ 38
1065// AARCH64-FREEBSD:#define __FLT_MAX_EXP__ 128
1066// AARCH64-FREEBSD:#define __FLT_MAX__ 3.40282347e+38F
1067// AARCH64-FREEBSD:#define __FLT_MIN_10_EXP__ (-37)
1068// AARCH64-FREEBSD:#define __FLT_MIN_EXP__ (-125)
1069// AARCH64-FREEBSD:#define __FLT_MIN__ 1.17549435e-38F
1070// AARCH64-FREEBSD:#define __FLT_RADIX__ 2
1071// AARCH64-FREEBSD:#define __FreeBSD__ 11
James Y Knightc97efa42016-02-11 16:51:29 +00001072// AARCH64-FREEBSD:#define __INT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001073// AARCH64-FREEBSD:#define __INT16_FMTd__ "hd"
1074// AARCH64-FREEBSD:#define __INT16_FMTi__ "hi"
1075// AARCH64-FREEBSD:#define __INT16_MAX__ 32767
1076// AARCH64-FREEBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001077// AARCH64-FREEBSD:#define __INT32_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001078// AARCH64-FREEBSD:#define __INT32_FMTd__ "d"
1079// AARCH64-FREEBSD:#define __INT32_FMTi__ "i"
1080// AARCH64-FREEBSD:#define __INT32_MAX__ 2147483647
1081// AARCH64-FREEBSD:#define __INT32_TYPE__ int
1082// AARCH64-FREEBSD:#define __INT64_C_SUFFIX__ L
1083// AARCH64-FREEBSD:#define __INT64_FMTd__ "ld"
1084// AARCH64-FREEBSD:#define __INT64_FMTi__ "li"
1085// AARCH64-FREEBSD:#define __INT64_MAX__ 9223372036854775807L
1086// AARCH64-FREEBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00001087// AARCH64-FREEBSD:#define __INT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001088// AARCH64-FREEBSD:#define __INT8_FMTd__ "hhd"
1089// AARCH64-FREEBSD:#define __INT8_FMTi__ "hhi"
1090// AARCH64-FREEBSD:#define __INT8_MAX__ 127
1091// AARCH64-FREEBSD:#define __INT8_TYPE__ signed char
1092// AARCH64-FREEBSD:#define __INTMAX_C_SUFFIX__ L
1093// AARCH64-FREEBSD:#define __INTMAX_FMTd__ "ld"
1094// AARCH64-FREEBSD:#define __INTMAX_FMTi__ "li"
1095// AARCH64-FREEBSD:#define __INTMAX_MAX__ 9223372036854775807L
1096// AARCH64-FREEBSD:#define __INTMAX_TYPE__ long int
1097// AARCH64-FREEBSD:#define __INTMAX_WIDTH__ 64
1098// AARCH64-FREEBSD:#define __INTPTR_FMTd__ "ld"
1099// AARCH64-FREEBSD:#define __INTPTR_FMTi__ "li"
1100// AARCH64-FREEBSD:#define __INTPTR_MAX__ 9223372036854775807L
1101// AARCH64-FREEBSD:#define __INTPTR_TYPE__ long int
1102// AARCH64-FREEBSD:#define __INTPTR_WIDTH__ 64
1103// AARCH64-FREEBSD:#define __INT_FAST16_FMTd__ "hd"
1104// AARCH64-FREEBSD:#define __INT_FAST16_FMTi__ "hi"
1105// AARCH64-FREEBSD:#define __INT_FAST16_MAX__ 32767
1106// AARCH64-FREEBSD:#define __INT_FAST16_TYPE__ short
1107// AARCH64-FREEBSD:#define __INT_FAST32_FMTd__ "d"
1108// AARCH64-FREEBSD:#define __INT_FAST32_FMTi__ "i"
1109// AARCH64-FREEBSD:#define __INT_FAST32_MAX__ 2147483647
1110// AARCH64-FREEBSD:#define __INT_FAST32_TYPE__ int
1111// AARCH64-FREEBSD:#define __INT_FAST64_FMTd__ "ld"
1112// AARCH64-FREEBSD:#define __INT_FAST64_FMTi__ "li"
1113// AARCH64-FREEBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
1114// AARCH64-FREEBSD:#define __INT_FAST64_TYPE__ long int
1115// AARCH64-FREEBSD:#define __INT_FAST8_FMTd__ "hhd"
1116// AARCH64-FREEBSD:#define __INT_FAST8_FMTi__ "hhi"
1117// AARCH64-FREEBSD:#define __INT_FAST8_MAX__ 127
1118// AARCH64-FREEBSD:#define __INT_FAST8_TYPE__ signed char
1119// AARCH64-FREEBSD:#define __INT_LEAST16_FMTd__ "hd"
1120// AARCH64-FREEBSD:#define __INT_LEAST16_FMTi__ "hi"
1121// AARCH64-FREEBSD:#define __INT_LEAST16_MAX__ 32767
1122// AARCH64-FREEBSD:#define __INT_LEAST16_TYPE__ short
1123// AARCH64-FREEBSD:#define __INT_LEAST32_FMTd__ "d"
1124// AARCH64-FREEBSD:#define __INT_LEAST32_FMTi__ "i"
1125// AARCH64-FREEBSD:#define __INT_LEAST32_MAX__ 2147483647
1126// AARCH64-FREEBSD:#define __INT_LEAST32_TYPE__ int
1127// AARCH64-FREEBSD:#define __INT_LEAST64_FMTd__ "ld"
1128// AARCH64-FREEBSD:#define __INT_LEAST64_FMTi__ "li"
1129// AARCH64-FREEBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
1130// AARCH64-FREEBSD:#define __INT_LEAST64_TYPE__ long int
1131// AARCH64-FREEBSD:#define __INT_LEAST8_FMTd__ "hhd"
1132// AARCH64-FREEBSD:#define __INT_LEAST8_FMTi__ "hhi"
1133// AARCH64-FREEBSD:#define __INT_LEAST8_MAX__ 127
1134// AARCH64-FREEBSD:#define __INT_LEAST8_TYPE__ signed char
1135// AARCH64-FREEBSD:#define __INT_MAX__ 2147483647
1136// AARCH64-FREEBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1137// AARCH64-FREEBSD:#define __LDBL_DIG__ 33
1138// AARCH64-FREEBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1139// AARCH64-FREEBSD:#define __LDBL_HAS_DENORM__ 1
1140// AARCH64-FREEBSD:#define __LDBL_HAS_INFINITY__ 1
1141// AARCH64-FREEBSD:#define __LDBL_HAS_QUIET_NAN__ 1
1142// AARCH64-FREEBSD:#define __LDBL_MANT_DIG__ 113
1143// AARCH64-FREEBSD:#define __LDBL_MAX_10_EXP__ 4932
1144// AARCH64-FREEBSD:#define __LDBL_MAX_EXP__ 16384
1145// AARCH64-FREEBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1146// AARCH64-FREEBSD:#define __LDBL_MIN_10_EXP__ (-4931)
1147// AARCH64-FREEBSD:#define __LDBL_MIN_EXP__ (-16381)
1148// AARCH64-FREEBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1149// AARCH64-FREEBSD:#define __LITTLE_ENDIAN__ 1
1150// AARCH64-FREEBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
1151// AARCH64-FREEBSD:#define __LONG_MAX__ 9223372036854775807L
1152// AARCH64-FREEBSD:#define __LP64__ 1
1153// AARCH64-FREEBSD:#define __POINTER_WIDTH__ 64
1154// AARCH64-FREEBSD:#define __PTRDIFF_TYPE__ long int
1155// AARCH64-FREEBSD:#define __PTRDIFF_WIDTH__ 64
1156// AARCH64-FREEBSD:#define __SCHAR_MAX__ 127
1157// AARCH64-FREEBSD:#define __SHRT_MAX__ 32767
1158// AARCH64-FREEBSD:#define __SIG_ATOMIC_MAX__ 2147483647
1159// AARCH64-FREEBSD:#define __SIG_ATOMIC_WIDTH__ 32
1160// AARCH64-FREEBSD:#define __SIZEOF_DOUBLE__ 8
1161// AARCH64-FREEBSD:#define __SIZEOF_FLOAT__ 4
1162// AARCH64-FREEBSD:#define __SIZEOF_INT128__ 16
1163// AARCH64-FREEBSD:#define __SIZEOF_INT__ 4
1164// AARCH64-FREEBSD:#define __SIZEOF_LONG_DOUBLE__ 16
1165// AARCH64-FREEBSD:#define __SIZEOF_LONG_LONG__ 8
1166// AARCH64-FREEBSD:#define __SIZEOF_LONG__ 8
1167// AARCH64-FREEBSD:#define __SIZEOF_POINTER__ 8
1168// AARCH64-FREEBSD:#define __SIZEOF_PTRDIFF_T__ 8
1169// AARCH64-FREEBSD:#define __SIZEOF_SHORT__ 2
1170// AARCH64-FREEBSD:#define __SIZEOF_SIZE_T__ 8
1171// AARCH64-FREEBSD:#define __SIZEOF_WCHAR_T__ 4
1172// AARCH64-FREEBSD:#define __SIZEOF_WINT_T__ 4
1173// AARCH64-FREEBSD:#define __SIZE_MAX__ 18446744073709551615UL
1174// AARCH64-FREEBSD:#define __SIZE_TYPE__ long unsigned int
1175// AARCH64-FREEBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001176// AARCH64-FREEBSD:#define __UINT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001177// AARCH64-FREEBSD:#define __UINT16_MAX__ 65535
1178// AARCH64-FREEBSD:#define __UINT16_TYPE__ unsigned short
1179// AARCH64-FREEBSD:#define __UINT32_C_SUFFIX__ U
1180// AARCH64-FREEBSD:#define __UINT32_MAX__ 4294967295U
1181// AARCH64-FREEBSD:#define __UINT32_TYPE__ unsigned int
1182// AARCH64-FREEBSD:#define __UINT64_C_SUFFIX__ UL
1183// AARCH64-FREEBSD:#define __UINT64_MAX__ 18446744073709551615UL
1184// AARCH64-FREEBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001185// AARCH64-FREEBSD:#define __UINT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001186// AARCH64-FREEBSD:#define __UINT8_MAX__ 255
1187// AARCH64-FREEBSD:#define __UINT8_TYPE__ unsigned char
1188// AARCH64-FREEBSD:#define __UINTMAX_C_SUFFIX__ UL
1189// AARCH64-FREEBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
1190// AARCH64-FREEBSD:#define __UINTMAX_TYPE__ long unsigned int
1191// AARCH64-FREEBSD:#define __UINTMAX_WIDTH__ 64
1192// AARCH64-FREEBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1193// AARCH64-FREEBSD:#define __UINTPTR_TYPE__ long unsigned int
1194// AARCH64-FREEBSD:#define __UINTPTR_WIDTH__ 64
1195// AARCH64-FREEBSD:#define __UINT_FAST16_MAX__ 65535
1196// AARCH64-FREEBSD:#define __UINT_FAST16_TYPE__ unsigned short
1197// AARCH64-FREEBSD:#define __UINT_FAST32_MAX__ 4294967295U
1198// AARCH64-FREEBSD:#define __UINT_FAST32_TYPE__ unsigned int
1199// AARCH64-FREEBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1200// AARCH64-FREEBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1201// AARCH64-FREEBSD:#define __UINT_FAST8_MAX__ 255
1202// AARCH64-FREEBSD:#define __UINT_FAST8_TYPE__ unsigned char
1203// AARCH64-FREEBSD:#define __UINT_LEAST16_MAX__ 65535
1204// AARCH64-FREEBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1205// AARCH64-FREEBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1206// AARCH64-FREEBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1207// AARCH64-FREEBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1208// AARCH64-FREEBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1209// AARCH64-FREEBSD:#define __UINT_LEAST8_MAX__ 255
1210// AARCH64-FREEBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1211// AARCH64-FREEBSD:#define __USER_LABEL_PREFIX__
1212// AARCH64-FREEBSD:#define __WCHAR_MAX__ 4294967295U
1213// AARCH64-FREEBSD:#define __WCHAR_TYPE__ unsigned int
1214// AARCH64-FREEBSD:#define __WCHAR_UNSIGNED__ 1
1215// AARCH64-FREEBSD:#define __WCHAR_WIDTH__ 32
1216// AARCH64-FREEBSD:#define __WINT_TYPE__ int
1217// AARCH64-FREEBSD:#define __WINT_WIDTH__ 32
1218// AARCH64-FREEBSD:#define __aarch64__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +00001219
James Y Knightc97efa42016-02-11 16:51:29 +00001220// 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 +00001221//
1222// AARCH64-DARWIN: #define _LP64 1
1223// AARCH64-NOT: #define __AARCH64EB__ 1
1224// AARCH64-DARWIN: #define __AARCH64EL__ 1
1225// AARCH64-NOT: #define __AARCH_BIG_ENDIAN 1
1226// AARCH64-DARWIN: #define __ARM_64BIT_STATE 1
1227// AARCH64-DARWIN: #define __ARM_ARCH 8
1228// AARCH64-DARWIN: #define __ARM_ARCH_ISA_A64 1
1229// AARCH64-NOT: #define __ARM_BIG_ENDIAN 1
1230// AARCH64-DARWIN: #define __BIGGEST_ALIGNMENT__ 8
1231// AARCH64-DARWIN: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1232// AARCH64-DARWIN: #define __CHAR16_TYPE__ unsigned short
1233// AARCH64-DARWIN: #define __CHAR32_TYPE__ unsigned int
1234// AARCH64-DARWIN: #define __CHAR_BIT__ 8
1235// AARCH64-DARWIN: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1236// AARCH64-DARWIN: #define __DBL_DIG__ 15
1237// AARCH64-DARWIN: #define __DBL_EPSILON__ 2.2204460492503131e-16
1238// AARCH64-DARWIN: #define __DBL_HAS_DENORM__ 1
1239// AARCH64-DARWIN: #define __DBL_HAS_INFINITY__ 1
1240// AARCH64-DARWIN: #define __DBL_HAS_QUIET_NAN__ 1
1241// AARCH64-DARWIN: #define __DBL_MANT_DIG__ 53
1242// AARCH64-DARWIN: #define __DBL_MAX_10_EXP__ 308
1243// AARCH64-DARWIN: #define __DBL_MAX_EXP__ 1024
1244// AARCH64-DARWIN: #define __DBL_MAX__ 1.7976931348623157e+308
1245// AARCH64-DARWIN: #define __DBL_MIN_10_EXP__ (-307)
1246// AARCH64-DARWIN: #define __DBL_MIN_EXP__ (-1021)
1247// AARCH64-DARWIN: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001248// AARCH64-DARWIN: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Tim Northovera6a19f12015-02-06 01:25:07 +00001249// AARCH64-DARWIN: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1250// AARCH64-DARWIN: #define __FLT_DIG__ 6
1251// AARCH64-DARWIN: #define __FLT_EPSILON__ 1.19209290e-7F
1252// AARCH64-DARWIN: #define __FLT_EVAL_METHOD__ 0
1253// AARCH64-DARWIN: #define __FLT_HAS_DENORM__ 1
1254// AARCH64-DARWIN: #define __FLT_HAS_INFINITY__ 1
1255// AARCH64-DARWIN: #define __FLT_HAS_QUIET_NAN__ 1
1256// AARCH64-DARWIN: #define __FLT_MANT_DIG__ 24
1257// AARCH64-DARWIN: #define __FLT_MAX_10_EXP__ 38
1258// AARCH64-DARWIN: #define __FLT_MAX_EXP__ 128
1259// AARCH64-DARWIN: #define __FLT_MAX__ 3.40282347e+38F
1260// AARCH64-DARWIN: #define __FLT_MIN_10_EXP__ (-37)
1261// AARCH64-DARWIN: #define __FLT_MIN_EXP__ (-125)
1262// AARCH64-DARWIN: #define __FLT_MIN__ 1.17549435e-38F
1263// AARCH64-DARWIN: #define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001264// AARCH64-DARWIN: #define __INT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001265// AARCH64-DARWIN: #define __INT16_FMTd__ "hd"
1266// AARCH64-DARWIN: #define __INT16_FMTi__ "hi"
1267// AARCH64-DARWIN: #define __INT16_MAX__ 32767
1268// AARCH64-DARWIN: #define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001269// AARCH64-DARWIN: #define __INT32_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001270// AARCH64-DARWIN: #define __INT32_FMTd__ "d"
1271// AARCH64-DARWIN: #define __INT32_FMTi__ "i"
1272// AARCH64-DARWIN: #define __INT32_MAX__ 2147483647
1273// AARCH64-DARWIN: #define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00001274// AARCH64-DARWIN: #define __INT64_C_SUFFIX__ LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001275// AARCH64-DARWIN: #define __INT64_FMTd__ "lld"
1276// AARCH64-DARWIN: #define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00001277// AARCH64-DARWIN: #define __INT64_MAX__ 9223372036854775807LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001278// AARCH64-DARWIN: #define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001279// AARCH64-DARWIN: #define __INT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001280// AARCH64-DARWIN: #define __INT8_FMTd__ "hhd"
1281// AARCH64-DARWIN: #define __INT8_FMTi__ "hhi"
1282// AARCH64-DARWIN: #define __INT8_MAX__ 127
1283// AARCH64-DARWIN: #define __INT8_TYPE__ signed char
1284// AARCH64-DARWIN: #define __INTMAX_C_SUFFIX__ L
1285// AARCH64-DARWIN: #define __INTMAX_FMTd__ "ld"
1286// AARCH64-DARWIN: #define __INTMAX_FMTi__ "li"
1287// AARCH64-DARWIN: #define __INTMAX_MAX__ 9223372036854775807L
1288// AARCH64-DARWIN: #define __INTMAX_TYPE__ long int
1289// AARCH64-DARWIN: #define __INTMAX_WIDTH__ 64
1290// AARCH64-DARWIN: #define __INTPTR_FMTd__ "ld"
1291// AARCH64-DARWIN: #define __INTPTR_FMTi__ "li"
1292// AARCH64-DARWIN: #define __INTPTR_MAX__ 9223372036854775807L
1293// AARCH64-DARWIN: #define __INTPTR_TYPE__ long int
1294// AARCH64-DARWIN: #define __INTPTR_WIDTH__ 64
1295// AARCH64-DARWIN: #define __INT_FAST16_FMTd__ "hd"
1296// AARCH64-DARWIN: #define __INT_FAST16_FMTi__ "hi"
1297// AARCH64-DARWIN: #define __INT_FAST16_MAX__ 32767
1298// AARCH64-DARWIN: #define __INT_FAST16_TYPE__ short
1299// AARCH64-DARWIN: #define __INT_FAST32_FMTd__ "d"
1300// AARCH64-DARWIN: #define __INT_FAST32_FMTi__ "i"
1301// AARCH64-DARWIN: #define __INT_FAST32_MAX__ 2147483647
1302// AARCH64-DARWIN: #define __INT_FAST32_TYPE__ int
1303// AARCH64-DARWIN: #define __INT_FAST64_FMTd__ "ld"
1304// AARCH64-DARWIN: #define __INT_FAST64_FMTi__ "li"
1305// AARCH64-DARWIN: #define __INT_FAST64_MAX__ 9223372036854775807L
1306// AARCH64-DARWIN: #define __INT_FAST64_TYPE__ long int
1307// AARCH64-DARWIN: #define __INT_FAST8_FMTd__ "hhd"
1308// AARCH64-DARWIN: #define __INT_FAST8_FMTi__ "hhi"
1309// AARCH64-DARWIN: #define __INT_FAST8_MAX__ 127
1310// AARCH64-DARWIN: #define __INT_FAST8_TYPE__ signed char
1311// AARCH64-DARWIN: #define __INT_LEAST16_FMTd__ "hd"
1312// AARCH64-DARWIN: #define __INT_LEAST16_FMTi__ "hi"
1313// AARCH64-DARWIN: #define __INT_LEAST16_MAX__ 32767
1314// AARCH64-DARWIN: #define __INT_LEAST16_TYPE__ short
1315// AARCH64-DARWIN: #define __INT_LEAST32_FMTd__ "d"
1316// AARCH64-DARWIN: #define __INT_LEAST32_FMTi__ "i"
1317// AARCH64-DARWIN: #define __INT_LEAST32_MAX__ 2147483647
1318// AARCH64-DARWIN: #define __INT_LEAST32_TYPE__ int
1319// AARCH64-DARWIN: #define __INT_LEAST64_FMTd__ "ld"
1320// AARCH64-DARWIN: #define __INT_LEAST64_FMTi__ "li"
1321// AARCH64-DARWIN: #define __INT_LEAST64_MAX__ 9223372036854775807L
1322// AARCH64-DARWIN: #define __INT_LEAST64_TYPE__ long int
1323// AARCH64-DARWIN: #define __INT_LEAST8_FMTd__ "hhd"
1324// AARCH64-DARWIN: #define __INT_LEAST8_FMTi__ "hhi"
1325// AARCH64-DARWIN: #define __INT_LEAST8_MAX__ 127
1326// AARCH64-DARWIN: #define __INT_LEAST8_TYPE__ signed char
1327// AARCH64-DARWIN: #define __INT_MAX__ 2147483647
1328// AARCH64-DARWIN: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1329// AARCH64-DARWIN: #define __LDBL_DIG__ 15
1330// AARCH64-DARWIN: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1331// AARCH64-DARWIN: #define __LDBL_HAS_DENORM__ 1
1332// AARCH64-DARWIN: #define __LDBL_HAS_INFINITY__ 1
1333// AARCH64-DARWIN: #define __LDBL_HAS_QUIET_NAN__ 1
1334// AARCH64-DARWIN: #define __LDBL_MANT_DIG__ 53
1335// AARCH64-DARWIN: #define __LDBL_MAX_10_EXP__ 308
1336// AARCH64-DARWIN: #define __LDBL_MAX_EXP__ 1024
1337// AARCH64-DARWIN: #define __LDBL_MAX__ 1.7976931348623157e+308L
1338// AARCH64-DARWIN: #define __LDBL_MIN_10_EXP__ (-307)
1339// AARCH64-DARWIN: #define __LDBL_MIN_EXP__ (-1021)
1340// AARCH64-DARWIN: #define __LDBL_MIN__ 2.2250738585072014e-308L
1341// AARCH64-DARWIN: #define __LONG_LONG_MAX__ 9223372036854775807LL
1342// AARCH64-DARWIN: #define __LONG_MAX__ 9223372036854775807L
1343// AARCH64-DARWIN: #define __LP64__ 1
1344// AARCH64-DARWIN: #define __POINTER_WIDTH__ 64
1345// AARCH64-DARWIN: #define __PTRDIFF_TYPE__ long int
1346// AARCH64-DARWIN: #define __PTRDIFF_WIDTH__ 64
1347// AARCH64-DARWIN: #define __SCHAR_MAX__ 127
1348// AARCH64-DARWIN: #define __SHRT_MAX__ 32767
1349// AARCH64-DARWIN: #define __SIG_ATOMIC_MAX__ 2147483647
1350// AARCH64-DARWIN: #define __SIG_ATOMIC_WIDTH__ 32
1351// AARCH64-DARWIN: #define __SIZEOF_DOUBLE__ 8
1352// AARCH64-DARWIN: #define __SIZEOF_FLOAT__ 4
1353// AARCH64-DARWIN: #define __SIZEOF_INT128__ 16
1354// AARCH64-DARWIN: #define __SIZEOF_INT__ 4
1355// AARCH64-DARWIN: #define __SIZEOF_LONG_DOUBLE__ 8
1356// AARCH64-DARWIN: #define __SIZEOF_LONG_LONG__ 8
1357// AARCH64-DARWIN: #define __SIZEOF_LONG__ 8
1358// AARCH64-DARWIN: #define __SIZEOF_POINTER__ 8
1359// AARCH64-DARWIN: #define __SIZEOF_PTRDIFF_T__ 8
1360// AARCH64-DARWIN: #define __SIZEOF_SHORT__ 2
1361// AARCH64-DARWIN: #define __SIZEOF_SIZE_T__ 8
1362// AARCH64-DARWIN: #define __SIZEOF_WCHAR_T__ 4
1363// AARCH64-DARWIN: #define __SIZEOF_WINT_T__ 4
1364// AARCH64-DARWIN: #define __SIZE_MAX__ 18446744073709551615UL
1365// AARCH64-DARWIN: #define __SIZE_TYPE__ long unsigned int
1366// AARCH64-DARWIN: #define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001367// AARCH64-DARWIN: #define __UINT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001368// AARCH64-DARWIN: #define __UINT16_MAX__ 65535
1369// AARCH64-DARWIN: #define __UINT16_TYPE__ unsigned short
1370// AARCH64-DARWIN: #define __UINT32_C_SUFFIX__ U
1371// AARCH64-DARWIN: #define __UINT32_MAX__ 4294967295U
1372// AARCH64-DARWIN: #define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001373// AARCH64-DARWIN: #define __UINT64_C_SUFFIX__ ULL
1374// AARCH64-DARWIN: #define __UINT64_MAX__ 18446744073709551615ULL
Tim Northovera6a19f12015-02-06 01:25:07 +00001375// AARCH64-DARWIN: #define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001376// AARCH64-DARWIN: #define __UINT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001377// AARCH64-DARWIN: #define __UINT8_MAX__ 255
1378// AARCH64-DARWIN: #define __UINT8_TYPE__ unsigned char
1379// AARCH64-DARWIN: #define __UINTMAX_C_SUFFIX__ UL
1380// AARCH64-DARWIN: #define __UINTMAX_MAX__ 18446744073709551615UL
1381// AARCH64-DARWIN: #define __UINTMAX_TYPE__ long unsigned int
1382// AARCH64-DARWIN: #define __UINTMAX_WIDTH__ 64
1383// AARCH64-DARWIN: #define __UINTPTR_MAX__ 18446744073709551615UL
1384// AARCH64-DARWIN: #define __UINTPTR_TYPE__ long unsigned int
1385// AARCH64-DARWIN: #define __UINTPTR_WIDTH__ 64
1386// AARCH64-DARWIN: #define __UINT_FAST16_MAX__ 65535
1387// AARCH64-DARWIN: #define __UINT_FAST16_TYPE__ unsigned short
1388// AARCH64-DARWIN: #define __UINT_FAST32_MAX__ 4294967295U
1389// AARCH64-DARWIN: #define __UINT_FAST32_TYPE__ unsigned int
1390// AARCH64-DARWIN: #define __UINT_FAST64_MAX__ 18446744073709551615UL
1391// AARCH64-DARWIN: #define __UINT_FAST64_TYPE__ long unsigned int
1392// AARCH64-DARWIN: #define __UINT_FAST8_MAX__ 255
1393// AARCH64-DARWIN: #define __UINT_FAST8_TYPE__ unsigned char
1394// AARCH64-DARWIN: #define __UINT_LEAST16_MAX__ 65535
1395// AARCH64-DARWIN: #define __UINT_LEAST16_TYPE__ unsigned short
1396// AARCH64-DARWIN: #define __UINT_LEAST32_MAX__ 4294967295U
1397// AARCH64-DARWIN: #define __UINT_LEAST32_TYPE__ unsigned int
1398// AARCH64-DARWIN: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
1399// AARCH64-DARWIN: #define __UINT_LEAST64_TYPE__ long unsigned int
1400// AARCH64-DARWIN: #define __UINT_LEAST8_MAX__ 255
1401// AARCH64-DARWIN: #define __UINT_LEAST8_TYPE__ unsigned char
1402// AARCH64-DARWIN: #define __USER_LABEL_PREFIX__ _
1403// AARCH64-DARWIN: #define __WCHAR_MAX__ 2147483647
1404// AARCH64-DARWIN: #define __WCHAR_TYPE__ int
1405// AARCH64-DARWIN-NOT: #define __WCHAR_UNSIGNED__
1406// AARCH64-DARWIN: #define __WCHAR_WIDTH__ 32
1407// AARCH64-DARWIN: #define __WINT_TYPE__ int
1408// AARCH64-DARWIN: #define __WINT_WIDTH__ 32
1409// AARCH64-DARWIN: #define __aarch64__ 1
1410
James Y Knightc97efa42016-02-11 16:51:29 +00001411// 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 +00001412// 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 +00001413//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001414// ARM-NOT:#define _LP64
Chris Lattnere963d092009-10-29 04:55:36 +00001415// ARM:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001416// ARM-NOT:#define __ARMEB__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00001417// ARM:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001418// ARM:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001419// ARM-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001420// ARM:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001421// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00001422// ARM:#define __CHAR16_TYPE__ unsigned short
1423// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00001424// ARM:#define __CHAR_BIT__ 8
1425// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1426// ARM:#define __DBL_DIG__ 15
1427// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
1428// ARM:#define __DBL_HAS_DENORM__ 1
1429// ARM:#define __DBL_HAS_INFINITY__ 1
1430// ARM:#define __DBL_HAS_QUIET_NAN__ 1
1431// ARM:#define __DBL_MANT_DIG__ 53
1432// ARM:#define __DBL_MAX_10_EXP__ 308
1433// ARM:#define __DBL_MAX_EXP__ 1024
1434// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
1435// ARM:#define __DBL_MIN_10_EXP__ (-307)
1436// ARM:#define __DBL_MIN_EXP__ (-1021)
1437// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001438// ARM:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00001439// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1440// ARM:#define __FLT_DIG__ 6
1441// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
1442// ARM:#define __FLT_EVAL_METHOD__ 0
1443// ARM:#define __FLT_HAS_DENORM__ 1
1444// ARM:#define __FLT_HAS_INFINITY__ 1
1445// ARM:#define __FLT_HAS_QUIET_NAN__ 1
1446// ARM:#define __FLT_MANT_DIG__ 24
1447// ARM:#define __FLT_MAX_10_EXP__ 38
1448// ARM:#define __FLT_MAX_EXP__ 128
1449// ARM:#define __FLT_MAX__ 3.40282347e+38F
1450// ARM:#define __FLT_MIN_10_EXP__ (-37)
1451// ARM:#define __FLT_MIN_EXP__ (-125)
1452// ARM:#define __FLT_MIN__ 1.17549435e-38F
1453// ARM:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001454// ARM:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001455// ARM:#define __INT16_FMTd__ "hd"
1456// ARM:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001457// ARM:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00001458// ARM:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001459// ARM:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001460// ARM:#define __INT32_FMTd__ "d"
1461// ARM:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001462// ARM:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00001463// ARM:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00001464// ARM:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001465// ARM:#define __INT64_FMTd__ "lld"
1466// ARM:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001467// ARM:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00001468// ARM:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001469// ARM:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001470// ARM:#define __INT8_FMTd__ "hhd"
1471// ARM:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001472// ARM:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001473// ARM:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001474// ARM:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001475// ARM:#define __INTMAX_FMTd__ "lld"
1476// ARM:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00001477// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00001478// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00001479// ARM:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001480// ARM:#define __INTPTR_FMTd__ "ld"
1481// ARM:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001482// ARM:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00001483// ARM:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00001484// ARM:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001485// ARM:#define __INT_FAST16_FMTd__ "hd"
1486// ARM:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001487// ARM:#define __INT_FAST16_MAX__ 32767
1488// ARM:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001489// ARM:#define __INT_FAST32_FMTd__ "d"
1490// ARM:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001491// ARM:#define __INT_FAST32_MAX__ 2147483647
1492// ARM:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001493// ARM:#define __INT_FAST64_FMTd__ "lld"
1494// ARM:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001495// ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
1496// ARM:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001497// ARM:#define __INT_FAST8_FMTd__ "hhd"
1498// ARM:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001499// ARM:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001500// ARM:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001501// ARM:#define __INT_LEAST16_FMTd__ "hd"
1502// ARM:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001503// ARM:#define __INT_LEAST16_MAX__ 32767
1504// ARM:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001505// ARM:#define __INT_LEAST32_FMTd__ "d"
1506// ARM:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001507// ARM:#define __INT_LEAST32_MAX__ 2147483647
1508// ARM:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001509// ARM:#define __INT_LEAST64_FMTd__ "lld"
1510// ARM:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001511// ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1512// ARM:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001513// ARM:#define __INT_LEAST8_FMTd__ "hhd"
1514// ARM:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001515// ARM:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001516// ARM:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00001517// ARM:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001518// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00001519// ARM:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001520// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00001521// ARM:#define __LDBL_HAS_DENORM__ 1
1522// ARM:#define __LDBL_HAS_INFINITY__ 1
1523// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
1524// ARM:#define __LDBL_MANT_DIG__ 53
1525// ARM:#define __LDBL_MAX_10_EXP__ 308
1526// ARM:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001527// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00001528// ARM:#define __LDBL_MIN_10_EXP__ (-307)
1529// ARM:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001530// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00001531// ARM:#define __LITTLE_ENDIAN__ 1
1532// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
1533// ARM:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001534// ARM-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00001535// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00001536// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00001537// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00001538// ARM:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00001539// ARM:#define __SCHAR_MAX__ 127
1540// ARM:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001541// ARM:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00001542// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00001543// ARM:#define __SIZEOF_DOUBLE__ 8
1544// ARM:#define __SIZEOF_FLOAT__ 4
1545// ARM:#define __SIZEOF_INT__ 4
1546// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
1547// ARM:#define __SIZEOF_LONG_LONG__ 8
1548// ARM:#define __SIZEOF_LONG__ 4
1549// ARM:#define __SIZEOF_POINTER__ 4
1550// ARM:#define __SIZEOF_PTRDIFF_T__ 4
1551// ARM:#define __SIZEOF_SHORT__ 2
1552// ARM:#define __SIZEOF_SIZE_T__ 4
1553// ARM:#define __SIZEOF_WCHAR_T__ 4
1554// ARM:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001555// ARM:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00001556// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00001557// ARM:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00001558// ARM-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00001559// ARM:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001560// ARM:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001561// ARM:#define __UINT16_TYPE__ unsigned short
1562// ARM:#define __UINT32_C_SUFFIX__ U
1563// ARM:#define __UINT32_MAX__ 4294967295U
1564// ARM:#define __UINT32_TYPE__ unsigned int
1565// ARM:#define __UINT64_C_SUFFIX__ ULL
1566// ARM:#define __UINT64_MAX__ 18446744073709551615ULL
1567// ARM:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001568// ARM:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001569// ARM:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001570// ARM:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001571// ARM:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001572// ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00001573// ARM:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001574// ARM:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001575// ARM:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001576// ARM:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001577// ARM:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001578// ARM:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001579// ARM:#define __UINT_FAST16_TYPE__ unsigned short
1580// ARM:#define __UINT_FAST32_MAX__ 4294967295U
1581// ARM:#define __UINT_FAST32_TYPE__ unsigned int
1582// ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1583// ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001584// ARM:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001585// ARM:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001586// ARM:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001587// ARM:#define __UINT_LEAST16_TYPE__ unsigned short
1588// ARM:#define __UINT_LEAST32_MAX__ 4294967295U
1589// ARM:#define __UINT_LEAST32_TYPE__ unsigned int
1590// ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1591// ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001592// ARM:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001593// ARM:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001594// ARM:#define __USER_LABEL_PREFIX__
James Molloyc445be42011-11-23 13:35:08 +00001595// ARM:#define __WCHAR_MAX__ 4294967295U
1596// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck0138b9e2009-11-19 15:47:58 +00001597// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001598// ARM:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00001599// ARM:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001600// ARM:#define __arm 1
1601// ARM:#define __arm__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001602
James Y Knightc97efa42016-02-11 16:51:29 +00001603// 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 +00001604//
1605// ARM-BE-NOT:#define _LP64
1606// ARM-BE:#define __APCS_32__ 1
1607// ARM-BE:#define __ARMEB__ 1
1608// ARM-BE-NOT:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001609// ARM-BE:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001610// ARM-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001611// ARM-BE:#define __BIGGEST_ALIGNMENT__ 8
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001612// ARM-BE:#define __BIG_ENDIAN__ 1
1613// ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1614// ARM-BE:#define __CHAR16_TYPE__ unsigned short
1615// ARM-BE:#define __CHAR32_TYPE__ unsigned int
1616// ARM-BE:#define __CHAR_BIT__ 8
1617// ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1618// ARM-BE:#define __DBL_DIG__ 15
1619// ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1620// ARM-BE:#define __DBL_HAS_DENORM__ 1
1621// ARM-BE:#define __DBL_HAS_INFINITY__ 1
1622// ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
1623// ARM-BE:#define __DBL_MANT_DIG__ 53
1624// ARM-BE:#define __DBL_MAX_10_EXP__ 308
1625// ARM-BE:#define __DBL_MAX_EXP__ 1024
1626// ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
1627// ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
1628// ARM-BE:#define __DBL_MIN_EXP__ (-1021)
1629// ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001630// ARM-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001631// ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1632// ARM-BE:#define __FLT_DIG__ 6
1633// ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
1634// ARM-BE:#define __FLT_EVAL_METHOD__ 0
1635// ARM-BE:#define __FLT_HAS_DENORM__ 1
1636// ARM-BE:#define __FLT_HAS_INFINITY__ 1
1637// ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
1638// ARM-BE:#define __FLT_MANT_DIG__ 24
1639// ARM-BE:#define __FLT_MAX_10_EXP__ 38
1640// ARM-BE:#define __FLT_MAX_EXP__ 128
1641// ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
1642// ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
1643// ARM-BE:#define __FLT_MIN_EXP__ (-125)
1644// ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
1645// ARM-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001646// ARM-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001647// ARM-BE:#define __INT16_FMTd__ "hd"
1648// ARM-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001649// ARM-BE:#define __INT16_MAX__ 32767
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001650// ARM-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001651// ARM-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001652// ARM-BE:#define __INT32_FMTd__ "d"
1653// ARM-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001654// ARM-BE:#define __INT32_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001655// ARM-BE:#define __INT32_TYPE__ int
1656// ARM-BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001657// ARM-BE:#define __INT64_FMTd__ "lld"
1658// ARM-BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001659// ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001660// ARM-BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001661// ARM-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001662// ARM-BE:#define __INT8_FMTd__ "hhd"
1663// ARM-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001664// ARM-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001665// ARM-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001666// ARM-BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001667// ARM-BE:#define __INTMAX_FMTd__ "lld"
1668// ARM-BE:#define __INTMAX_FMTi__ "lli"
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001669// ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
1670// ARM-BE:#define __INTMAX_TYPE__ long long int
1671// ARM-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001672// ARM-BE:#define __INTPTR_FMTd__ "ld"
1673// ARM-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001674// ARM-BE:#define __INTPTR_MAX__ 2147483647L
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001675// ARM-BE:#define __INTPTR_TYPE__ long int
1676// ARM-BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001677// ARM-BE:#define __INT_FAST16_FMTd__ "hd"
1678// ARM-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001679// ARM-BE:#define __INT_FAST16_MAX__ 32767
1680// ARM-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001681// ARM-BE:#define __INT_FAST32_FMTd__ "d"
1682// ARM-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001683// ARM-BE:#define __INT_FAST32_MAX__ 2147483647
1684// ARM-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001685// ARM-BE:#define __INT_FAST64_FMTd__ "lld"
1686// ARM-BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001687// ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
1688// ARM-BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001689// ARM-BE:#define __INT_FAST8_FMTd__ "hhd"
1690// ARM-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001691// ARM-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001692// ARM-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001693// ARM-BE:#define __INT_LEAST16_FMTd__ "hd"
1694// ARM-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001695// ARM-BE:#define __INT_LEAST16_MAX__ 32767
1696// ARM-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001697// ARM-BE:#define __INT_LEAST32_FMTd__ "d"
1698// ARM-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001699// ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
1700// ARM-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001701// ARM-BE:#define __INT_LEAST64_FMTd__ "lld"
1702// ARM-BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001703// ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1704// ARM-BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001705// ARM-BE:#define __INT_LEAST8_FMTd__ "hhd"
1706// ARM-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001707// ARM-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001708// ARM-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001709// ARM-BE:#define __INT_MAX__ 2147483647
1710// ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1711// ARM-BE:#define __LDBL_DIG__ 15
1712// ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
1713// ARM-BE:#define __LDBL_HAS_DENORM__ 1
1714// ARM-BE:#define __LDBL_HAS_INFINITY__ 1
1715// ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
1716// ARM-BE:#define __LDBL_MANT_DIG__ 53
1717// ARM-BE:#define __LDBL_MAX_10_EXP__ 308
1718// ARM-BE:#define __LDBL_MAX_EXP__ 1024
1719// ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
1720// ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
1721// ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
1722// ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
1723// ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1724// ARM-BE:#define __LONG_MAX__ 2147483647L
1725// ARM-BE-NOT:#define __LP64__
1726// ARM-BE:#define __POINTER_WIDTH__ 32
1727// ARM-BE:#define __PTRDIFF_TYPE__ int
1728// ARM-BE:#define __PTRDIFF_WIDTH__ 32
1729// ARM-BE:#define __REGISTER_PREFIX__
1730// ARM-BE:#define __SCHAR_MAX__ 127
1731// ARM-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001732// ARM-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001733// ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
1734// ARM-BE:#define __SIZEOF_DOUBLE__ 8
1735// ARM-BE:#define __SIZEOF_FLOAT__ 4
1736// ARM-BE:#define __SIZEOF_INT__ 4
1737// ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
1738// ARM-BE:#define __SIZEOF_LONG_LONG__ 8
1739// ARM-BE:#define __SIZEOF_LONG__ 4
1740// ARM-BE:#define __SIZEOF_POINTER__ 4
1741// ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
1742// ARM-BE:#define __SIZEOF_SHORT__ 2
1743// ARM-BE:#define __SIZEOF_SIZE_T__ 4
1744// ARM-BE:#define __SIZEOF_WCHAR_T__ 4
1745// ARM-BE:#define __SIZEOF_WINT_T__ 4
1746// ARM-BE:#define __SIZE_MAX__ 4294967295U
1747// ARM-BE:#define __SIZE_TYPE__ unsigned int
1748// ARM-BE:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00001749// ARM-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001750// ARM-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001751// ARM-BE:#define __UINT16_TYPE__ unsigned short
1752// ARM-BE:#define __UINT32_C_SUFFIX__ U
1753// ARM-BE:#define __UINT32_MAX__ 4294967295U
1754// ARM-BE:#define __UINT32_TYPE__ unsigned int
1755// ARM-BE:#define __UINT64_C_SUFFIX__ ULL
1756// ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
1757// ARM-BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001758// ARM-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001759// ARM-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001760// ARM-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001761// ARM-BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001762// ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001763// ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001764// ARM-BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001765// ARM-BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001766// ARM-BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001767// ARM-BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001768// ARM-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001769// ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
1770// ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
1771// ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
1772// ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1773// ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001774// ARM-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001775// ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001776// ARM-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001777// ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
1778// ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
1779// ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
1780// ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1781// ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001782// ARM-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001783// ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001784// ARM-BE:#define __USER_LABEL_PREFIX__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001785// ARM-BE:#define __WCHAR_MAX__ 4294967295U
1786// ARM-BE:#define __WCHAR_TYPE__ unsigned int
1787// ARM-BE:#define __WCHAR_WIDTH__ 32
1788// ARM-BE:#define __WINT_TYPE__ int
1789// ARM-BE:#define __WINT_WIDTH__ 32
1790// ARM-BE:#define __arm 1
1791// ARM-BE:#define __arm__ 1
1792
James Y Knightc97efa42016-02-11 16:51:29 +00001793// 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 +00001794//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001795// ARMEABISOFTFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001796// ARMEABISOFTFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001797// ARMEABISOFTFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001798// ARMEABISOFTFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001799// ARMEABISOFTFP:#define __ARM_ARCH 4
1800// ARMEABISOFTFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001801// ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001802// ARMEABISOFTFP:#define __ARM_EABI__ 1
1803// ARMEABISOFTFP:#define __ARM_PCS 1
1804// ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001805// ARMEABISOFTFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001806// ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1807// ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
1808// ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
1809// ARMEABISOFTFP:#define __CHAR_BIT__ 8
1810// ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1811// ARMEABISOFTFP:#define __DBL_DIG__ 15
1812// ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
1813// ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
1814// ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
1815// ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
1816// ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
1817// ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
1818// ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
1819// ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
1820// ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
1821// ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
1822// ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001823// ARMEABISOFTFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001824// ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1825// ARMEABISOFTFP:#define __FLT_DIG__ 6
1826// ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
1827// ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
1828// ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
1829// ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
1830// ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
1831// ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
1832// ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
1833// ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
1834// ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
1835// ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
1836// ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
1837// ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
1838// ARMEABISOFTFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001839// ARMEABISOFTFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001840// ARMEABISOFTFP:#define __INT16_FMTd__ "hd"
1841// ARMEABISOFTFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001842// ARMEABISOFTFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001843// ARMEABISOFTFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001844// ARMEABISOFTFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001845// ARMEABISOFTFP:#define __INT32_FMTd__ "d"
1846// ARMEABISOFTFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001847// ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001848// ARMEABISOFTFP:#define __INT32_TYPE__ int
1849// ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001850// ARMEABISOFTFP:#define __INT64_FMTd__ "lld"
1851// ARMEABISOFTFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001852// ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001853// ARMEABISOFTFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001854// ARMEABISOFTFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001855// ARMEABISOFTFP:#define __INT8_FMTd__ "hhd"
1856// ARMEABISOFTFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001857// ARMEABISOFTFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001858// ARMEABISOFTFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001859// ARMEABISOFTFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001860// ARMEABISOFTFP:#define __INTMAX_FMTd__ "lld"
1861// ARMEABISOFTFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001862// ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
1863// ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
1864// ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001865// ARMEABISOFTFP:#define __INTPTR_FMTd__ "ld"
1866// ARMEABISOFTFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001867// ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001868// ARMEABISOFTFP:#define __INTPTR_TYPE__ long int
1869// ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001870// ARMEABISOFTFP:#define __INT_FAST16_FMTd__ "hd"
1871// ARMEABISOFTFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001872// ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
1873// ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001874// ARMEABISOFTFP:#define __INT_FAST32_FMTd__ "d"
1875// ARMEABISOFTFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001876// ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
1877// ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001878// ARMEABISOFTFP:#define __INT_FAST64_FMTd__ "lld"
1879// ARMEABISOFTFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001880// ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
1881// ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001882// ARMEABISOFTFP:#define __INT_FAST8_FMTd__ "hhd"
1883// ARMEABISOFTFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001884// ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001885// ARMEABISOFTFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001886// ARMEABISOFTFP:#define __INT_LEAST16_FMTd__ "hd"
1887// ARMEABISOFTFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001888// ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
1889// ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001890// ARMEABISOFTFP:#define __INT_LEAST32_FMTd__ "d"
1891// ARMEABISOFTFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001892// ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
1893// ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001894// ARMEABISOFTFP:#define __INT_LEAST64_FMTd__ "lld"
1895// ARMEABISOFTFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001896// ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1897// ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001898// ARMEABISOFTFP:#define __INT_LEAST8_FMTd__ "hhd"
1899// ARMEABISOFTFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001900// ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001901// ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001902// ARMEABISOFTFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001903// ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001904// ARMEABISOFTFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001905// ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001906// ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
1907// ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
1908// ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
1909// ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
1910// ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
1911// ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001912// ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001913// ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
1914// ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001915// ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001916// ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
1917// ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
1918// ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
1919// ARMEABISOFTFP-NOT:#define __LP64__
1920// ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
1921// ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
1922// ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
1923// ARMEABISOFTFP:#define __REGISTER_PREFIX__
1924// ARMEABISOFTFP:#define __SCHAR_MAX__ 127
1925// ARMEABISOFTFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001926// ARMEABISOFTFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001927// ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
1928// ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
1929// ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
1930// ARMEABISOFTFP:#define __SIZEOF_INT__ 4
1931// ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
1932// ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
1933// ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
1934// ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
1935// ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
1936// ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
1937// ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
1938// ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
1939// ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001940// ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001941// ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
1942// ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
1943// ARMEABISOFTFP:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00001944// ARMEABISOFTFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001945// ARMEABISOFTFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001946// ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
1947// ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
1948// ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
1949// ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
1950// ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
1951// ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
1952// ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001953// ARMEABISOFTFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001954// ARMEABISOFTFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001955// ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001956// ARMEABISOFTFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001957// ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001958// ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001959// ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001960// ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001961// ARMEABISOFTFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001962// ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001963// ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001964// ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
1965// ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
1966// ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
1967// ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1968// ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001969// ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001970// ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001971// ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001972// ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
1973// ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
1974// ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
1975// ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1976// ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001977// ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001978// ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001979// ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
1980// ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
1981// ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
1982// ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
1983// ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
1984// ARMEABISOFTFP:#define __WINT_WIDTH__ 32
1985// ARMEABISOFTFP:#define __arm 1
1986// ARMEABISOFTFP:#define __arm__ 1
1987
James Y Knightc97efa42016-02-11 16:51:29 +00001988// 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 +00001989//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001990// ARMEABIHARDFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001991// ARMEABIHARDFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001992// ARMEABIHARDFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001993// ARMEABIHARDFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001994// ARMEABIHARDFP:#define __ARM_ARCH 4
1995// ARMEABIHARDFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001996// ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001997// ARMEABIHARDFP:#define __ARM_EABI__ 1
1998// ARMEABIHARDFP:#define __ARM_PCS 1
1999// ARMEABIHARDFP:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00002000// ARMEABIHARDFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002001// ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2002// ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
2003// ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
2004// ARMEABIHARDFP:#define __CHAR_BIT__ 8
2005// ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2006// ARMEABIHARDFP:#define __DBL_DIG__ 15
2007// ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
2008// ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
2009// ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
2010// ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
2011// ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
2012// ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
2013// ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
2014// ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
2015// ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
2016// ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
2017// ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002018// ARMEABIHARDFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002019// ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2020// ARMEABIHARDFP:#define __FLT_DIG__ 6
2021// ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
2022// ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
2023// ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
2024// ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
2025// ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
2026// ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
2027// ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
2028// ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
2029// ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
2030// ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
2031// ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
2032// ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
2033// ARMEABIHARDFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002034// ARMEABIHARDFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002035// ARMEABIHARDFP:#define __INT16_FMTd__ "hd"
2036// ARMEABIHARDFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002037// ARMEABIHARDFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002038// ARMEABIHARDFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002039// ARMEABIHARDFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002040// ARMEABIHARDFP:#define __INT32_FMTd__ "d"
2041// ARMEABIHARDFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002042// ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002043// ARMEABIHARDFP:#define __INT32_TYPE__ int
2044// ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002045// ARMEABIHARDFP:#define __INT64_FMTd__ "lld"
2046// ARMEABIHARDFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002047// ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002048// ARMEABIHARDFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002049// ARMEABIHARDFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002050// ARMEABIHARDFP:#define __INT8_FMTd__ "hhd"
2051// ARMEABIHARDFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002052// ARMEABIHARDFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002053// ARMEABIHARDFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002054// ARMEABIHARDFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002055// ARMEABIHARDFP:#define __INTMAX_FMTd__ "lld"
2056// ARMEABIHARDFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002057// ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
2058// ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
2059// ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002060// ARMEABIHARDFP:#define __INTPTR_FMTd__ "ld"
2061// ARMEABIHARDFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002062// ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002063// ARMEABIHARDFP:#define __INTPTR_TYPE__ long int
2064// ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002065// ARMEABIHARDFP:#define __INT_FAST16_FMTd__ "hd"
2066// ARMEABIHARDFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002067// ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
2068// ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002069// ARMEABIHARDFP:#define __INT_FAST32_FMTd__ "d"
2070// ARMEABIHARDFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002071// ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
2072// ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002073// ARMEABIHARDFP:#define __INT_FAST64_FMTd__ "lld"
2074// ARMEABIHARDFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002075// ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
2076// ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002077// ARMEABIHARDFP:#define __INT_FAST8_FMTd__ "hhd"
2078// ARMEABIHARDFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002079// ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002080// ARMEABIHARDFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002081// ARMEABIHARDFP:#define __INT_LEAST16_FMTd__ "hd"
2082// ARMEABIHARDFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002083// ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
2084// ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002085// ARMEABIHARDFP:#define __INT_LEAST32_FMTd__ "d"
2086// ARMEABIHARDFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002087// ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
2088// ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002089// ARMEABIHARDFP:#define __INT_LEAST64_FMTd__ "lld"
2090// ARMEABIHARDFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002091// ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2092// ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002093// ARMEABIHARDFP:#define __INT_LEAST8_FMTd__ "hhd"
2094// ARMEABIHARDFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002095// ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002096// ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002097// ARMEABIHARDFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002098// ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002099// ARMEABIHARDFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002100// ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002101// ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
2102// ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
2103// ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
2104// ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
2105// ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
2106// ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002107// ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002108// ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
2109// ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002110// ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002111// ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
2112// ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
2113// ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
2114// ARMEABIHARDFP-NOT:#define __LP64__
2115// ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
2116// ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
2117// ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
2118// ARMEABIHARDFP:#define __REGISTER_PREFIX__
2119// ARMEABIHARDFP:#define __SCHAR_MAX__ 127
2120// ARMEABIHARDFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002121// ARMEABIHARDFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002122// ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
2123// ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
2124// ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
2125// ARMEABIHARDFP:#define __SIZEOF_INT__ 4
2126// ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
2127// ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
2128// ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
2129// ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
2130// ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
2131// ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
2132// ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
2133// ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
2134// ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002135// ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002136// ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
2137// ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
2138// ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002139// ARMEABIHARDFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002140// ARMEABIHARDFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002141// ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
2142// ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
2143// ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
2144// ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
2145// ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
2146// ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
2147// ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002148// ARMEABIHARDFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002149// ARMEABIHARDFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002150// ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002151// ARMEABIHARDFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002152// ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002153// ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002154// ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002155// ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002156// ARMEABIHARDFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002157// ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002158// ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002159// ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
2160// ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
2161// ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
2162// ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2163// ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002164// ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002165// ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002166// ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002167// ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
2168// ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
2169// ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
2170// ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2171// ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002172// ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002173// ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002174// ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
2175// ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
2176// ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
2177// ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
2178// ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
2179// ARMEABIHARDFP:#define __WINT_WIDTH__ 32
2180// ARMEABIHARDFP:#define __arm 1
2181// ARMEABIHARDFP:#define __arm__ 1
2182
Ed Schoutenc6d1a732016-09-05 18:38:34 +00002183// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv6-unknown-cloudabi-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARMV6-CLOUDABI %s
2184//
2185// ARMV6-CLOUDABI:#define __CloudABI__ 1
2186// ARMV6-CLOUDABI:#define __arm__ 1
2187
James Y Knightc97efa42016-02-11 16:51:29 +00002188// 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 +00002189//
2190// ARM-NETBSD-NOT:#define _LP64
2191// ARM-NETBSD:#define __APCS_32__ 1
2192// ARM-NETBSD-NOT:#define __ARMEB__ 1
2193// ARM-NETBSD:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00002194// ARM-NETBSD:#define __ARM_ARCH_4T__ 1
Joerg Sonnenbergercc1edb52014-05-13 18:58:36 +00002195// ARM-NETBSD:#define __ARM_DWARF_EH__ 1
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002196// ARM-NETBSD:#define __ARM_EABI__ 1
2197// ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00002198// ARM-NETBSD:#define __BIGGEST_ALIGNMENT__ 8
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002199// ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2200// ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
2201// ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
2202// ARM-NETBSD:#define __CHAR_BIT__ 8
2203// ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2204// ARM-NETBSD:#define __DBL_DIG__ 15
2205// ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2206// ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
2207// ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
2208// ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2209// ARM-NETBSD:#define __DBL_MANT_DIG__ 53
2210// ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
2211// ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
2212// ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2213// ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2214// ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2215// ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002216// ARM-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002217// ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2218// ARM-NETBSD:#define __FLT_DIG__ 6
2219// ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2220// ARM-NETBSD:#define __FLT_EVAL_METHOD__ 0
2221// ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
2222// ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
2223// ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2224// ARM-NETBSD:#define __FLT_MANT_DIG__ 24
2225// ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
2226// ARM-NETBSD:#define __FLT_MAX_EXP__ 128
2227// ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2228// ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2229// ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
2230// ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2231// ARM-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002232// ARM-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002233// ARM-NETBSD:#define __INT16_FMTd__ "hd"
2234// ARM-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002235// ARM-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002236// ARM-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002237// ARM-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002238// ARM-NETBSD:#define __INT32_FMTd__ "d"
2239// ARM-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002240// ARM-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002241// ARM-NETBSD:#define __INT32_TYPE__ int
2242// ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002243// ARM-NETBSD:#define __INT64_FMTd__ "lld"
2244// ARM-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002245// ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002246// ARM-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002247// ARM-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002248// ARM-NETBSD:#define __INT8_FMTd__ "hhd"
2249// ARM-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002250// ARM-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002251// ARM-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002252// ARM-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002253// ARM-NETBSD:#define __INTMAX_FMTd__ "lld"
2254// ARM-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002255// ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2256// ARM-NETBSD:#define __INTMAX_TYPE__ long long int
2257// ARM-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002258// ARM-NETBSD:#define __INTPTR_FMTd__ "ld"
2259// ARM-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002260// ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002261// ARM-NETBSD:#define __INTPTR_TYPE__ long int
2262// ARM-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002263// ARM-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2264// ARM-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002265// ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
2266// ARM-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002267// ARM-NETBSD:#define __INT_FAST32_FMTd__ "d"
2268// ARM-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002269// ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2270// ARM-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002271// ARM-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2272// ARM-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002273// ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2274// ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002275// ARM-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2276// ARM-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002277// ARM-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002278// ARM-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002279// ARM-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2280// ARM-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002281// ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
2282// ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002283// ARM-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2284// ARM-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002285// ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2286// ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002287// ARM-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2288// ARM-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002289// ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2290// ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002291// ARM-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2292// ARM-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002293// ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002294// ARM-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002295// ARM-NETBSD:#define __INT_MAX__ 2147483647
2296// ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2297// ARM-NETBSD:#define __LDBL_DIG__ 15
2298// ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2299// ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
2300// ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2301// ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2302// ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
2303// ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
2304// ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
2305// ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
2306// ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
2307// ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
2308// ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
2309// ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
2310// ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2311// ARM-NETBSD:#define __LONG_MAX__ 2147483647L
2312// ARM-NETBSD-NOT:#define __LP64__
2313// ARM-NETBSD:#define __POINTER_WIDTH__ 32
2314// ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
2315// ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
2316// ARM-NETBSD:#define __REGISTER_PREFIX__
2317// ARM-NETBSD:#define __SCHAR_MAX__ 127
2318// ARM-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002319// ARM-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002320// ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2321// ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
2322// ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
2323// ARM-NETBSD:#define __SIZEOF_INT__ 4
2324// ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
2325// ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2326// ARM-NETBSD:#define __SIZEOF_LONG__ 4
2327// ARM-NETBSD:#define __SIZEOF_POINTER__ 4
2328// ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2329// ARM-NETBSD:#define __SIZEOF_SHORT__ 2
2330// ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
2331// ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2332// ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002333// ARM-NETBSD:#define __SIZE_MAX__ 4294967295UL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002334// ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
2335// ARM-NETBSD:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002336// ARM-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002337// ARM-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002338// ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
2339// ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
2340// ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
2341// ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
2342// ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2343// ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2344// ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002345// ARM-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002346// ARM-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002347// ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00002348// ARM-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002349// ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002350// ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002351// ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002352// ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002353// ARM-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002354// ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002355// ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002356// ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2357// ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2358// ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2359// ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2360// ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002361// ARM-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002362// ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002363// ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002364// ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2365// ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2366// ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2367// ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2368// ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002369// ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002370// ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002371// ARM-NETBSD:#define __USER_LABEL_PREFIX__
2372// ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
2373// ARM-NETBSD:#define __WCHAR_TYPE__ int
2374// ARM-NETBSD:#define __WCHAR_WIDTH__ 32
2375// ARM-NETBSD:#define __WINT_TYPE__ int
2376// ARM-NETBSD:#define __WINT_WIDTH__ 32
2377// ARM-NETBSD:#define __arm 1
2378// ARM-NETBSD:#define __arm__ 1
2379
Weiming Zhaob0613132016-04-18 16:25:46 +00002380// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2381// ARM-NONE-EABI: #define __ELF__ 1
2382
Tim Northover862eaf82016-05-13 21:26:45 +00002383// No MachO targets use the full EABI, even if AAPCS is used.
2384// 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
2385// 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
2386// 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
2387// 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
2388// 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
2389// ARM-MACHO-NO-EABI-NOT: #define __ARM_EABI__ 1
Tim Northovere77f78c2013-11-11 19:11:22 +00002390
James Y Knightc97efa42016-02-11 16:51:29 +00002391// 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 +00002392// ARM-BITRIG:#define __ARM_DWARF_EH__ 1
2393// ARM-BITRIG:#define __SIZEOF_SIZE_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002394// ARM-BITRIG:#define __SIZE_MAX__ 4294967295UL
Renato Golin9ba39232015-02-27 16:35:48 +00002395// ARM-BITRIG:#define __SIZE_TYPE__ long unsigned int
2396// ARM-BITRIG:#define __SIZE_WIDTH__ 32
2397
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002398// Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
2399
James Y Knightc97efa42016-02-11 16:51:29 +00002400// 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 +00002401// ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
2402
James Y Knightc97efa42016-02-11 16:51:29 +00002403// 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 +00002404// THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
2405
James Y Knightc97efa42016-02-11 16:51:29 +00002406// 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 +00002407// ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2408
James Y Knightc97efa42016-02-11 16:51:29 +00002409// 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 +00002410// THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2411
James Y Knightc97efa42016-02-11 16:51:29 +00002412// 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 +00002413// THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2414
James Y Knightc97efa42016-02-11 16:51:29 +00002415// 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 +00002416// ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2417
James Y Knightc97efa42016-02-11 16:51:29 +00002418// 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 +00002419// ARMv8: #define __THUMB_INTERWORK__ 1
2420// ARMv8-NOT: #define __thumb2__
2421
James Y Knightc97efa42016-02-11 16:51:29 +00002422// 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 +00002423// ARMebv8: #define __THUMB_INTERWORK__ 1
2424// ARMebv8-NOT: #define __thumb2__
2425
James Y Knightc97efa42016-02-11 16:51:29 +00002426// 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 +00002427// Thumbv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002428// Thumbv8: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002429
James Y Knightc97efa42016-02-11 16:51:29 +00002430// 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 +00002431// Thumbebv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002432// Thumbebv8: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002433
James Y Knightc97efa42016-02-11 16:51:29 +00002434// 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 +00002435// Thumbv5: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002436// Thumbv5-NOT: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002437
James Y Knightc97efa42016-02-11 16:51:29 +00002438// 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 +00002439// Thumbv6t2: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002440// Thumbv6t2: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002441
James Y Knightc97efa42016-02-11 16:51:29 +00002442// 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 +00002443// Thumbv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002444// Thumbv7: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002445
James Y Knightc97efa42016-02-11 16:51:29 +00002446// 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 +00002447// Thumbebv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002448// Thumbebv7: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002449
Chris Lattnere963d092009-10-29 04:55:36 +00002450//
James Y Knightc97efa42016-02-11 16:51:29 +00002451// 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 +00002452//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002453// I386-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002454// I386:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002455// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002456// I386:#define __CHAR16_TYPE__ unsigned short
2457// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002458// I386:#define __CHAR_BIT__ 8
2459// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2460// I386:#define __DBL_DIG__ 15
2461// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
2462// I386:#define __DBL_HAS_DENORM__ 1
2463// I386:#define __DBL_HAS_INFINITY__ 1
2464// I386:#define __DBL_HAS_QUIET_NAN__ 1
2465// I386:#define __DBL_MANT_DIG__ 53
2466// I386:#define __DBL_MAX_10_EXP__ 308
2467// I386:#define __DBL_MAX_EXP__ 1024
2468// I386:#define __DBL_MAX__ 1.7976931348623157e+308
2469// I386:#define __DBL_MIN_10_EXP__ (-307)
2470// I386:#define __DBL_MIN_EXP__ (-1021)
2471// I386:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002472// I386:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00002473// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2474// I386:#define __FLT_DIG__ 6
2475// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramercf501472011-12-28 15:47:06 +00002476// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnere963d092009-10-29 04:55:36 +00002477// I386:#define __FLT_HAS_DENORM__ 1
2478// I386:#define __FLT_HAS_INFINITY__ 1
2479// I386:#define __FLT_HAS_QUIET_NAN__ 1
2480// I386:#define __FLT_MANT_DIG__ 24
2481// I386:#define __FLT_MAX_10_EXP__ 38
2482// I386:#define __FLT_MAX_EXP__ 128
2483// I386:#define __FLT_MAX__ 3.40282347e+38F
2484// I386:#define __FLT_MIN_10_EXP__ (-37)
2485// I386:#define __FLT_MIN_EXP__ (-125)
2486// I386:#define __FLT_MIN__ 1.17549435e-38F
2487// I386:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002488// I386:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002489// I386:#define __INT16_FMTd__ "hd"
2490// I386:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002491// I386:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00002492// I386:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002493// I386:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002494// I386:#define __INT32_FMTd__ "d"
2495// I386:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002496// I386:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00002497// I386:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002498// I386:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002499// I386:#define __INT64_FMTd__ "lld"
2500// I386:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002501// I386:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00002502// I386:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002503// I386:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002504// I386:#define __INT8_FMTd__ "hhd"
2505// I386:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002506// I386:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002507// I386:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002508// I386:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002509// I386:#define __INTMAX_FMTd__ "lld"
2510// I386:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00002511// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00002512// I386:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002513// I386:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002514// I386:#define __INTPTR_FMTd__ "d"
2515// I386:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002516// I386:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00002517// I386:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002518// I386:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002519// I386:#define __INT_FAST16_FMTd__ "hd"
2520// I386:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002521// I386:#define __INT_FAST16_MAX__ 32767
2522// I386:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002523// I386:#define __INT_FAST32_FMTd__ "d"
2524// I386:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002525// I386:#define __INT_FAST32_MAX__ 2147483647
2526// I386:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002527// I386:#define __INT_FAST64_FMTd__ "lld"
2528// I386:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002529// I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
2530// I386:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002531// I386:#define __INT_FAST8_FMTd__ "hhd"
2532// I386:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002533// I386:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002534// I386:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002535// I386:#define __INT_LEAST16_FMTd__ "hd"
2536// I386:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002537// I386:#define __INT_LEAST16_MAX__ 32767
2538// I386:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002539// I386:#define __INT_LEAST32_FMTd__ "d"
2540// I386:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002541// I386:#define __INT_LEAST32_MAX__ 2147483647
2542// I386:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002543// I386:#define __INT_LEAST64_FMTd__ "lld"
2544// I386:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002545// I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2546// I386:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002547// I386:#define __INT_LEAST8_FMTd__ "hhd"
2548// I386:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002549// I386:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002550// I386:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00002551// I386:#define __INT_MAX__ 2147483647
2552// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2553// I386:#define __LDBL_DIG__ 18
2554// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2555// I386:#define __LDBL_HAS_DENORM__ 1
2556// I386:#define __LDBL_HAS_INFINITY__ 1
2557// I386:#define __LDBL_HAS_QUIET_NAN__ 1
2558// I386:#define __LDBL_MANT_DIG__ 64
2559// I386:#define __LDBL_MAX_10_EXP__ 4932
2560// I386:#define __LDBL_MAX_EXP__ 16384
2561// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2562// I386:#define __LDBL_MIN_10_EXP__ (-4931)
2563// I386:#define __LDBL_MIN_EXP__ (-16381)
2564// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2565// I386:#define __LITTLE_ENDIAN__ 1
2566// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
2567// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002568// I386-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00002569// I386:#define __NO_MATH_INLINES 1
2570// I386:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00002571// I386:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00002572// I386:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002573// I386:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002574// I386:#define __SCHAR_MAX__ 127
2575// I386:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002576// I386:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00002577// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002578// I386:#define __SIZEOF_DOUBLE__ 8
2579// I386:#define __SIZEOF_FLOAT__ 4
2580// I386:#define __SIZEOF_INT__ 4
2581// I386:#define __SIZEOF_LONG_DOUBLE__ 12
2582// I386:#define __SIZEOF_LONG_LONG__ 8
2583// I386:#define __SIZEOF_LONG__ 4
2584// I386:#define __SIZEOF_POINTER__ 4
2585// I386:#define __SIZEOF_PTRDIFF_T__ 4
2586// I386:#define __SIZEOF_SHORT__ 2
2587// I386:#define __SIZEOF_SIZE_T__ 4
2588// I386:#define __SIZEOF_WCHAR_T__ 4
2589// I386:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002590// I386:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00002591// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002592// I386:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002593// I386:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002594// I386:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002595// I386:#define __UINT16_TYPE__ unsigned short
2596// I386:#define __UINT32_C_SUFFIX__ U
2597// I386:#define __UINT32_MAX__ 4294967295U
2598// I386:#define __UINT32_TYPE__ unsigned int
2599// I386:#define __UINT64_C_SUFFIX__ ULL
2600// I386:#define __UINT64_MAX__ 18446744073709551615ULL
2601// I386:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002602// I386:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002603// I386:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002604// I386:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002605// I386:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002606// I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00002607// I386:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002608// I386:#define __UINTMAX_WIDTH__ 64
2609// I386:#define __UINTPTR_MAX__ 4294967295U
2610// I386:#define __UINTPTR_TYPE__ unsigned int
2611// I386:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002612// I386:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002613// I386:#define __UINT_FAST16_TYPE__ unsigned short
2614// I386:#define __UINT_FAST32_MAX__ 4294967295U
2615// I386:#define __UINT_FAST32_TYPE__ unsigned int
2616// I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2617// I386:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002618// I386:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002619// I386:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002620// I386:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002621// I386:#define __UINT_LEAST16_TYPE__ unsigned short
2622// I386:#define __UINT_LEAST32_MAX__ 4294967295U
2623// I386:#define __UINT_LEAST32_TYPE__ unsigned int
2624// I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2625// I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002626// I386:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002627// I386:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00002628// I386:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002629// I386:#define __WCHAR_MAX__ 2147483647
2630// I386:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002631// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002632// I386:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002633// I386:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002634// I386:#define __i386 1
2635// I386:#define __i386__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002636// I386:#define i386 1
2637//
James Y Knightc97efa42016-02-11 16:51:29 +00002638// 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 +00002639// 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 +00002640//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002641// I386-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002642// I386-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002643// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002644// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
2645// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
2646// I386-LINUX:#define __CHAR_BIT__ 8
2647// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2648// I386-LINUX:#define __DBL_DIG__ 15
2649// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2650// I386-LINUX:#define __DBL_HAS_DENORM__ 1
2651// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
2652// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2653// I386-LINUX:#define __DBL_MANT_DIG__ 53
2654// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
2655// I386-LINUX:#define __DBL_MAX_EXP__ 1024
2656// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2657// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2658// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
2659// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002660// I386-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002661// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2662// I386-LINUX:#define __FLT_DIG__ 6
2663// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2664// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
2665// I386-LINUX:#define __FLT_HAS_DENORM__ 1
2666// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
2667// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2668// I386-LINUX:#define __FLT_MANT_DIG__ 24
2669// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
2670// I386-LINUX:#define __FLT_MAX_EXP__ 128
2671// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2672// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2673// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
2674// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2675// I386-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002676// I386-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002677// I386-LINUX:#define __INT16_FMTd__ "hd"
2678// I386-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002679// I386-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00002680// I386-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002681// I386-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002682// I386-LINUX:#define __INT32_FMTd__ "d"
2683// I386-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002684// I386-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002685// I386-LINUX:#define __INT32_TYPE__ int
2686// I386-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002687// I386-LINUX:#define __INT64_FMTd__ "lld"
2688// I386-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002689// I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002690// I386-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002691// I386-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002692// I386-LINUX:#define __INT8_FMTd__ "hhd"
2693// I386-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002694// I386-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002695// I386-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002696// I386-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002697// I386-LINUX:#define __INTMAX_FMTd__ "lld"
2698// I386-LINUX:#define __INTMAX_FMTi__ "lli"
Douglas Gregore6d6e512011-01-12 21:19:25 +00002699// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2700// I386-LINUX:#define __INTMAX_TYPE__ long long int
2701// I386-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002702// I386-LINUX:#define __INTPTR_FMTd__ "d"
2703// I386-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002704// I386-LINUX:#define __INTPTR_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002705// I386-LINUX:#define __INTPTR_TYPE__ int
2706// I386-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002707// I386-LINUX:#define __INT_FAST16_FMTd__ "hd"
2708// I386-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002709// I386-LINUX:#define __INT_FAST16_MAX__ 32767
2710// I386-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002711// I386-LINUX:#define __INT_FAST32_FMTd__ "d"
2712// I386-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002713// I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
2714// I386-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002715// I386-LINUX:#define __INT_FAST64_FMTd__ "lld"
2716// I386-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002717// I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
2718// I386-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002719// I386-LINUX:#define __INT_FAST8_FMTd__ "hhd"
2720// I386-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002721// I386-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002722// I386-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002723// I386-LINUX:#define __INT_LEAST16_FMTd__ "hd"
2724// I386-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002725// I386-LINUX:#define __INT_LEAST16_MAX__ 32767
2726// I386-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002727// I386-LINUX:#define __INT_LEAST32_FMTd__ "d"
2728// I386-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002729// I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
2730// I386-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002731// I386-LINUX:#define __INT_LEAST64_FMTd__ "lld"
2732// I386-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002733// I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2734// I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002735// I386-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
2736// I386-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002737// I386-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002738// I386-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002739// I386-LINUX:#define __INT_MAX__ 2147483647
2740// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2741// I386-LINUX:#define __LDBL_DIG__ 18
2742// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2743// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
2744// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
2745// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2746// I386-LINUX:#define __LDBL_MANT_DIG__ 64
2747// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2748// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
2749// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2750// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2751// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2752// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2753// I386-LINUX:#define __LITTLE_ENDIAN__ 1
2754// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2755// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002756// I386-LINUX-NOT:#define __LP64__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002757// I386-LINUX:#define __NO_MATH_INLINES 1
2758// I386-LINUX:#define __POINTER_WIDTH__ 32
2759// I386-LINUX:#define __PTRDIFF_TYPE__ int
2760// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002761// I386-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002762// I386-LINUX:#define __SCHAR_MAX__ 127
2763// I386-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002764// I386-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002765// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2766// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
2767// I386-LINUX:#define __SIZEOF_FLOAT__ 4
2768// I386-LINUX:#define __SIZEOF_INT__ 4
2769// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
2770// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
2771// I386-LINUX:#define __SIZEOF_LONG__ 4
2772// I386-LINUX:#define __SIZEOF_POINTER__ 4
2773// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2774// I386-LINUX:#define __SIZEOF_SHORT__ 2
2775// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
2776// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
2777// I386-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002778// I386-LINUX:#define __SIZE_MAX__ 4294967295U
Douglas Gregore6d6e512011-01-12 21:19:25 +00002779// I386-LINUX:#define __SIZE_TYPE__ unsigned int
2780// I386-LINUX:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002781// I386-LINUX-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00002782// I386-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002783// I386-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002784// I386-LINUX:#define __UINT16_TYPE__ unsigned short
2785// I386-LINUX:#define __UINT32_C_SUFFIX__ U
2786// I386-LINUX:#define __UINT32_MAX__ 4294967295U
2787// I386-LINUX:#define __UINT32_TYPE__ unsigned int
2788// I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
2789// I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
2790// I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002791// I386-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002792// I386-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002793// I386-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002794// I386-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002795// I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002796// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002797// I386-LINUX:#define __UINTMAX_WIDTH__ 64
2798// I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
2799// I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
2800// I386-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002801// I386-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002802// I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
2803// I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
2804// I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
2805// I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2806// I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002807// I386-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002808// I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002809// I386-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002810// I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
2811// I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
2812// I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
2813// I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2814// I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002815// I386-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002816// I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002817// I386-LINUX:#define __USER_LABEL_PREFIX__
2818// I386-LINUX:#define __WCHAR_MAX__ 2147483647
2819// I386-LINUX:#define __WCHAR_TYPE__ int
2820// I386-LINUX:#define __WCHAR_WIDTH__ 32
2821// I386-LINUX:#define __WINT_TYPE__ unsigned int
2822// I386-LINUX:#define __WINT_WIDTH__ 32
2823// I386-LINUX:#define __i386 1
2824// I386-LINUX:#define __i386__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00002825// I386-LINUX:#define i386 1
2826//
James Y Knightc97efa42016-02-11 16:51:29 +00002827// 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 +00002828// 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 +00002829//
2830// I386-NETBSD-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002831// I386-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002832// I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2833// I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
2834// I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
2835// I386-NETBSD:#define __CHAR_BIT__ 8
2836// I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2837// I386-NETBSD:#define __DBL_DIG__ 15
2838// I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2839// I386-NETBSD:#define __DBL_HAS_DENORM__ 1
2840// I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
2841// I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2842// I386-NETBSD:#define __DBL_MANT_DIG__ 53
2843// I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
2844// I386-NETBSD:#define __DBL_MAX_EXP__ 1024
2845// I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2846// I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2847// I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2848// I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002849// I386-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002850// I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2851// I386-NETBSD:#define __FLT_DIG__ 6
2852// I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2853// I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
2854// I386-NETBSD:#define __FLT_HAS_DENORM__ 1
2855// I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
2856// I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2857// I386-NETBSD:#define __FLT_MANT_DIG__ 24
2858// I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
2859// I386-NETBSD:#define __FLT_MAX_EXP__ 128
2860// I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2861// I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2862// I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
2863// I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2864// I386-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002865// I386-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002866// I386-NETBSD:#define __INT16_FMTd__ "hd"
2867// I386-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002868// I386-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002869// I386-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002870// I386-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002871// I386-NETBSD:#define __INT32_FMTd__ "d"
2872// I386-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002873// I386-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002874// I386-NETBSD:#define __INT32_TYPE__ int
2875// I386-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002876// I386-NETBSD:#define __INT64_FMTd__ "lld"
2877// I386-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002878// I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002879// I386-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002880// I386-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002881// I386-NETBSD:#define __INT8_FMTd__ "hhd"
2882// I386-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002883// I386-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002884// I386-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002885// I386-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002886// I386-NETBSD:#define __INTMAX_FMTd__ "lld"
2887// I386-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002888// I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2889// I386-NETBSD:#define __INTMAX_TYPE__ long long int
2890// I386-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002891// I386-NETBSD:#define __INTPTR_FMTd__ "d"
2892// I386-NETBSD:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002893// I386-NETBSD:#define __INTPTR_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002894// I386-NETBSD:#define __INTPTR_TYPE__ int
2895// I386-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002896// I386-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2897// I386-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002898// I386-NETBSD:#define __INT_FAST16_MAX__ 32767
2899// I386-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002900// I386-NETBSD:#define __INT_FAST32_FMTd__ "d"
2901// I386-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002902// I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2903// I386-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002904// I386-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2905// I386-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002906// I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2907// I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002908// I386-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2909// I386-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002910// I386-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002911// I386-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002912// I386-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2913// I386-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002914// I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
2915// I386-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002916// I386-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2917// I386-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002918// I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2919// I386-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002920// I386-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2921// I386-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002922// I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2923// I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002924// I386-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2925// I386-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002926// I386-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002927// I386-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002928// I386-NETBSD:#define __INT_MAX__ 2147483647
2929// I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2930// I386-NETBSD:#define __LDBL_DIG__ 18
2931// I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2932// I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
2933// I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2934// I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2935// I386-NETBSD:#define __LDBL_MANT_DIG__ 64
2936// I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
2937// I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
2938// I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2939// I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
2940// I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
2941// I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2942// I386-NETBSD:#define __LITTLE_ENDIAN__ 1
2943// I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2944// I386-NETBSD:#define __LONG_MAX__ 2147483647L
2945// I386-NETBSD-NOT:#define __LP64__
2946// I386-NETBSD:#define __NO_MATH_INLINES 1
2947// I386-NETBSD:#define __POINTER_WIDTH__ 32
2948// I386-NETBSD:#define __PTRDIFF_TYPE__ int
2949// I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002950// I386-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002951// I386-NETBSD:#define __SCHAR_MAX__ 127
2952// I386-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002953// I386-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002954// I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2955// I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
2956// I386-NETBSD:#define __SIZEOF_FLOAT__ 4
2957// I386-NETBSD:#define __SIZEOF_INT__ 4
2958// I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
2959// I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2960// I386-NETBSD:#define __SIZEOF_LONG__ 4
2961// I386-NETBSD:#define __SIZEOF_POINTER__ 4
2962// I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2963// I386-NETBSD:#define __SIZEOF_SHORT__ 2
2964// I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
2965// I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2966// I386-NETBSD:#define __SIZEOF_WINT_T__ 4
2967// I386-NETBSD:#define __SIZE_MAX__ 4294967295U
2968// I386-NETBSD:#define __SIZE_TYPE__ unsigned int
2969// I386-NETBSD:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002970// I386-NETBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
James Y Knightc97efa42016-02-11 16:51:29 +00002971// I386-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002972// I386-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002973// I386-NETBSD:#define __UINT16_TYPE__ unsigned short
2974// I386-NETBSD:#define __UINT32_C_SUFFIX__ U
2975// I386-NETBSD:#define __UINT32_MAX__ 4294967295U
2976// I386-NETBSD:#define __UINT32_TYPE__ unsigned int
2977// I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2978// I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2979// I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002980// I386-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002981// I386-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002982// I386-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002983// I386-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002984// I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002985// I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002986// I386-NETBSD:#define __UINTMAX_WIDTH__ 64
2987// I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
2988// I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
2989// I386-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002990// I386-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002991// I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2992// I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2993// I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2994// I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2995// I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002996// I386-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002997// I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002998// I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002999// I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
3000// I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
3001// I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
3002// I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3003// I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003004// I386-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003005// I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003006// I386-NETBSD:#define __USER_LABEL_PREFIX__
3007// I386-NETBSD:#define __WCHAR_MAX__ 2147483647
3008// I386-NETBSD:#define __WCHAR_TYPE__ int
3009// I386-NETBSD:#define __WCHAR_WIDTH__ 32
3010// I386-NETBSD:#define __WINT_TYPE__ int
3011// I386-NETBSD:#define __WINT_WIDTH__ 32
3012// I386-NETBSD:#define __i386 1
3013// I386-NETBSD:#define __i386__ 1
3014// I386-NETBSD:#define i386 1
3015//
James Y Knightc97efa42016-02-11 16:51:29 +00003016// 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 +00003017// I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
James Y Knightc97efa42016-02-11 16:51:29 +00003018// 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 +00003019// I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00003020// 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 +00003021// I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
3022
James Y Knightc97efa42016-02-11 16:51:29 +00003023// RUN: %clang_cc1 -E -dM -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3024// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3025// RUN: %clang_cc1 -E -dM -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3026// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3027// I386-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00003028
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003029//
Richard Smith59139022016-09-30 22:41:36 +00003030// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-C %s
3031// 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 +00003032//
3033// MIPS32BE:#define MIPSEB 1
3034// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003035// MIPS32BE-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003036// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003037// MIPS32BE:#define _MIPS_ARCH "mips32r2"
3038// MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003039// MIPS32BE:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003040// MIPS32BE:#define _MIPS_SIM _ABIO32
3041// MIPS32BE:#define _MIPS_SZINT 32
3042// MIPS32BE:#define _MIPS_SZLONG 32
3043// MIPS32BE:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003044// MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00003045// MIPS32BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003046// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003047// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
3048// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
3049// MIPS32BE:#define __CHAR_BIT__ 8
3050// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
3051// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3052// MIPS32BE:#define __DBL_DIG__ 15
3053// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
3054// MIPS32BE:#define __DBL_HAS_DENORM__ 1
3055// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
3056// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
3057// MIPS32BE:#define __DBL_MANT_DIG__ 53
3058// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
3059// MIPS32BE:#define __DBL_MAX_EXP__ 1024
3060// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
3061// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
3062// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
3063// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003064// MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003065// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3066// MIPS32BE:#define __FLT_DIG__ 6
3067// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
3068// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
3069// MIPS32BE:#define __FLT_HAS_DENORM__ 1
3070// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
3071// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
3072// MIPS32BE:#define __FLT_MANT_DIG__ 24
3073// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
3074// MIPS32BE:#define __FLT_MAX_EXP__ 128
3075// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
3076// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
3077// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
3078// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
3079// MIPS32BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003080// MIPS32BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003081// MIPS32BE:#define __INT16_FMTd__ "hd"
3082// MIPS32BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003083// MIPS32BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003084// MIPS32BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003085// MIPS32BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003086// MIPS32BE:#define __INT32_FMTd__ "d"
3087// MIPS32BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003088// MIPS32BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003089// MIPS32BE:#define __INT32_TYPE__ int
3090// MIPS32BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003091// MIPS32BE:#define __INT64_FMTd__ "lld"
3092// MIPS32BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003093// MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003094// MIPS32BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003095// MIPS32BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003096// MIPS32BE:#define __INT8_FMTd__ "hhd"
3097// MIPS32BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003098// MIPS32BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003099// MIPS32BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003100// MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003101// MIPS32BE:#define __INTMAX_FMTd__ "lld"
3102// MIPS32BE:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003103// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
3104// MIPS32BE:#define __INTMAX_TYPE__ long long int
3105// MIPS32BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003106// MIPS32BE:#define __INTPTR_FMTd__ "ld"
3107// MIPS32BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003108// MIPS32BE:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003109// MIPS32BE:#define __INTPTR_TYPE__ long int
3110// MIPS32BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003111// MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
3112// MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003113// MIPS32BE:#define __INT_FAST16_MAX__ 32767
3114// MIPS32BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003115// MIPS32BE:#define __INT_FAST32_FMTd__ "d"
3116// MIPS32BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003117// MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
3118// MIPS32BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003119// MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
3120// MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003121// MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
3122// MIPS32BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003123// MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
3124// MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003125// MIPS32BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003126// MIPS32BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003127// MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
3128// MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003129// MIPS32BE:#define __INT_LEAST16_MAX__ 32767
3130// MIPS32BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003131// MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
3132// MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003133// MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
3134// MIPS32BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003135// MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
3136// MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003137// MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3138// MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003139// MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
3140// MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003141// MIPS32BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003142// MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003143// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003144// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003145// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003146// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003147// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
3148// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
3149// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
3150// MIPS32BE:#define __LDBL_MANT_DIG__ 53
3151// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
3152// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003153// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003154// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
3155// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003156// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003157// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
3158// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003159// MIPS32BE-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003160// MIPS32BE:#define __MIPSEB 1
3161// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003162// MIPS32BE:#define __POINTER_WIDTH__ 32
3163// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
3164// MIPS32BE:#define __PTRDIFF_TYPE__ int
3165// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003166// MIPS32BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003167// MIPS32BE:#define __SCHAR_MAX__ 127
3168// MIPS32BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003169// MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003170// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
3171// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
3172// MIPS32BE:#define __SIZEOF_FLOAT__ 4
3173// MIPS32BE:#define __SIZEOF_INT__ 4
3174// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
3175// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
3176// MIPS32BE:#define __SIZEOF_LONG__ 4
3177// MIPS32BE:#define __SIZEOF_POINTER__ 4
3178// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
3179// MIPS32BE:#define __SIZEOF_SHORT__ 2
3180// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
3181// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
3182// MIPS32BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003183// MIPS32BE:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003184// MIPS32BE:#define __SIZE_TYPE__ unsigned int
3185// MIPS32BE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003186// MIPS32BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003187// MIPS32BE:#define __STDC_HOSTED__ 0
Richard Smith59139022016-09-30 22:41:36 +00003188// MIPS32BE-C:#define __STDC_VERSION__ 201112L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003189// MIPS32BE:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00003190// MIPS32BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003191// MIPS32BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003192// MIPS32BE:#define __UINT16_TYPE__ unsigned short
3193// MIPS32BE:#define __UINT32_C_SUFFIX__ U
3194// MIPS32BE:#define __UINT32_MAX__ 4294967295U
3195// MIPS32BE:#define __UINT32_TYPE__ unsigned int
3196// MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
3197// MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
3198// MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003199// MIPS32BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003200// MIPS32BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003201// MIPS32BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003202// MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003203// MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003204// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003205// MIPS32BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003206// MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003207// MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003208// MIPS32BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003209// MIPS32BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003210// MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
3211// MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
3212// MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
3213// MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3214// MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003215// MIPS32BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003216// MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003217// MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003218// MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
3219// MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
3220// MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
3221// MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3222// MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003223// MIPS32BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003224// MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003225// MIPS32BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003226// MIPS32BE:#define __WCHAR_MAX__ 2147483647
3227// MIPS32BE:#define __WCHAR_TYPE__ int
3228// MIPS32BE:#define __WCHAR_WIDTH__ 32
3229// MIPS32BE:#define __WINT_TYPE__ int
3230// MIPS32BE:#define __WINT_WIDTH__ 32
3231// MIPS32BE:#define __clang__ 1
3232// MIPS32BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003233// MIPS32BE:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003234// MIPS32BE:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003235// MIPS32BE:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003236// MIPS32BE:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003237// MIPS32BE:#define __mips_hard_float 1
3238// MIPS32BE:#define __mips_o32 1
3239// MIPS32BE:#define _mips 1
3240// MIPS32BE:#define mips 1
3241//
James Y Knightc97efa42016-02-11 16:51:29 +00003242// 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 +00003243//
3244// MIPS32EL:#define MIPSEL 1
3245// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003246// MIPS32EL-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003247// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003248// MIPS32EL:#define _MIPS_ARCH "mips32r2"
3249// MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003250// MIPS32EL:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003251// MIPS32EL:#define _MIPS_SIM _ABIO32
3252// MIPS32EL:#define _MIPS_SZINT 32
3253// MIPS32EL:#define _MIPS_SZLONG 32
3254// MIPS32EL:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003255// MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003256// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003257// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
3258// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
3259// MIPS32EL:#define __CHAR_BIT__ 8
3260// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
3261// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3262// MIPS32EL:#define __DBL_DIG__ 15
3263// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
3264// MIPS32EL:#define __DBL_HAS_DENORM__ 1
3265// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
3266// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
3267// MIPS32EL:#define __DBL_MANT_DIG__ 53
3268// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
3269// MIPS32EL:#define __DBL_MAX_EXP__ 1024
3270// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
3271// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
3272// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
3273// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003274// MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003275// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3276// MIPS32EL:#define __FLT_DIG__ 6
3277// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
3278// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
3279// MIPS32EL:#define __FLT_HAS_DENORM__ 1
3280// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
3281// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
3282// MIPS32EL:#define __FLT_MANT_DIG__ 24
3283// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
3284// MIPS32EL:#define __FLT_MAX_EXP__ 128
3285// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
3286// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
3287// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
3288// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
3289// MIPS32EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003290// MIPS32EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003291// MIPS32EL:#define __INT16_FMTd__ "hd"
3292// MIPS32EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003293// MIPS32EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003294// MIPS32EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003295// MIPS32EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003296// MIPS32EL:#define __INT32_FMTd__ "d"
3297// MIPS32EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003298// MIPS32EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003299// MIPS32EL:#define __INT32_TYPE__ int
3300// MIPS32EL:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003301// MIPS32EL:#define __INT64_FMTd__ "lld"
3302// MIPS32EL:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003303// MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003304// MIPS32EL:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003305// MIPS32EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003306// MIPS32EL:#define __INT8_FMTd__ "hhd"
3307// MIPS32EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003308// MIPS32EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003309// MIPS32EL:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003310// MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003311// MIPS32EL:#define __INTMAX_FMTd__ "lld"
3312// MIPS32EL:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003313// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
3314// MIPS32EL:#define __INTMAX_TYPE__ long long int
3315// MIPS32EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003316// MIPS32EL:#define __INTPTR_FMTd__ "ld"
3317// MIPS32EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003318// MIPS32EL:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003319// MIPS32EL:#define __INTPTR_TYPE__ long int
3320// MIPS32EL:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003321// MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
3322// MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003323// MIPS32EL:#define __INT_FAST16_MAX__ 32767
3324// MIPS32EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003325// MIPS32EL:#define __INT_FAST32_FMTd__ "d"
3326// MIPS32EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003327// MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
3328// MIPS32EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003329// MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
3330// MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003331// MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
3332// MIPS32EL:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003333// MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
3334// MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003335// MIPS32EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003336// MIPS32EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003337// MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
3338// MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003339// MIPS32EL:#define __INT_LEAST16_MAX__ 32767
3340// MIPS32EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003341// MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
3342// MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003343// MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
3344// MIPS32EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003345// MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
3346// MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003347// MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3348// MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003349// MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
3350// MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003351// MIPS32EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003352// MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003353// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003354// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003355// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003356// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003357// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
3358// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
3359// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
3360// MIPS32EL:#define __LDBL_MANT_DIG__ 53
3361// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
3362// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003363// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003364// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
3365// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003366// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00003367// MIPS32EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003368// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
3369// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003370// MIPS32EL-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003371// MIPS32EL:#define __MIPSEL 1
3372// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003373// MIPS32EL:#define __POINTER_WIDTH__ 32
3374// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
3375// MIPS32EL:#define __PTRDIFF_TYPE__ int
3376// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003377// MIPS32EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003378// MIPS32EL:#define __SCHAR_MAX__ 127
3379// MIPS32EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003380// MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003381// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
3382// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
3383// MIPS32EL:#define __SIZEOF_FLOAT__ 4
3384// MIPS32EL:#define __SIZEOF_INT__ 4
3385// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
3386// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
3387// MIPS32EL:#define __SIZEOF_LONG__ 4
3388// MIPS32EL:#define __SIZEOF_POINTER__ 4
3389// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
3390// MIPS32EL:#define __SIZEOF_SHORT__ 2
3391// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
3392// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
3393// MIPS32EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003394// MIPS32EL:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003395// MIPS32EL:#define __SIZE_TYPE__ unsigned int
3396// MIPS32EL:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003397// MIPS32EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003398// MIPS32EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003399// MIPS32EL:#define __UINT16_TYPE__ unsigned short
3400// MIPS32EL:#define __UINT32_C_SUFFIX__ U
3401// MIPS32EL:#define __UINT32_MAX__ 4294967295U
3402// MIPS32EL:#define __UINT32_TYPE__ unsigned int
3403// MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
3404// MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
3405// MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003406// MIPS32EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003407// MIPS32EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003408// MIPS32EL:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003409// MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003410// MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003411// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003412// MIPS32EL:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003413// MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003414// MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003415// MIPS32EL:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003416// MIPS32EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003417// MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
3418// MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
3419// MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
3420// MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3421// MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003422// MIPS32EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003423// MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003424// MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003425// MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
3426// MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
3427// MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
3428// MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3429// MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003430// MIPS32EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003431// MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003432// MIPS32EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003433// MIPS32EL:#define __WCHAR_MAX__ 2147483647
3434// MIPS32EL:#define __WCHAR_TYPE__ int
3435// MIPS32EL:#define __WCHAR_WIDTH__ 32
3436// MIPS32EL:#define __WINT_TYPE__ int
3437// MIPS32EL:#define __WINT_WIDTH__ 32
3438// MIPS32EL:#define __clang__ 1
3439// MIPS32EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003440// MIPS32EL:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003441// MIPS32EL:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003442// MIPS32EL:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003443// MIPS32EL:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003444// MIPS32EL:#define __mips_hard_float 1
3445// MIPS32EL:#define __mips_o32 1
3446// MIPS32EL:#define _mips 1
3447// MIPS32EL:#define mips 1
3448//
Simon Atanasyan495523e42015-01-22 23:16:48 +00003449// RUN: %clang_cc1 -E -dM -ffreestanding \
3450// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
Richard Smith59139022016-09-30 22:41:36 +00003451// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-C %s
3452// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding \
3453// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
3454// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-CXX %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003455//
3456// MIPSN32BE: #define MIPSEB 1
3457// MIPSN32BE: #define _ABIN32 2
3458// MIPSN32BE: #define _ILP32 1
3459// MIPSN32BE: #define _MIPSEB 1
3460// MIPSN32BE: #define _MIPS_ARCH "mips64r2"
3461// MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
3462// MIPSN32BE: #define _MIPS_FPSET 32
3463// MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
3464// MIPSN32BE: #define _MIPS_SIM _ABIN32
3465// MIPSN32BE: #define _MIPS_SZINT 32
3466// MIPSN32BE: #define _MIPS_SZLONG 32
3467// MIPSN32BE: #define _MIPS_SZPTR 32
3468// MIPSN32BE: #define __ATOMIC_ACQUIRE 2
3469// MIPSN32BE: #define __ATOMIC_ACQ_REL 4
3470// MIPSN32BE: #define __ATOMIC_CONSUME 1
3471// MIPSN32BE: #define __ATOMIC_RELAXED 0
3472// MIPSN32BE: #define __ATOMIC_RELEASE 3
3473// MIPSN32BE: #define __ATOMIC_SEQ_CST 5
3474// MIPSN32BE: #define __BIG_ENDIAN__ 1
3475// MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3476// MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
3477// MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
3478// MIPSN32BE: #define __CHAR_BIT__ 8
3479// MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
3480// MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3481// MIPSN32BE: #define __DBL_DIG__ 15
3482// MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
3483// MIPSN32BE: #define __DBL_HAS_DENORM__ 1
3484// MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
3485// MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
3486// MIPSN32BE: #define __DBL_MANT_DIG__ 53
3487// MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
3488// MIPSN32BE: #define __DBL_MAX_EXP__ 1024
3489// MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
3490// MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
3491// MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
3492// MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003493// MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003494// MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
3495// MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3496// MIPSN32BE: #define __FLT_DIG__ 6
3497// MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
3498// MIPSN32BE: #define __FLT_EVAL_METHOD__ 0
3499// MIPSN32BE: #define __FLT_HAS_DENORM__ 1
3500// MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
3501// MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
3502// MIPSN32BE: #define __FLT_MANT_DIG__ 24
3503// MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
3504// MIPSN32BE: #define __FLT_MAX_EXP__ 128
3505// MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
3506// MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
3507// MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
3508// MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
3509// MIPSN32BE: #define __FLT_RADIX__ 2
3510// MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3511// MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3512// MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3513// MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3514// MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3515// MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3516// MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3517// MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3518// MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3519// MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3520// MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3521// MIPSN32BE: #define __GNUC_MINOR__ 2
3522// MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
Richard Smith59139022016-09-30 22:41:36 +00003523// MIPSN32BE-C: #define __GNUC_STDC_INLINE__ 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003524// MIPSN32BE: #define __GNUC__ 4
3525// MIPSN32BE: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003526// MIPSN32BE: #define __ILP32__ 1
3527// MIPSN32BE: #define __INT16_C_SUFFIX__
3528// MIPSN32BE: #define __INT16_FMTd__ "hd"
3529// MIPSN32BE: #define __INT16_FMTi__ "hi"
3530// MIPSN32BE: #define __INT16_MAX__ 32767
3531// MIPSN32BE: #define __INT16_TYPE__ short
3532// MIPSN32BE: #define __INT32_C_SUFFIX__
3533// MIPSN32BE: #define __INT32_FMTd__ "d"
3534// MIPSN32BE: #define __INT32_FMTi__ "i"
3535// MIPSN32BE: #define __INT32_MAX__ 2147483647
3536// MIPSN32BE: #define __INT32_TYPE__ int
3537// MIPSN32BE: #define __INT64_C_SUFFIX__ LL
3538// MIPSN32BE: #define __INT64_FMTd__ "lld"
3539// MIPSN32BE: #define __INT64_FMTi__ "lli"
3540// MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
3541// MIPSN32BE: #define __INT64_TYPE__ long long int
3542// MIPSN32BE: #define __INT8_C_SUFFIX__
3543// MIPSN32BE: #define __INT8_FMTd__ "hhd"
3544// MIPSN32BE: #define __INT8_FMTi__ "hhi"
3545// MIPSN32BE: #define __INT8_MAX__ 127
3546// MIPSN32BE: #define __INT8_TYPE__ signed char
3547// MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
3548// MIPSN32BE: #define __INTMAX_FMTd__ "lld"
3549// MIPSN32BE: #define __INTMAX_FMTi__ "lli"
3550// MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
3551// MIPSN32BE: #define __INTMAX_TYPE__ long long int
3552// MIPSN32BE: #define __INTMAX_WIDTH__ 64
3553// MIPSN32BE: #define __INTPTR_FMTd__ "ld"
3554// MIPSN32BE: #define __INTPTR_FMTi__ "li"
3555// MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
3556// MIPSN32BE: #define __INTPTR_TYPE__ long int
3557// MIPSN32BE: #define __INTPTR_WIDTH__ 32
3558// MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
3559// MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
3560// MIPSN32BE: #define __INT_FAST16_MAX__ 32767
3561// MIPSN32BE: #define __INT_FAST16_TYPE__ short
3562// MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
3563// MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
3564// MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
3565// MIPSN32BE: #define __INT_FAST32_TYPE__ int
3566// MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
3567// MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
3568// MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
3569// MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
3570// MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
3571// MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
3572// MIPSN32BE: #define __INT_FAST8_MAX__ 127
3573// MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
3574// MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
3575// MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
3576// MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
3577// MIPSN32BE: #define __INT_LEAST16_TYPE__ short
3578// MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
3579// MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
3580// MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
3581// MIPSN32BE: #define __INT_LEAST32_TYPE__ int
3582// MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
3583// MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
3584// MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3585// MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
3586// MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
3587// MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
3588// MIPSN32BE: #define __INT_LEAST8_MAX__ 127
3589// MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
3590// MIPSN32BE: #define __INT_MAX__ 2147483647
3591// MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3592// MIPSN32BE: #define __LDBL_DIG__ 33
3593// MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3594// MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
3595// MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
3596// MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
3597// MIPSN32BE: #define __LDBL_MANT_DIG__ 113
3598// MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
3599// MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
3600// MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3601// MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
3602// MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
3603// MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3604// MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
3605// MIPSN32BE: #define __LONG_MAX__ 2147483647L
3606// MIPSN32BE: #define __MIPSEB 1
3607// MIPSN32BE: #define __MIPSEB__ 1
3608// MIPSN32BE: #define __NO_INLINE__ 1
3609// MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
3610// MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
3611// MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
3612// MIPSN32BE: #define __POINTER_WIDTH__ 32
3613// MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
3614// MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
3615// MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
3616// MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
3617// MIPSN32BE: #define __PTRDIFF_TYPE__ int
3618// MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
3619// MIPSN32BE: #define __REGISTER_PREFIX__
3620// MIPSN32BE: #define __SCHAR_MAX__ 127
3621// MIPSN32BE: #define __SHRT_MAX__ 32767
3622// MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
3623// MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
3624// MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
3625// MIPSN32BE: #define __SIZEOF_FLOAT__ 4
3626// MIPSN32BE: #define __SIZEOF_INT__ 4
3627// MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
3628// MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
3629// MIPSN32BE: #define __SIZEOF_LONG__ 4
3630// MIPSN32BE: #define __SIZEOF_POINTER__ 4
3631// MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
3632// MIPSN32BE: #define __SIZEOF_SHORT__ 2
3633// MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
3634// MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
3635// MIPSN32BE: #define __SIZEOF_WINT_T__ 4
3636// MIPSN32BE: #define __SIZE_FMTX__ "X"
3637// MIPSN32BE: #define __SIZE_FMTo__ "o"
3638// MIPSN32BE: #define __SIZE_FMTu__ "u"
3639// MIPSN32BE: #define __SIZE_FMTx__ "x"
3640// MIPSN32BE: #define __SIZE_MAX__ 4294967295U
3641// MIPSN32BE: #define __SIZE_TYPE__ unsigned int
3642// MIPSN32BE: #define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003643// MIPSN32BE-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
Simon Atanasyan495523e42015-01-22 23:16:48 +00003644// MIPSN32BE: #define __STDC_HOSTED__ 0
3645// MIPSN32BE: #define __STDC_UTF_16__ 1
3646// MIPSN32BE: #define __STDC_UTF_32__ 1
Richard Smith59139022016-09-30 22:41:36 +00003647// MIPSN32BE-C: #define __STDC_VERSION__ 201112L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003648// MIPSN32BE: #define __STDC__ 1
3649// MIPSN32BE: #define __UINT16_C_SUFFIX__
3650// MIPSN32BE: #define __UINT16_FMTX__ "hX"
3651// MIPSN32BE: #define __UINT16_FMTo__ "ho"
3652// MIPSN32BE: #define __UINT16_FMTu__ "hu"
3653// MIPSN32BE: #define __UINT16_FMTx__ "hx"
3654// MIPSN32BE: #define __UINT16_MAX__ 65535
3655// MIPSN32BE: #define __UINT16_TYPE__ unsigned short
3656// MIPSN32BE: #define __UINT32_C_SUFFIX__ U
3657// MIPSN32BE: #define __UINT32_FMTX__ "X"
3658// MIPSN32BE: #define __UINT32_FMTo__ "o"
3659// MIPSN32BE: #define __UINT32_FMTu__ "u"
3660// MIPSN32BE: #define __UINT32_FMTx__ "x"
3661// MIPSN32BE: #define __UINT32_MAX__ 4294967295U
3662// MIPSN32BE: #define __UINT32_TYPE__ unsigned int
3663// MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
3664// MIPSN32BE: #define __UINT64_FMTX__ "llX"
3665// MIPSN32BE: #define __UINT64_FMTo__ "llo"
3666// MIPSN32BE: #define __UINT64_FMTu__ "llu"
3667// MIPSN32BE: #define __UINT64_FMTx__ "llx"
3668// MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
3669// MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
3670// MIPSN32BE: #define __UINT8_C_SUFFIX__
3671// MIPSN32BE: #define __UINT8_FMTX__ "hhX"
3672// MIPSN32BE: #define __UINT8_FMTo__ "hho"
3673// MIPSN32BE: #define __UINT8_FMTu__ "hhu"
3674// MIPSN32BE: #define __UINT8_FMTx__ "hhx"
3675// MIPSN32BE: #define __UINT8_MAX__ 255
3676// MIPSN32BE: #define __UINT8_TYPE__ unsigned char
3677// MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
3678// MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
3679// MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
3680// MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
3681// MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
3682// MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
3683// MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
3684// MIPSN32BE: #define __UINTMAX_WIDTH__ 64
3685// MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
3686// MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
3687// MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
3688// MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
3689// MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
3690// MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
3691// MIPSN32BE: #define __UINTPTR_WIDTH__ 32
3692// MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
3693// MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
3694// MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
3695// MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
3696// MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
3697// MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
3698// MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
3699// MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
3700// MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
3701// MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
3702// MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
3703// MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
3704// MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
3705// MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
3706// MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
3707// MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
3708// MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3709// MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
3710// MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
3711// MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
3712// MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
3713// MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
3714// MIPSN32BE: #define __UINT_FAST8_MAX__ 255
3715// MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
3716// MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
3717// MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
3718// MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
3719// MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
3720// MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
3721// MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
3722// MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
3723// MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
3724// MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
3725// MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
3726// MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
3727// MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
3728// MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
3729// MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
3730// MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
3731// MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
3732// MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3733// MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
3734// MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
3735// MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
3736// MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
3737// MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
3738// MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
3739// MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003740// MIPSN32BE: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003741// MIPSN32BE: #define __WCHAR_MAX__ 2147483647
3742// MIPSN32BE: #define __WCHAR_TYPE__ int
3743// MIPSN32BE: #define __WCHAR_WIDTH__ 32
3744// MIPSN32BE: #define __WINT_TYPE__ int
3745// MIPSN32BE: #define __WINT_WIDTH__ 32
3746// MIPSN32BE: #define __clang__ 1
3747// MIPSN32BE: #define __llvm__ 1
3748// MIPSN32BE: #define __mips 64
3749// MIPSN32BE: #define __mips64 1
3750// MIPSN32BE: #define __mips64__ 1
3751// MIPSN32BE: #define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003752// MIPSN32BE: #define __mips_abicalls 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003753// MIPSN32BE: #define __mips_fpr 64
3754// MIPSN32BE: #define __mips_hard_float 1
3755// MIPSN32BE: #define __mips_isa_rev 2
3756// MIPSN32BE: #define __mips_n32 1
3757// MIPSN32BE: #define _mips 1
3758// MIPSN32BE: #define mips 1
3759//
3760// RUN: %clang_cc1 -E -dM -ffreestanding \
3761// RUN: -triple=mips64el-none-none -target-abi n32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00003762// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003763//
3764// MIPSN32EL: #define MIPSEL 1
3765// MIPSN32EL: #define _ABIN32 2
3766// MIPSN32EL: #define _ILP32 1
3767// MIPSN32EL: #define _MIPSEL 1
3768// MIPSN32EL: #define _MIPS_ARCH "mips64r2"
3769// MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
3770// MIPSN32EL: #define _MIPS_FPSET 32
3771// MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
3772// MIPSN32EL: #define _MIPS_SIM _ABIN32
3773// MIPSN32EL: #define _MIPS_SZINT 32
3774// MIPSN32EL: #define _MIPS_SZLONG 32
3775// MIPSN32EL: #define _MIPS_SZPTR 32
3776// MIPSN32EL: #define __ATOMIC_ACQUIRE 2
3777// MIPSN32EL: #define __ATOMIC_ACQ_REL 4
3778// MIPSN32EL: #define __ATOMIC_CONSUME 1
3779// MIPSN32EL: #define __ATOMIC_RELAXED 0
3780// MIPSN32EL: #define __ATOMIC_RELEASE 3
3781// MIPSN32EL: #define __ATOMIC_SEQ_CST 5
3782// MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3783// MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
3784// MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
3785// MIPSN32EL: #define __CHAR_BIT__ 8
3786// MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
3787// MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3788// MIPSN32EL: #define __DBL_DIG__ 15
3789// MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
3790// MIPSN32EL: #define __DBL_HAS_DENORM__ 1
3791// MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
3792// MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
3793// MIPSN32EL: #define __DBL_MANT_DIG__ 53
3794// MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
3795// MIPSN32EL: #define __DBL_MAX_EXP__ 1024
3796// MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
3797// MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
3798// MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
3799// MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003800// MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003801// MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
3802// MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3803// MIPSN32EL: #define __FLT_DIG__ 6
3804// MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
3805// MIPSN32EL: #define __FLT_EVAL_METHOD__ 0
3806// MIPSN32EL: #define __FLT_HAS_DENORM__ 1
3807// MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
3808// MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
3809// MIPSN32EL: #define __FLT_MANT_DIG__ 24
3810// MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
3811// MIPSN32EL: #define __FLT_MAX_EXP__ 128
3812// MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
3813// MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
3814// MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
3815// MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
3816// MIPSN32EL: #define __FLT_RADIX__ 2
3817// MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3818// MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3819// MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3820// MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3821// MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3822// MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3823// MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3824// MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3825// MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3826// MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3827// MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3828// MIPSN32EL: #define __GNUC_MINOR__ 2
3829// MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
3830// MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
3831// MIPSN32EL: #define __GNUC__ 4
3832// MIPSN32EL: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003833// MIPSN32EL: #define __ILP32__ 1
3834// MIPSN32EL: #define __INT16_C_SUFFIX__
3835// MIPSN32EL: #define __INT16_FMTd__ "hd"
3836// MIPSN32EL: #define __INT16_FMTi__ "hi"
3837// MIPSN32EL: #define __INT16_MAX__ 32767
3838// MIPSN32EL: #define __INT16_TYPE__ short
3839// MIPSN32EL: #define __INT32_C_SUFFIX__
3840// MIPSN32EL: #define __INT32_FMTd__ "d"
3841// MIPSN32EL: #define __INT32_FMTi__ "i"
3842// MIPSN32EL: #define __INT32_MAX__ 2147483647
3843// MIPSN32EL: #define __INT32_TYPE__ int
3844// MIPSN32EL: #define __INT64_C_SUFFIX__ LL
3845// MIPSN32EL: #define __INT64_FMTd__ "lld"
3846// MIPSN32EL: #define __INT64_FMTi__ "lli"
3847// MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
3848// MIPSN32EL: #define __INT64_TYPE__ long long int
3849// MIPSN32EL: #define __INT8_C_SUFFIX__
3850// MIPSN32EL: #define __INT8_FMTd__ "hhd"
3851// MIPSN32EL: #define __INT8_FMTi__ "hhi"
3852// MIPSN32EL: #define __INT8_MAX__ 127
3853// MIPSN32EL: #define __INT8_TYPE__ signed char
3854// MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
3855// MIPSN32EL: #define __INTMAX_FMTd__ "lld"
3856// MIPSN32EL: #define __INTMAX_FMTi__ "lli"
3857// MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
3858// MIPSN32EL: #define __INTMAX_TYPE__ long long int
3859// MIPSN32EL: #define __INTMAX_WIDTH__ 64
3860// MIPSN32EL: #define __INTPTR_FMTd__ "ld"
3861// MIPSN32EL: #define __INTPTR_FMTi__ "li"
3862// MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
3863// MIPSN32EL: #define __INTPTR_TYPE__ long int
3864// MIPSN32EL: #define __INTPTR_WIDTH__ 32
3865// MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
3866// MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
3867// MIPSN32EL: #define __INT_FAST16_MAX__ 32767
3868// MIPSN32EL: #define __INT_FAST16_TYPE__ short
3869// MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
3870// MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
3871// MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
3872// MIPSN32EL: #define __INT_FAST32_TYPE__ int
3873// MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
3874// MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
3875// MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
3876// MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
3877// MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
3878// MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
3879// MIPSN32EL: #define __INT_FAST8_MAX__ 127
3880// MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
3881// MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
3882// MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
3883// MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
3884// MIPSN32EL: #define __INT_LEAST16_TYPE__ short
3885// MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
3886// MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
3887// MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
3888// MIPSN32EL: #define __INT_LEAST32_TYPE__ int
3889// MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
3890// MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
3891// MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3892// MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
3893// MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
3894// MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
3895// MIPSN32EL: #define __INT_LEAST8_MAX__ 127
3896// MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
3897// MIPSN32EL: #define __INT_MAX__ 2147483647
3898// MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3899// MIPSN32EL: #define __LDBL_DIG__ 33
3900// MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3901// MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
3902// MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
3903// MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
3904// MIPSN32EL: #define __LDBL_MANT_DIG__ 113
3905// MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
3906// MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
3907// MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3908// MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
3909// MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
3910// MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3911// MIPSN32EL: #define __LITTLE_ENDIAN__ 1
3912// MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
3913// MIPSN32EL: #define __LONG_MAX__ 2147483647L
3914// MIPSN32EL: #define __MIPSEL 1
3915// MIPSN32EL: #define __MIPSEL__ 1
3916// MIPSN32EL: #define __NO_INLINE__ 1
3917// MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
3918// MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
3919// MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
3920// MIPSN32EL: #define __POINTER_WIDTH__ 32
3921// MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
3922// MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
3923// MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
3924// MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
3925// MIPSN32EL: #define __PTRDIFF_TYPE__ int
3926// MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
3927// MIPSN32EL: #define __REGISTER_PREFIX__
3928// MIPSN32EL: #define __SCHAR_MAX__ 127
3929// MIPSN32EL: #define __SHRT_MAX__ 32767
3930// MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
3931// MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
3932// MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
3933// MIPSN32EL: #define __SIZEOF_FLOAT__ 4
3934// MIPSN32EL: #define __SIZEOF_INT__ 4
3935// MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
3936// MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
3937// MIPSN32EL: #define __SIZEOF_LONG__ 4
3938// MIPSN32EL: #define __SIZEOF_POINTER__ 4
3939// MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
3940// MIPSN32EL: #define __SIZEOF_SHORT__ 2
3941// MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
3942// MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
3943// MIPSN32EL: #define __SIZEOF_WINT_T__ 4
3944// MIPSN32EL: #define __SIZE_FMTX__ "X"
3945// MIPSN32EL: #define __SIZE_FMTo__ "o"
3946// MIPSN32EL: #define __SIZE_FMTu__ "u"
3947// MIPSN32EL: #define __SIZE_FMTx__ "x"
3948// MIPSN32EL: #define __SIZE_MAX__ 4294967295U
3949// MIPSN32EL: #define __SIZE_TYPE__ unsigned int
3950// MIPSN32EL: #define __SIZE_WIDTH__ 32
3951// MIPSN32EL: #define __STDC_HOSTED__ 0
3952// MIPSN32EL: #define __STDC_UTF_16__ 1
3953// MIPSN32EL: #define __STDC_UTF_32__ 1
3954// MIPSN32EL: #define __STDC_VERSION__ 201112L
3955// MIPSN32EL: #define __STDC__ 1
3956// MIPSN32EL: #define __UINT16_C_SUFFIX__
3957// MIPSN32EL: #define __UINT16_FMTX__ "hX"
3958// MIPSN32EL: #define __UINT16_FMTo__ "ho"
3959// MIPSN32EL: #define __UINT16_FMTu__ "hu"
3960// MIPSN32EL: #define __UINT16_FMTx__ "hx"
3961// MIPSN32EL: #define __UINT16_MAX__ 65535
3962// MIPSN32EL: #define __UINT16_TYPE__ unsigned short
3963// MIPSN32EL: #define __UINT32_C_SUFFIX__ U
3964// MIPSN32EL: #define __UINT32_FMTX__ "X"
3965// MIPSN32EL: #define __UINT32_FMTo__ "o"
3966// MIPSN32EL: #define __UINT32_FMTu__ "u"
3967// MIPSN32EL: #define __UINT32_FMTx__ "x"
3968// MIPSN32EL: #define __UINT32_MAX__ 4294967295U
3969// MIPSN32EL: #define __UINT32_TYPE__ unsigned int
3970// MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
3971// MIPSN32EL: #define __UINT64_FMTX__ "llX"
3972// MIPSN32EL: #define __UINT64_FMTo__ "llo"
3973// MIPSN32EL: #define __UINT64_FMTu__ "llu"
3974// MIPSN32EL: #define __UINT64_FMTx__ "llx"
3975// MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
3976// MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
3977// MIPSN32EL: #define __UINT8_C_SUFFIX__
3978// MIPSN32EL: #define __UINT8_FMTX__ "hhX"
3979// MIPSN32EL: #define __UINT8_FMTo__ "hho"
3980// MIPSN32EL: #define __UINT8_FMTu__ "hhu"
3981// MIPSN32EL: #define __UINT8_FMTx__ "hhx"
3982// MIPSN32EL: #define __UINT8_MAX__ 255
3983// MIPSN32EL: #define __UINT8_TYPE__ unsigned char
3984// MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
3985// MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
3986// MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
3987// MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
3988// MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
3989// MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
3990// MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
3991// MIPSN32EL: #define __UINTMAX_WIDTH__ 64
3992// MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
3993// MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
3994// MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
3995// MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
3996// MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
3997// MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
3998// MIPSN32EL: #define __UINTPTR_WIDTH__ 32
3999// MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
4000// MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
4001// MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
4002// MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
4003// MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
4004// MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
4005// MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
4006// MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
4007// MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
4008// MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
4009// MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
4010// MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
4011// MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
4012// MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
4013// MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
4014// MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
4015// MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
4016// MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
4017// MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
4018// MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
4019// MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
4020// MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
4021// MIPSN32EL: #define __UINT_FAST8_MAX__ 255
4022// MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
4023// MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
4024// MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
4025// MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
4026// MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
4027// MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
4028// MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
4029// MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
4030// MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
4031// MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
4032// MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
4033// MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
4034// MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
4035// MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
4036// MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
4037// MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
4038// MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
4039// MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4040// MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
4041// MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
4042// MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
4043// MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
4044// MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
4045// MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
4046// MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004047// MIPSN32EL: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00004048// MIPSN32EL: #define __WCHAR_MAX__ 2147483647
4049// MIPSN32EL: #define __WCHAR_TYPE__ int
4050// MIPSN32EL: #define __WCHAR_WIDTH__ 32
4051// MIPSN32EL: #define __WINT_TYPE__ int
4052// MIPSN32EL: #define __WINT_WIDTH__ 32
4053// MIPSN32EL: #define __clang__ 1
4054// MIPSN32EL: #define __llvm__ 1
4055// MIPSN32EL: #define __mips 64
4056// MIPSN32EL: #define __mips64 1
4057// MIPSN32EL: #define __mips64__ 1
4058// MIPSN32EL: #define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004059// MIPSN32EL: #define __mips_abicalls 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00004060// MIPSN32EL: #define __mips_fpr 64
4061// MIPSN32EL: #define __mips_hard_float 1
4062// MIPSN32EL: #define __mips_isa_rev 2
4063// MIPSN32EL: #define __mips_n32 1
4064// MIPSN32EL: #define _mips 1
4065// MIPSN32EL: #define mips 1
4066//
James Y Knightc97efa42016-02-11 16:51:29 +00004067// 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 +00004068// 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 +00004069//
4070// MIPS64BE:#define MIPSEB 1
4071// MIPS64BE:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004072// MIPS64BE:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004073// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004074// MIPS64BE:#define _MIPS_ARCH "mips64r2"
4075// MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004076// MIPS64BE:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004077// MIPS64BE:#define _MIPS_SIM _ABI64
4078// MIPS64BE:#define _MIPS_SZINT 32
4079// MIPS64BE:#define _MIPS_SZLONG 64
4080// MIPS64BE:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004081// MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
Robert Lytton2c942c62014-03-10 12:06:29 +00004082// MIPS64BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004083// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004084// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
4085// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
4086// MIPS64BE:#define __CHAR_BIT__ 8
4087// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
4088// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4089// MIPS64BE:#define __DBL_DIG__ 15
4090// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
4091// MIPS64BE:#define __DBL_HAS_DENORM__ 1
4092// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
4093// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
4094// MIPS64BE:#define __DBL_MANT_DIG__ 53
4095// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
4096// MIPS64BE:#define __DBL_MAX_EXP__ 1024
4097// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
4098// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
4099// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
4100// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004101// MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004102// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4103// MIPS64BE:#define __FLT_DIG__ 6
4104// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
4105// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
4106// MIPS64BE:#define __FLT_HAS_DENORM__ 1
4107// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
4108// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
4109// MIPS64BE:#define __FLT_MANT_DIG__ 24
4110// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
4111// MIPS64BE:#define __FLT_MAX_EXP__ 128
4112// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
4113// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
4114// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
4115// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
4116// MIPS64BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004117// MIPS64BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004118// MIPS64BE:#define __INT16_FMTd__ "hd"
4119// MIPS64BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004120// MIPS64BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004121// MIPS64BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004122// MIPS64BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004123// MIPS64BE:#define __INT32_FMTd__ "d"
4124// MIPS64BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004125// MIPS64BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004126// MIPS64BE:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004127// MIPS64BE:#define __INT64_C_SUFFIX__ L
4128// MIPS64BE:#define __INT64_FMTd__ "ld"
4129// MIPS64BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004130// MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004131// MIPS64BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004132// MIPS64BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004133// MIPS64BE:#define __INT8_FMTd__ "hhd"
4134// MIPS64BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004135// MIPS64BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004136// MIPS64BE:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004137// MIPS64BE:#define __INTMAX_C_SUFFIX__ L
4138// MIPS64BE:#define __INTMAX_FMTd__ "ld"
4139// MIPS64BE:#define __INTMAX_FMTi__ "li"
4140// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
4141// MIPS64BE:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004142// MIPS64BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004143// MIPS64BE:#define __INTPTR_FMTd__ "ld"
4144// MIPS64BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004145// MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004146// MIPS64BE:#define __INTPTR_TYPE__ long int
4147// MIPS64BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004148// MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
4149// MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004150// MIPS64BE:#define __INT_FAST16_MAX__ 32767
4151// MIPS64BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004152// MIPS64BE:#define __INT_FAST32_FMTd__ "d"
4153// MIPS64BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004154// MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
4155// MIPS64BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004156// MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
4157// MIPS64BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004158// MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
4159// MIPS64BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004160// MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
4161// MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004162// MIPS64BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004163// MIPS64BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004164// MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
4165// MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004166// MIPS64BE:#define __INT_LEAST16_MAX__ 32767
4167// MIPS64BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004168// MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
4169// MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004170// MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
4171// MIPS64BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004172// MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
4173// MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004174// MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
4175// MIPS64BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004176// MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
4177// MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004178// MIPS64BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004179// MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004180// MIPS64BE:#define __INT_MAX__ 2147483647
4181// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4182// MIPS64BE:#define __LDBL_DIG__ 33
4183// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4184// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
4185// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
4186// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
4187// MIPS64BE:#define __LDBL_MANT_DIG__ 113
4188// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
4189// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
4190// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4191// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
4192// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
4193// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4194// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
4195// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004196// MIPS64BE:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004197// MIPS64BE:#define __MIPSEB 1
4198// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004199// MIPS64BE:#define __POINTER_WIDTH__ 64
4200// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
4201// MIPS64BE:#define __PTRDIFF_TYPE__ long int
4202// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004203// MIPS64BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004204// MIPS64BE:#define __SCHAR_MAX__ 127
4205// MIPS64BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004206// MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004207// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
4208// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
4209// MIPS64BE:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004210// MIPS64BE:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004211// MIPS64BE:#define __SIZEOF_INT__ 4
4212// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
4213// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
4214// MIPS64BE:#define __SIZEOF_LONG__ 8
4215// MIPS64BE:#define __SIZEOF_POINTER__ 8
4216// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
4217// MIPS64BE:#define __SIZEOF_SHORT__ 2
4218// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
4219// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
4220// MIPS64BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004221// MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004222// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
4223// MIPS64BE:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00004224// MIPS64BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00004225// MIPS64BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004226// MIPS64BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004227// MIPS64BE:#define __UINT16_TYPE__ unsigned short
4228// MIPS64BE:#define __UINT32_C_SUFFIX__ U
4229// MIPS64BE:#define __UINT32_MAX__ 4294967295U
4230// MIPS64BE:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004231// MIPS64BE:#define __UINT64_C_SUFFIX__ UL
4232// MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
4233// MIPS64BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004234// MIPS64BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004235// MIPS64BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004236// MIPS64BE:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004237// MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
4238// MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
4239// MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004240// MIPS64BE:#define __UINTMAX_WIDTH__ 64
4241// MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
4242// MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
4243// MIPS64BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004244// MIPS64BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004245// MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
4246// MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
4247// MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
4248// MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4249// MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004250// MIPS64BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004251// MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004252// MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004253// MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
4254// MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
4255// MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
4256// MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4257// MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004258// MIPS64BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004259// MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004260// MIPS64BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004261// MIPS64BE:#define __WCHAR_MAX__ 2147483647
4262// MIPS64BE:#define __WCHAR_TYPE__ int
4263// MIPS64BE:#define __WCHAR_WIDTH__ 32
4264// MIPS64BE:#define __WINT_TYPE__ int
4265// MIPS64BE:#define __WINT_WIDTH__ 32
4266// MIPS64BE:#define __clang__ 1
4267// MIPS64BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004268// MIPS64BE:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004269// MIPS64BE:#define __mips64 1
4270// MIPS64BE:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004271// MIPS64BE:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004272// MIPS64BE:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004273// MIPS64BE:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004274// MIPS64BE:#define __mips_hard_float 1
4275// MIPS64BE:#define __mips_n64 1
4276// MIPS64BE:#define _mips 1
4277// MIPS64BE:#define mips 1
4278//
James Y Knightc97efa42016-02-11 16:51:29 +00004279// 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 +00004280//
4281// MIPS64EL:#define MIPSEL 1
4282// MIPS64EL:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004283// MIPS64EL:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004284// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004285// MIPS64EL:#define _MIPS_ARCH "mips64r2"
4286// MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004287// MIPS64EL:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004288// MIPS64EL:#define _MIPS_SIM _ABI64
4289// MIPS64EL:#define _MIPS_SZINT 32
4290// MIPS64EL:#define _MIPS_SZLONG 64
4291// MIPS64EL:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004292// MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004293// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004294// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
4295// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
4296// MIPS64EL:#define __CHAR_BIT__ 8
4297// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
4298// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4299// MIPS64EL:#define __DBL_DIG__ 15
4300// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
4301// MIPS64EL:#define __DBL_HAS_DENORM__ 1
4302// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
4303// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
4304// MIPS64EL:#define __DBL_MANT_DIG__ 53
4305// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
4306// MIPS64EL:#define __DBL_MAX_EXP__ 1024
4307// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
4308// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
4309// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
4310// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004311// MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004312// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4313// MIPS64EL:#define __FLT_DIG__ 6
4314// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
4315// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
4316// MIPS64EL:#define __FLT_HAS_DENORM__ 1
4317// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
4318// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
4319// MIPS64EL:#define __FLT_MANT_DIG__ 24
4320// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
4321// MIPS64EL:#define __FLT_MAX_EXP__ 128
4322// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
4323// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
4324// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
4325// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
4326// MIPS64EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004327// MIPS64EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004328// MIPS64EL:#define __INT16_FMTd__ "hd"
4329// MIPS64EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004330// MIPS64EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004331// MIPS64EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004332// MIPS64EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004333// MIPS64EL:#define __INT32_FMTd__ "d"
4334// MIPS64EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004335// MIPS64EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004336// MIPS64EL:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004337// MIPS64EL:#define __INT64_C_SUFFIX__ L
4338// MIPS64EL:#define __INT64_FMTd__ "ld"
4339// MIPS64EL:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004340// MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004341// MIPS64EL:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004342// MIPS64EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004343// MIPS64EL:#define __INT8_FMTd__ "hhd"
4344// MIPS64EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004345// MIPS64EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004346// MIPS64EL:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004347// MIPS64EL:#define __INTMAX_C_SUFFIX__ L
4348// MIPS64EL:#define __INTMAX_FMTd__ "ld"
4349// MIPS64EL:#define __INTMAX_FMTi__ "li"
4350// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
4351// MIPS64EL:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004352// MIPS64EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004353// MIPS64EL:#define __INTPTR_FMTd__ "ld"
4354// MIPS64EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004355// MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004356// MIPS64EL:#define __INTPTR_TYPE__ long int
4357// MIPS64EL:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004358// MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
4359// MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004360// MIPS64EL:#define __INT_FAST16_MAX__ 32767
4361// MIPS64EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004362// MIPS64EL:#define __INT_FAST32_FMTd__ "d"
4363// MIPS64EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004364// MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
4365// MIPS64EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004366// MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
4367// MIPS64EL:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004368// MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
4369// MIPS64EL:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004370// MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
4371// MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004372// MIPS64EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004373// MIPS64EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004374// MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
4375// MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004376// MIPS64EL:#define __INT_LEAST16_MAX__ 32767
4377// MIPS64EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004378// MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
4379// MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004380// MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
4381// MIPS64EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004382// MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
4383// MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004384// MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
4385// MIPS64EL:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004386// MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
4387// MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004388// MIPS64EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004389// MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004390// MIPS64EL:#define __INT_MAX__ 2147483647
4391// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4392// MIPS64EL:#define __LDBL_DIG__ 33
4393// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4394// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
4395// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
4396// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
4397// MIPS64EL:#define __LDBL_MANT_DIG__ 113
4398// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
4399// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
4400// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4401// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
4402// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
4403// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
Robert Lytton2c942c62014-03-10 12:06:29 +00004404// MIPS64EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004405// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
4406// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004407// MIPS64EL:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004408// MIPS64EL:#define __MIPSEL 1
4409// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004410// MIPS64EL:#define __POINTER_WIDTH__ 64
4411// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
4412// MIPS64EL:#define __PTRDIFF_TYPE__ long int
4413// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004414// MIPS64EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004415// MIPS64EL:#define __SCHAR_MAX__ 127
4416// MIPS64EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004417// MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004418// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
4419// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
4420// MIPS64EL:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004421// MIPS64EL:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004422// MIPS64EL:#define __SIZEOF_INT__ 4
4423// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
4424// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
4425// MIPS64EL:#define __SIZEOF_LONG__ 8
4426// MIPS64EL:#define __SIZEOF_POINTER__ 8
4427// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
4428// MIPS64EL:#define __SIZEOF_SHORT__ 2
4429// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
4430// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
4431// MIPS64EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004432// MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004433// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
4434// MIPS64EL:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004435// MIPS64EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004436// MIPS64EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004437// MIPS64EL:#define __UINT16_TYPE__ unsigned short
4438// MIPS64EL:#define __UINT32_C_SUFFIX__ U
4439// MIPS64EL:#define __UINT32_MAX__ 4294967295U
4440// MIPS64EL:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004441// MIPS64EL:#define __UINT64_C_SUFFIX__ UL
4442// MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
4443// MIPS64EL:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004444// MIPS64EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004445// MIPS64EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004446// MIPS64EL:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004447// MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
4448// MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
4449// MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004450// MIPS64EL:#define __UINTMAX_WIDTH__ 64
4451// MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
4452// MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
4453// MIPS64EL:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004454// MIPS64EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004455// MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
4456// MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
4457// MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
4458// MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4459// MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004460// MIPS64EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004461// MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004462// MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004463// MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
4464// MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
4465// MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
4466// MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4467// MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004468// MIPS64EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004469// MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004470// MIPS64EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004471// MIPS64EL:#define __WCHAR_MAX__ 2147483647
4472// MIPS64EL:#define __WCHAR_TYPE__ int
4473// MIPS64EL:#define __WCHAR_WIDTH__ 32
4474// MIPS64EL:#define __WINT_TYPE__ int
4475// MIPS64EL:#define __WINT_WIDTH__ 32
4476// MIPS64EL:#define __clang__ 1
4477// MIPS64EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004478// MIPS64EL:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004479// MIPS64EL:#define __mips64 1
4480// MIPS64EL:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004481// MIPS64EL:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004482// MIPS64EL:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004483// MIPS64EL:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004484// MIPS64EL:#define __mips_hard_float 1
4485// MIPS64EL:#define __mips_n64 1
4486// MIPS64EL:#define _mips 1
4487// MIPS64EL:#define mips 1
4488//
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004489// Check MIPS arch and isa macros
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004490//
4491// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4492// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004493// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004494//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004495// MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
4496// MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004497// MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4498// MIPS-ARCH-DEF32:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004499//
4500// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
4501// RUN: -target-cpu mips32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004502// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004503//
4504// MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
4505// MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004506// MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4507// MIPS-ARCH-32:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004508//
4509// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4510// RUN: -target-cpu mips32r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004511// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004512//
4513// MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
4514// MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004515// MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
4516// MIPS-ARCH-32R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004517//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004518// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004519// RUN: -target-cpu mips32r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004520// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004521//
4522// MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
4523// MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
4524// MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
4525// MIPS-ARCH-32R3:#define __mips_isa_rev 3
4526//
4527// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4528// RUN: -target-cpu mips32r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004529// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004530//
4531// MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
4532// MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
4533// MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
4534// MIPS-ARCH-32R5:#define __mips_isa_rev 5
4535//
4536// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004537// RUN: -target-cpu mips32r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004538// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004539//
4540// MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
4541// MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
4542// MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
4543// MIPS-ARCH-32R6:#define __mips_isa_rev 6
4544//
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004545// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4546// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004547// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004548//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004549// MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
4550// MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004551// MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4552// MIPS-ARCH-DEF64:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004553//
4554// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4555// RUN: -target-cpu mips64 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004556// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004557//
4558// MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
4559// MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004560// MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4561// MIPS-ARCH-64:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004562//
4563// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4564// RUN: -target-cpu mips64r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004565// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004566//
4567// MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
4568// MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004569// MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
4570// MIPS-ARCH-64R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004571//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004572// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004573// RUN: -target-cpu mips64r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004574// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004575//
4576// MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
4577// MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
4578// MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
4579// MIPS-ARCH-64R3:#define __mips_isa_rev 3
4580//
4581// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4582// RUN: -target-cpu mips64r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004583// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004584//
4585// MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
4586// MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
4587// MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
4588// MIPS-ARCH-64R5:#define __mips_isa_rev 5
4589//
4590// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004591// RUN: -target-cpu mips64r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004592// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004593//
4594// MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
4595// MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
4596// MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
4597// MIPS-ARCH-64R6:#define __mips_isa_rev 6
4598//
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004599// Check MIPS float ABI macros
4600//
4601// RUN: %clang_cc1 -E -dM -ffreestanding \
4602// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004603// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004604// MIPS-FABI-HARD:#define __mips_hard_float 1
4605//
4606// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
4607// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004608// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004609// MIPS-FABI-SOFT:#define __mips_soft_float 1
4610//
4611// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
4612// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004613// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyand3d173d2012-06-05 13:06:56 +00004614// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004615// MIPS-FABI-SINGLE:#define __mips_single_float 1
4616//
Simon Atanasyan16071912013-04-14 14:07:30 +00004617// RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
4618// RUN: -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004619// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
Simon Atanasyan16071912013-04-14 14:07:30 +00004620// MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
4621// MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
4622//
Simon Atanasyan72244b62012-07-05 16:06:06 +00004623// Check MIPS features macros
4624//
4625// RUN: %clang_cc1 -target-feature +mips16 \
4626// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004627// RUN: | FileCheck -match-full-lines -check-prefix MIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004628// MIPS16:#define __mips16 1
4629//
4630// RUN: %clang_cc1 -target-feature -mips16 \
4631// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004632// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004633// NOMIPS16-NOT:#define __mips16 1
4634//
Simon Atanasyan60777612013-04-14 14:07:51 +00004635// RUN: %clang_cc1 -target-feature +micromips \
4636// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004637// RUN: | FileCheck -match-full-lines -check-prefix MICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004638// MICROMIPS:#define __mips_micromips 1
4639//
4640// RUN: %clang_cc1 -target-feature -micromips \
4641// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004642// RUN: | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004643// NOMICROMIPS-NOT:#define __mips_micromips 1
4644//
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004645// RUN: %clang_cc1 -target-feature +dsp \
4646// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004647// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004648// MIPS-DSP:#define __mips_dsp 1
4649// MIPS-DSP:#define __mips_dsp_rev 1
4650// MIPS-DSP-NOT:#define __mips_dspr2 1
4651//
4652// RUN: %clang_cc1 -target-feature +dspr2 \
4653// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004654// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004655// MIPS-DSPR2:#define __mips_dsp 1
4656// MIPS-DSPR2:#define __mips_dsp_rev 2
4657// MIPS-DSPR2:#define __mips_dspr2 1
4658//
Jack Carter44ff1e52013-08-12 17:20:29 +00004659// RUN: %clang_cc1 -target-feature +msa \
4660// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004661// RUN: | FileCheck -match-full-lines -check-prefix MIPS-MSA %s
Jack Carter44ff1e52013-08-12 17:20:29 +00004662// MIPS-MSA:#define __mips_msa 1
4663//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004664// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004665// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004666// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004667// MIPS-NAN2008:#define __mips_nan2008 1
4668//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004669// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
4670// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004671// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS-NAN2008 %s
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004672// NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
4673//
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004674// RUN: %clang_cc1 -target-feature -fp64 \
4675// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004676// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004677// MIPS32-MFP32:#define _MIPS_FPSET 16
4678// MIPS32-MFP32:#define __mips_fpr 32
4679//
4680// RUN: %clang_cc1 -target-feature +fp64 \
4681// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004682// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004683// MIPS32-MFP64:#define _MIPS_FPSET 32
4684// MIPS32-MFP64:#define __mips_fpr 64
4685//
4686// RUN: %clang_cc1 -target-feature +single-float \
4687// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004688// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004689// MIPS32-MFP32SF:#define _MIPS_FPSET 32
4690// MIPS32-MFP32SF:#define __mips_fpr 32
4691//
4692// RUN: %clang_cc1 -target-feature +fp64 \
4693// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004694// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004695// MIPS64-MFP64:#define _MIPS_FPSET 32
4696// MIPS64-MFP64:#define __mips_fpr 64
4697//
4698// RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
4699// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004700// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004701// MIPS64-NOMFP64:#define _MIPS_FPSET 32
4702// MIPS64-NOMFP64:#define __mips_fpr 32
4703//
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004704// RUN: %clang_cc1 -target-cpu mips32r6 \
4705// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004706// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004707// RUN: %clang_cc1 -target-cpu mips64r6 \
4708// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004709// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004710// MIPS-XXR6:#define _MIPS_FPSET 32
4711// MIPS-XXR6:#define __mips_fpr 64
4712// MIPS-XXR6:#define __mips_nan2008 1
4713//
Simon Dardisdf827a72017-02-21 16:01:00 +00004714// RUN: %clang_cc1 -target-cpu mips32 \
4715// RUN: -E -dM -triple=mips-unknown-netbsd -mrelocation-model pic < /dev/null \
4716// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-NETBSD %s
4717// MIPS-ABICALLS-NETBSD-NOT: #define __ABICALLS__ 1
4718// MIPS-ABICALLS-NETBSD: #define __mips_abicalls 1
4719//
4720// RUN: %clang_cc1 -target-cpu mips64 \
4721// RUN: -E -dM -triple=mips64-unknown-netbsd -mrelocation-model pic < \
4722// RUN: /dev/null | FileCheck -match-full-lines \
4723// RUN: -check-prefix MIPS-ABICALLS-NETBSD64 %s
4724// MIPS-ABICALLS-NETBSD64-NOT: #define __ABICALLS__ 1
4725// MIPS-ABICALLS-NETBSD64: #define __mips_abicalls 1
4726//
4727// RUN: %clang_cc1 -target-cpu mips32 \
4728// RUN: -E -dM -triple=mips-unknown-freebsd -mrelocation-model pic < /dev/null \
4729// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-FREEBSD %s
4730// MIPS-ABICALLS-FREEBSD: #define __ABICALLS__ 1
4731// MIPS-ABICALLS-FREEBSD: #define __mips_abicalls 1
4732//
4733// RUN: %clang_cc1 -target-cpu mips64 \
4734// RUN: -E -dM -triple=mips64-unknown-freebsd -mrelocation-model pic < \
4735// RUN: /dev/null | FileCheck -match-full-lines \
4736// RUN: -check-prefix MIPS-ABICALLS-FREEBSD64 %s
4737// MIPS-ABICALLS-FREEBSD64: #define __ABICALLS__ 1
4738// MIPS-ABICALLS-FREEBSD64: #define __mips_abicalls 1
4739//
4740// RUN: %clang_cc1 -target-cpu mips32 \
4741// RUN: -E -dM -triple=mips-unknown-openbsd -mrelocation-model pic < /dev/null \
4742// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-OPENBSD %s
4743// MIPS-ABICALLS-OPENBSD: #define __ABICALLS__ 1
4744// MIPS-ABICALLS-OPENBSD: #define __mips_abicalls 1
4745//
4746// RUN: %clang_cc1 -target-cpu mips64 \
4747// RUN: -E -dM -triple=mips64-unknown-openbsd -mrelocation-model pic < \
4748// RUN: /dev/null | FileCheck -match-full-lines \
4749// RUN: -check-prefix MIPS-ABICALLS-OPENBSD64 %s
4750// MIPS-ABICALLS-OPENBSD64: #define __ABICALLS__ 1
4751// MIPS-ABICALLS-OPENBSD64: #define __mips_abicalls 1
4752//
James Y Knightc97efa42016-02-11 16:51:29 +00004753// 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 +00004754// 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 +00004755//
4756// MSP430:#define MSP430 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004757// MSP430-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004758// MSP430:#define __BIGGEST_ALIGNMENT__ 2
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004759// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00004760// MSP430:#define __CHAR16_TYPE__ unsigned short
4761// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00004762// MSP430:#define __CHAR_BIT__ 8
4763// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4764// MSP430:#define __DBL_DIG__ 15
4765// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
4766// MSP430:#define __DBL_HAS_DENORM__ 1
4767// MSP430:#define __DBL_HAS_INFINITY__ 1
4768// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
4769// MSP430:#define __DBL_MANT_DIG__ 53
4770// MSP430:#define __DBL_MAX_10_EXP__ 308
4771// MSP430:#define __DBL_MAX_EXP__ 1024
4772// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
4773// MSP430:#define __DBL_MIN_10_EXP__ (-307)
4774// MSP430:#define __DBL_MIN_EXP__ (-1021)
4775// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004776// MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00004777// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4778// MSP430:#define __FLT_DIG__ 6
4779// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
4780// MSP430:#define __FLT_EVAL_METHOD__ 0
4781// MSP430:#define __FLT_HAS_DENORM__ 1
4782// MSP430:#define __FLT_HAS_INFINITY__ 1
4783// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
4784// MSP430:#define __FLT_MANT_DIG__ 24
4785// MSP430:#define __FLT_MAX_10_EXP__ 38
4786// MSP430:#define __FLT_MAX_EXP__ 128
4787// MSP430:#define __FLT_MAX__ 3.40282347e+38F
4788// MSP430:#define __FLT_MIN_10_EXP__ (-37)
4789// MSP430:#define __FLT_MIN_EXP__ (-125)
4790// MSP430:#define __FLT_MIN__ 1.17549435e-38F
4791// MSP430:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004792// MSP430:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004793// MSP430:#define __INT16_FMTd__ "hd"
4794// MSP430:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004795// MSP430:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004796// MSP430:#define __INT16_TYPE__ short
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00004797// MSP430:#define __INT32_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004798// MSP430:#define __INT32_FMTd__ "ld"
4799// MSP430:#define __INT32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004800// MSP430:#define __INT32_MAX__ 2147483647L
Chris Lattner55c98772009-11-12 08:08:27 +00004801// MSP430:#define __INT32_TYPE__ long int
JF Bastienab8d0a02014-06-25 01:31:33 +00004802// MSP430:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004803// MSP430:#define __INT64_FMTd__ "lld"
4804// MSP430:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004805// MSP430:#define __INT64_MAX__ 9223372036854775807LL
4806// MSP430:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004807// MSP430:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004808// MSP430:#define __INT8_FMTd__ "hhd"
4809// MSP430:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004810// MSP430:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004811// MSP430:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004812// MSP430:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004813// MSP430:#define __INTMAX_FMTd__ "lld"
4814// MSP430:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikovef412902013-07-01 19:42:40 +00004815// MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
4816// MSP430:#define __INTMAX_TYPE__ long long int
4817// MSP430:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004818// MSP430:#define __INTPTR_FMTd__ "d"
4819// MSP430:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004820// MSP430:#define __INTPTR_MAX__ 32767
Anton Korobeynikovef412902013-07-01 19:42:40 +00004821// MSP430:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00004822// MSP430:#define __INTPTR_WIDTH__ 16
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004823// MSP430:#define __INT_FAST16_FMTd__ "hd"
4824// MSP430:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004825// MSP430:#define __INT_FAST16_MAX__ 32767
4826// MSP430:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004827// MSP430:#define __INT_FAST32_FMTd__ "ld"
4828// MSP430:#define __INT_FAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004829// MSP430:#define __INT_FAST32_MAX__ 2147483647L
4830// MSP430:#define __INT_FAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004831// MSP430:#define __INT_FAST64_FMTd__ "lld"
4832// MSP430:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004833// MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
4834// MSP430:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004835// MSP430:#define __INT_FAST8_FMTd__ "hhd"
4836// MSP430:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004837// MSP430:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004838// MSP430:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004839// MSP430:#define __INT_LEAST16_FMTd__ "hd"
4840// MSP430:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004841// MSP430:#define __INT_LEAST16_MAX__ 32767
4842// MSP430:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004843// MSP430:#define __INT_LEAST32_FMTd__ "ld"
4844// MSP430:#define __INT_LEAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004845// MSP430:#define __INT_LEAST32_MAX__ 2147483647L
4846// MSP430:#define __INT_LEAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004847// MSP430:#define __INT_LEAST64_FMTd__ "lld"
4848// MSP430:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004849// MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
4850// MSP430:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004851// MSP430:#define __INT_LEAST8_FMTd__ "hhd"
4852// MSP430:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004853// MSP430:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004854// MSP430:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00004855// MSP430:#define __INT_MAX__ 32767
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004856// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00004857// MSP430:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004858// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00004859// MSP430:#define __LDBL_HAS_DENORM__ 1
4860// MSP430:#define __LDBL_HAS_INFINITY__ 1
4861// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
4862// MSP430:#define __LDBL_MANT_DIG__ 53
4863// MSP430:#define __LDBL_MAX_10_EXP__ 308
4864// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004865// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00004866// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
4867// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004868// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004869// MSP430:#define __LITTLE_ENDIAN__ 1
Anton Korobeynikov485810e2010-01-14 21:36:52 +00004870// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00004871// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004872// MSP430-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00004873// MSP430:#define __MSP430__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00004874// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck9b25f782009-11-19 13:18:59 +00004875// MSP430:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00004876// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004877// MSP430:#define __SCHAR_MAX__ 127
4878// MSP430:#define __SHRT_MAX__ 32767
James Y Knightc97efa42016-02-11 16:51:29 +00004879// MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
Ken Dyckadc85112009-11-22 15:41:04 +00004880// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00004881// MSP430:#define __SIZEOF_DOUBLE__ 8
4882// MSP430:#define __SIZEOF_FLOAT__ 4
4883// MSP430:#define __SIZEOF_INT__ 2
4884// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
4885// MSP430:#define __SIZEOF_LONG_LONG__ 8
4886// MSP430:#define __SIZEOF_LONG__ 4
4887// MSP430:#define __SIZEOF_POINTER__ 2
4888// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
4889// MSP430:#define __SIZEOF_SHORT__ 2
4890// MSP430:#define __SIZEOF_SIZE_T__ 2
4891// MSP430:#define __SIZEOF_WCHAR_T__ 2
4892// MSP430:#define __SIZEOF_WINT_T__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004893// MSP430:#define __SIZE_MAX__ 65535U
Chris Lattnere963d092009-10-29 04:55:36 +00004894// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00004895// MSP430:#define __SIZE_WIDTH__ 16
Richard Smith59139022016-09-30 22:41:36 +00004896// MSP430-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
JF Bastienab8d0a02014-06-25 01:31:33 +00004897// MSP430:#define __UINT16_C_SUFFIX__ U
James Y Knightc97efa42016-02-11 16:51:29 +00004898// MSP430:#define __UINT16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004899// MSP430:#define __UINT16_TYPE__ unsigned short
4900// MSP430:#define __UINT32_C_SUFFIX__ UL
4901// MSP430:#define __UINT32_MAX__ 4294967295UL
4902// MSP430:#define __UINT32_TYPE__ long unsigned int
4903// MSP430:#define __UINT64_C_SUFFIX__ ULL
4904// MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
4905// MSP430:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004906// MSP430:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004907// MSP430:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004908// MSP430:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004909// MSP430:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00004910// MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikovef412902013-07-01 19:42:40 +00004911// MSP430:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004912// MSP430:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004913// MSP430:#define __UINTPTR_MAX__ 65535U
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00004914// MSP430:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004915// MSP430:#define __UINTPTR_WIDTH__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00004916// MSP430:#define __UINT_FAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004917// MSP430:#define __UINT_FAST16_TYPE__ unsigned short
4918// MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
4919// MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
4920// MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
4921// MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004922// MSP430:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004923// MSP430:#define __UINT_FAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00004924// MSP430:#define __UINT_LEAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004925// MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
4926// MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
4927// MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
4928// MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4929// MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004930// MSP430:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004931// MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004932// MSP430:#define __USER_LABEL_PREFIX__
Chris Lattner0fb5bbd2009-11-12 08:04:33 +00004933// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004934// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00004935// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004936// MSP430:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00004937// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004938// MSP430:#define __clang__ 1
4939//
James Y Knightc97efa42016-02-11 16:51:29 +00004940// 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 +00004941// 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 +00004942//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004943// NVPTX32-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004944// NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004945// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004946// NVPTX32:#define __CHAR16_TYPE__ unsigned short
4947// NVPTX32:#define __CHAR32_TYPE__ unsigned int
4948// NVPTX32:#define __CHAR_BIT__ 8
4949// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
4950// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4951// NVPTX32:#define __DBL_DIG__ 15
4952// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
4953// NVPTX32:#define __DBL_HAS_DENORM__ 1
4954// NVPTX32:#define __DBL_HAS_INFINITY__ 1
4955// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
4956// NVPTX32:#define __DBL_MANT_DIG__ 53
4957// NVPTX32:#define __DBL_MAX_10_EXP__ 308
4958// NVPTX32:#define __DBL_MAX_EXP__ 1024
4959// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
4960// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
4961// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
4962// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004963// NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004964// NVPTX32:#define __FINITE_MATH_ONLY__ 0
4965// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4966// NVPTX32:#define __FLT_DIG__ 6
4967// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
4968// NVPTX32:#define __FLT_EVAL_METHOD__ 0
4969// NVPTX32:#define __FLT_HAS_DENORM__ 1
4970// NVPTX32:#define __FLT_HAS_INFINITY__ 1
4971// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
4972// NVPTX32:#define __FLT_MANT_DIG__ 24
4973// NVPTX32:#define __FLT_MAX_10_EXP__ 38
4974// NVPTX32:#define __FLT_MAX_EXP__ 128
4975// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
4976// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
4977// NVPTX32:#define __FLT_MIN_EXP__ (-125)
4978// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
4979// NVPTX32:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004980// NVPTX32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004981// NVPTX32:#define __INT16_FMTd__ "hd"
4982// NVPTX32:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004983// NVPTX32:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004984// NVPTX32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004985// NVPTX32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004986// NVPTX32:#define __INT32_FMTd__ "d"
4987// NVPTX32:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004988// NVPTX32:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004989// NVPTX32:#define __INT32_TYPE__ int
4990// NVPTX32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004991// NVPTX32:#define __INT64_FMTd__ "lld"
4992// NVPTX32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004993// NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004994// NVPTX32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004995// NVPTX32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004996// NVPTX32:#define __INT8_FMTd__ "hhd"
4997// NVPTX32:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004998// NVPTX32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004999// NVPTX32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005000// NVPTX32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005001// NVPTX32:#define __INTMAX_FMTd__ "lld"
5002// NVPTX32:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005003// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
5004// NVPTX32:#define __INTMAX_TYPE__ long long int
5005// NVPTX32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005006// NVPTX32:#define __INTPTR_FMTd__ "d"
5007// NVPTX32:#define __INTPTR_FMTi__ "i"
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005008// NVPTX32:#define __INTPTR_MAX__ 2147483647
5009// NVPTX32:#define __INTPTR_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005010// NVPTX32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005011// NVPTX32:#define __INT_FAST16_FMTd__ "hd"
5012// NVPTX32:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005013// NVPTX32:#define __INT_FAST16_MAX__ 32767
5014// NVPTX32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005015// NVPTX32:#define __INT_FAST32_FMTd__ "d"
5016// NVPTX32:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005017// NVPTX32:#define __INT_FAST32_MAX__ 2147483647
5018// NVPTX32:#define __INT_FAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00005019// NVPTX32:#define __INT_FAST64_FMTd__ "lld"
5020// NVPTX32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005021// NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005022// NVPTX32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005023// NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
5024// NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005025// NVPTX32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005026// NVPTX32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005027// NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
5028// NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005029// NVPTX32:#define __INT_LEAST16_MAX__ 32767
5030// NVPTX32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005031// NVPTX32:#define __INT_LEAST32_FMTd__ "d"
5032// NVPTX32:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005033// NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
5034// NVPTX32:#define __INT_LEAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00005035// NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
5036// NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005037// NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005038// NVPTX32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005039// NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
5040// NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005041// NVPTX32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005042// NVPTX32:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005043// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005044// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005045// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005046// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005047// NVPTX32:#define __LDBL_HAS_DENORM__ 1
5048// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
5049// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
5050// NVPTX32:#define __LDBL_MANT_DIG__ 53
5051// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
5052// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005053// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005054// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
5055// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005056// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005057// NVPTX32:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005058// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005059// NVPTX32:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005060// NVPTX32-NOT:#define __LP64__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005061// NVPTX32:#define __NVPTX__ 1
5062// NVPTX32:#define __POINTER_WIDTH__ 32
5063// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005064// NVPTX32:#define __PTRDIFF_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005065// NVPTX32:#define __PTRDIFF_WIDTH__ 32
5066// NVPTX32:#define __PTX__ 1
5067// NVPTX32:#define __SCHAR_MAX__ 127
5068// NVPTX32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005069// NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005070// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
5071// NVPTX32:#define __SIZEOF_DOUBLE__ 8
5072// NVPTX32:#define __SIZEOF_FLOAT__ 4
5073// NVPTX32:#define __SIZEOF_INT__ 4
5074// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
5075// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
Artem Belevich236cfdc2015-09-28 22:54:08 +00005076// NVPTX32:#define __SIZEOF_LONG__ 4
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005077// NVPTX32:#define __SIZEOF_POINTER__ 4
5078// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
5079// NVPTX32:#define __SIZEOF_SHORT__ 2
5080// NVPTX32:#define __SIZEOF_SIZE_T__ 4
5081// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
5082// NVPTX32:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005083// NVPTX32:#define __SIZE_MAX__ 4294967295U
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005084// NVPTX32:#define __SIZE_TYPE__ unsigned int
5085// NVPTX32:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005086// NVPTX32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00005087// NVPTX32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005088// NVPTX32:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005089// NVPTX32:#define __UINT16_TYPE__ unsigned short
5090// NVPTX32:#define __UINT32_C_SUFFIX__ U
5091// NVPTX32:#define __UINT32_MAX__ 4294967295U
5092// NVPTX32:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005093// NVPTX32:#define __UINT64_C_SUFFIX__ ULL
5094// NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
5095// NVPTX32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005096// NVPTX32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005097// NVPTX32:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005098// NVPTX32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005099// NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005100// NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005101// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005102// NVPTX32:#define __UINTMAX_WIDTH__ 64
5103// NVPTX32:#define __UINTPTR_MAX__ 4294967295U
5104// NVPTX32:#define __UINTPTR_TYPE__ unsigned int
5105// NVPTX32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005106// NVPTX32:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005107// NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
5108// NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
5109// NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005110// NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005111// NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005112// NVPTX32:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005113// NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005114// NVPTX32:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005115// NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
5116// NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
5117// NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005118// NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005119// NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005120// NVPTX32:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005121// NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005122// NVPTX32:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005123// NVPTX32:#define __WCHAR_MAX__ 2147483647
5124// NVPTX32:#define __WCHAR_TYPE__ int
5125// NVPTX32:#define __WCHAR_WIDTH__ 32
5126// NVPTX32:#define __WINT_TYPE__ int
5127// NVPTX32:#define __WINT_WIDTH__ 32
5128//
James Y Knightc97efa42016-02-11 16:51:29 +00005129// 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 +00005130// 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 +00005131//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005132// NVPTX64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005133// NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005134// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005135// NVPTX64:#define __CHAR16_TYPE__ unsigned short
5136// NVPTX64:#define __CHAR32_TYPE__ unsigned int
5137// NVPTX64:#define __CHAR_BIT__ 8
5138// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
5139// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5140// NVPTX64:#define __DBL_DIG__ 15
5141// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5142// NVPTX64:#define __DBL_HAS_DENORM__ 1
5143// NVPTX64:#define __DBL_HAS_INFINITY__ 1
5144// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
5145// NVPTX64:#define __DBL_MANT_DIG__ 53
5146// NVPTX64:#define __DBL_MAX_10_EXP__ 308
5147// NVPTX64:#define __DBL_MAX_EXP__ 1024
5148// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
5149// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
5150// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
5151// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005152// NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005153// NVPTX64:#define __FINITE_MATH_ONLY__ 0
5154// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5155// NVPTX64:#define __FLT_DIG__ 6
5156// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
5157// NVPTX64:#define __FLT_EVAL_METHOD__ 0
5158// NVPTX64:#define __FLT_HAS_DENORM__ 1
5159// NVPTX64:#define __FLT_HAS_INFINITY__ 1
5160// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
5161// NVPTX64:#define __FLT_MANT_DIG__ 24
5162// NVPTX64:#define __FLT_MAX_10_EXP__ 38
5163// NVPTX64:#define __FLT_MAX_EXP__ 128
5164// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
5165// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
5166// NVPTX64:#define __FLT_MIN_EXP__ (-125)
5167// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
5168// NVPTX64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005169// NVPTX64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005170// NVPTX64:#define __INT16_FMTd__ "hd"
5171// NVPTX64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005172// NVPTX64:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005173// NVPTX64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005174// NVPTX64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005175// NVPTX64:#define __INT32_FMTd__ "d"
5176// NVPTX64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005177// NVPTX64:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005178// NVPTX64:#define __INT32_TYPE__ int
5179// NVPTX64:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005180// NVPTX64:#define __INT64_FMTd__ "lld"
5181// NVPTX64:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005182// NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005183// NVPTX64:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005184// NVPTX64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005185// NVPTX64:#define __INT8_FMTd__ "hhd"
5186// NVPTX64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005187// NVPTX64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005188// NVPTX64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005189// NVPTX64:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005190// NVPTX64:#define __INTMAX_FMTd__ "lld"
5191// NVPTX64:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005192// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
5193// NVPTX64:#define __INTMAX_TYPE__ long long int
5194// NVPTX64:#define __INTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005195// NVPTX64:#define __INTPTR_FMTd__ "ld"
5196// NVPTX64:#define __INTPTR_FMTi__ "li"
5197// NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
5198// NVPTX64:#define __INTPTR_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005199// NVPTX64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005200// NVPTX64:#define __INT_FAST16_FMTd__ "hd"
5201// NVPTX64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005202// NVPTX64:#define __INT_FAST16_MAX__ 32767
5203// NVPTX64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005204// NVPTX64:#define __INT_FAST32_FMTd__ "d"
5205// NVPTX64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005206// NVPTX64:#define __INT_FAST32_MAX__ 2147483647
5207// NVPTX64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005208// NVPTX64:#define __INT_FAST64_FMTd__ "ld"
5209// NVPTX64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005210// NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
5211// NVPTX64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005212// NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
5213// NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005214// NVPTX64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005215// NVPTX64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005216// NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
5217// NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005218// NVPTX64:#define __INT_LEAST16_MAX__ 32767
5219// NVPTX64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005220// NVPTX64:#define __INT_LEAST32_FMTd__ "d"
5221// NVPTX64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005222// NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
5223// NVPTX64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005224// NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
5225// NVPTX64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005226// NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5227// NVPTX64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005228// NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
5229// NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005230// NVPTX64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005231// NVPTX64:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005232// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005233// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005234// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005235// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005236// NVPTX64:#define __LDBL_HAS_DENORM__ 1
5237// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
5238// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
5239// NVPTX64:#define __LDBL_MANT_DIG__ 53
5240// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
5241// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005242// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005243// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
5244// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005245// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005246// NVPTX64:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005247// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5248// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005249// NVPTX64:#define __LP64__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005250// NVPTX64:#define __NVPTX__ 1
5251// NVPTX64:#define __POINTER_WIDTH__ 64
5252// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005253// NVPTX64:#define __PTRDIFF_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005254// NVPTX64:#define __PTRDIFF_WIDTH__ 64
5255// NVPTX64:#define __PTX__ 1
5256// NVPTX64:#define __SCHAR_MAX__ 127
5257// NVPTX64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005258// NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005259// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
5260// NVPTX64:#define __SIZEOF_DOUBLE__ 8
5261// NVPTX64:#define __SIZEOF_FLOAT__ 4
5262// NVPTX64:#define __SIZEOF_INT__ 4
5263// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
5264// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
5265// NVPTX64:#define __SIZEOF_LONG__ 8
5266// NVPTX64:#define __SIZEOF_POINTER__ 8
5267// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
5268// NVPTX64:#define __SIZEOF_SHORT__ 2
5269// NVPTX64:#define __SIZEOF_SIZE_T__ 8
5270// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
5271// NVPTX64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005272// NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
Eli Bendersky15f63422015-04-01 18:29:27 +00005273// NVPTX64:#define __SIZE_TYPE__ long unsigned int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005274// NVPTX64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005275// NVPTX64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00005276// NVPTX64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005277// NVPTX64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005278// NVPTX64:#define __UINT16_TYPE__ unsigned short
5279// NVPTX64:#define __UINT32_C_SUFFIX__ U
5280// NVPTX64:#define __UINT32_MAX__ 4294967295U
5281// NVPTX64:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005282// NVPTX64:#define __UINT64_C_SUFFIX__ ULL
5283// NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
5284// NVPTX64:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005285// NVPTX64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005286// NVPTX64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005287// NVPTX64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005288// NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005289// NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005290// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005291// NVPTX64:#define __UINTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005292// NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
5293// NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005294// NVPTX64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005295// NVPTX64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005296// NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
5297// NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
5298// NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
5299// NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5300// NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005301// NVPTX64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005302// NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005303// NVPTX64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005304// NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
5305// NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
5306// NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
5307// NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5308// NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005309// NVPTX64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005310// NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005311// NVPTX64:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005312// NVPTX64:#define __WCHAR_MAX__ 2147483647
5313// NVPTX64:#define __WCHAR_TYPE__ int
5314// NVPTX64:#define __WCHAR_WIDTH__ 32
5315// NVPTX64:#define __WINT_TYPE__ int
5316// NVPTX64:#define __WINT_WIDTH__ 32
5317//
James Y Knightc97efa42016-02-11 16:51:29 +00005318// 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 +00005319// 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 +00005320//
5321// PPC603E:#define _ARCH_603 1
5322// PPC603E:#define _ARCH_603E 1
5323// PPC603E:#define _ARCH_PPC 1
5324// PPC603E:#define _ARCH_PPCGR 1
5325// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005326// PPC603E-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00005327// PPC603E:#define __BIGGEST_ALIGNMENT__ 16
Hal Finkel6b984f02012-07-03 16:51:04 +00005328// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005329// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel6b984f02012-07-03 16:51:04 +00005330// PPC603E:#define __CHAR16_TYPE__ unsigned short
5331// PPC603E:#define __CHAR32_TYPE__ unsigned int
5332// PPC603E:#define __CHAR_BIT__ 8
5333// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5334// PPC603E:#define __DBL_DIG__ 15
5335// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
5336// PPC603E:#define __DBL_HAS_DENORM__ 1
5337// PPC603E:#define __DBL_HAS_INFINITY__ 1
5338// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
5339// PPC603E:#define __DBL_MANT_DIG__ 53
5340// PPC603E:#define __DBL_MAX_10_EXP__ 308
5341// PPC603E:#define __DBL_MAX_EXP__ 1024
5342// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
5343// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
5344// PPC603E:#define __DBL_MIN_EXP__ (-1021)
5345// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005346// PPC603E:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Hal Finkel6b984f02012-07-03 16:51:04 +00005347// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5348// PPC603E:#define __FLT_DIG__ 6
5349// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
5350// PPC603E:#define __FLT_EVAL_METHOD__ 0
5351// PPC603E:#define __FLT_HAS_DENORM__ 1
5352// PPC603E:#define __FLT_HAS_INFINITY__ 1
5353// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
5354// PPC603E:#define __FLT_MANT_DIG__ 24
5355// PPC603E:#define __FLT_MAX_10_EXP__ 38
5356// PPC603E:#define __FLT_MAX_EXP__ 128
5357// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
5358// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
5359// PPC603E:#define __FLT_MIN_EXP__ (-125)
5360// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
5361// PPC603E:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005362// PPC603E:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005363// PPC603E:#define __INT16_FMTd__ "hd"
5364// PPC603E:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005365// PPC603E:#define __INT16_MAX__ 32767
Hal Finkel6b984f02012-07-03 16:51:04 +00005366// PPC603E:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005367// PPC603E:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005368// PPC603E:#define __INT32_FMTd__ "d"
5369// PPC603E:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005370// PPC603E:#define __INT32_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005371// PPC603E:#define __INT32_TYPE__ int
5372// PPC603E:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005373// PPC603E:#define __INT64_FMTd__ "lld"
5374// PPC603E:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005375// PPC603E:#define __INT64_MAX__ 9223372036854775807LL
Hal Finkel6b984f02012-07-03 16:51:04 +00005376// PPC603E:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005377// PPC603E:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005378// PPC603E:#define __INT8_FMTd__ "hhd"
5379// PPC603E:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005380// PPC603E:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005381// PPC603E:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005382// PPC603E:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005383// PPC603E:#define __INTMAX_FMTd__ "lld"
5384// PPC603E:#define __INTMAX_FMTi__ "lli"
Hal Finkel6b984f02012-07-03 16:51:04 +00005385// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
5386// PPC603E:#define __INTMAX_TYPE__ long long int
5387// PPC603E:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005388// PPC603E:#define __INTPTR_FMTd__ "ld"
5389// PPC603E:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005390// PPC603E:#define __INTPTR_MAX__ 2147483647L
Hal Finkel6b984f02012-07-03 16:51:04 +00005391// PPC603E:#define __INTPTR_TYPE__ long int
5392// PPC603E:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005393// PPC603E:#define __INT_FAST16_FMTd__ "hd"
5394// PPC603E:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005395// PPC603E:#define __INT_FAST16_MAX__ 32767
5396// PPC603E:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005397// PPC603E:#define __INT_FAST32_FMTd__ "d"
5398// PPC603E:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005399// PPC603E:#define __INT_FAST32_MAX__ 2147483647
5400// PPC603E:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005401// PPC603E:#define __INT_FAST64_FMTd__ "lld"
5402// PPC603E:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005403// PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
5404// PPC603E:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005405// PPC603E:#define __INT_FAST8_FMTd__ "hhd"
5406// PPC603E:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005407// PPC603E:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005408// PPC603E:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005409// PPC603E:#define __INT_LEAST16_FMTd__ "hd"
5410// PPC603E:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005411// PPC603E:#define __INT_LEAST16_MAX__ 32767
5412// PPC603E:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005413// PPC603E:#define __INT_LEAST32_FMTd__ "d"
5414// PPC603E:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005415// PPC603E:#define __INT_LEAST32_MAX__ 2147483647
5416// PPC603E:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005417// PPC603E:#define __INT_LEAST64_FMTd__ "lld"
5418// PPC603E:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005419// PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5420// PPC603E:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005421// PPC603E:#define __INT_LEAST8_FMTd__ "hhd"
5422// PPC603E:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005423// PPC603E:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005424// PPC603E:#define __INT_LEAST8_TYPE__ signed char
Hal Finkel6b984f02012-07-03 16:51:04 +00005425// PPC603E:#define __INT_MAX__ 2147483647
5426// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5427// PPC603E:#define __LDBL_DIG__ 31
5428// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5429// PPC603E:#define __LDBL_HAS_DENORM__ 1
5430// PPC603E:#define __LDBL_HAS_INFINITY__ 1
5431// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
5432// PPC603E:#define __LDBL_MANT_DIG__ 106
5433// PPC603E:#define __LDBL_MAX_10_EXP__ 308
5434// PPC603E:#define __LDBL_MAX_EXP__ 1024
5435// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5436// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
5437// PPC603E:#define __LDBL_MIN_EXP__ (-968)
5438// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00005439// PPC603E:#define __LONGDOUBLE128 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005440// PPC603E:#define __LONG_DOUBLE_128__ 1
5441// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
5442// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005443// PPC603E-NOT:#define __LP64__
Hal Finkel6b984f02012-07-03 16:51:04 +00005444// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005445// PPC603E:#define __POINTER_WIDTH__ 32
5446// PPC603E:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005447// PPC603E:#define __PPC__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005448// PPC603E:#define __PTRDIFF_TYPE__ long int
5449// PPC603E:#define __PTRDIFF_WIDTH__ 32
5450// PPC603E:#define __REGISTER_PREFIX__
5451// PPC603E:#define __SCHAR_MAX__ 127
5452// PPC603E:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005453// PPC603E:#define __SIG_ATOMIC_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005454// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
5455// PPC603E:#define __SIZEOF_DOUBLE__ 8
5456// PPC603E:#define __SIZEOF_FLOAT__ 4
5457// PPC603E:#define __SIZEOF_INT__ 4
5458// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
5459// PPC603E:#define __SIZEOF_LONG_LONG__ 8
5460// PPC603E:#define __SIZEOF_LONG__ 4
5461// PPC603E:#define __SIZEOF_POINTER__ 4
5462// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
5463// PPC603E:#define __SIZEOF_SHORT__ 2
5464// PPC603E:#define __SIZEOF_SIZE_T__ 4
5465// PPC603E:#define __SIZEOF_WCHAR_T__ 4
5466// PPC603E:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00005467// PPC603E:#define __SIZE_MAX__ 4294967295UL
Hal Finkel6b984f02012-07-03 16:51:04 +00005468// PPC603E:#define __SIZE_TYPE__ long unsigned int
5469// PPC603E:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005470// PPC603E-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005471// PPC603E:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005472// PPC603E:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005473// PPC603E:#define __UINT16_TYPE__ unsigned short
5474// PPC603E:#define __UINT32_C_SUFFIX__ U
5475// PPC603E:#define __UINT32_MAX__ 4294967295U
5476// PPC603E:#define __UINT32_TYPE__ unsigned int
5477// PPC603E:#define __UINT64_C_SUFFIX__ ULL
5478// PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
5479// PPC603E:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005480// PPC603E:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005481// PPC603E:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005482// PPC603E:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005483// PPC603E:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005484// PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
Hal Finkel6b984f02012-07-03 16:51:04 +00005485// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005486// PPC603E:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005487// PPC603E:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005488// PPC603E:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005489// PPC603E:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005490// PPC603E:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005491// PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
5492// PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
5493// PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
5494// PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5495// PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005496// PPC603E:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005497// PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005498// PPC603E:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005499// PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
5500// PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
5501// PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
5502// PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5503// PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005504// PPC603E:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005505// PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005506// PPC603E:#define __USER_LABEL_PREFIX__
Hal Finkel6b984f02012-07-03 16:51:04 +00005507// PPC603E:#define __WCHAR_MAX__ 2147483647
5508// PPC603E:#define __WCHAR_TYPE__ int
5509// PPC603E:#define __WCHAR_WIDTH__ 32
5510// PPC603E:#define __WINT_TYPE__ int
5511// PPC603E:#define __WINT_WIDTH__ 32
5512// PPC603E:#define __powerpc__ 1
5513// PPC603E:#define __ppc__ 1
5514//
James Y Knightc97efa42016-02-11 16:51:29 +00005515// 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 +00005516// 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 +00005517//
5518// PPC64:#define _ARCH_PPC 1
5519// PPC64:#define _ARCH_PPC64 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005520// PPC64:#define _ARCH_PPCGR 1
5521// PPC64:#define _ARCH_PPCSQ 1
5522// PPC64:#define _ARCH_PWR4 1
5523// PPC64:#define _ARCH_PWR5 1
5524// PPC64:#define _ARCH_PWR6 1
Hal Finkel8eb59282012-06-11 22:35:19 +00005525// PPC64:#define _ARCH_PWR7 1
Chris Lattnere963d092009-10-29 04:55:36 +00005526// PPC64:#define _BIG_ENDIAN 1
5527// PPC64:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00005528// PPC64:#define __BIGGEST_ALIGNMENT__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005529// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005530// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00005531// PPC64:#define __CHAR16_TYPE__ unsigned short
5532// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00005533// PPC64:#define __CHAR_BIT__ 8
5534// PPC64:#define __CHAR_UNSIGNED__ 1
5535// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5536// PPC64:#define __DBL_DIG__ 15
5537// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5538// PPC64:#define __DBL_HAS_DENORM__ 1
5539// PPC64:#define __DBL_HAS_INFINITY__ 1
5540// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
5541// PPC64:#define __DBL_MANT_DIG__ 53
5542// PPC64:#define __DBL_MAX_10_EXP__ 308
5543// PPC64:#define __DBL_MAX_EXP__ 1024
5544// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
5545// PPC64:#define __DBL_MIN_10_EXP__ (-307)
5546// PPC64:#define __DBL_MIN_EXP__ (-1021)
5547// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005548// PPC64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00005549// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5550// PPC64:#define __FLT_DIG__ 6
5551// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
5552// PPC64:#define __FLT_EVAL_METHOD__ 0
5553// PPC64:#define __FLT_HAS_DENORM__ 1
5554// PPC64:#define __FLT_HAS_INFINITY__ 1
5555// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
5556// PPC64:#define __FLT_MANT_DIG__ 24
5557// PPC64:#define __FLT_MAX_10_EXP__ 38
5558// PPC64:#define __FLT_MAX_EXP__ 128
5559// PPC64:#define __FLT_MAX__ 3.40282347e+38F
5560// PPC64:#define __FLT_MIN_10_EXP__ (-37)
5561// PPC64:#define __FLT_MIN_EXP__ (-125)
5562// PPC64:#define __FLT_MIN__ 1.17549435e-38F
5563// PPC64:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00005564// PPC64:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00005565// PPC64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005566// PPC64:#define __INT16_FMTd__ "hd"
5567// PPC64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005568// PPC64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005569// PPC64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005570// PPC64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005571// PPC64:#define __INT32_FMTd__ "d"
5572// PPC64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005573// PPC64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00005574// PPC64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00005575// PPC64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005576// PPC64:#define __INT64_FMTd__ "ld"
5577// PPC64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005578// PPC64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00005579// PPC64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005580// PPC64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005581// PPC64:#define __INT8_FMTd__ "hhd"
5582// PPC64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005583// PPC64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005584// PPC64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005585// PPC64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005586// PPC64:#define __INTMAX_FMTd__ "ld"
5587// PPC64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00005588// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005589// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00005590// PPC64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005591// PPC64:#define __INTPTR_FMTd__ "ld"
5592// PPC64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005593// PPC64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005594// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005595// PPC64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005596// PPC64:#define __INT_FAST16_FMTd__ "hd"
5597// PPC64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005598// PPC64:#define __INT_FAST16_MAX__ 32767
5599// PPC64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005600// PPC64:#define __INT_FAST32_FMTd__ "d"
5601// PPC64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005602// PPC64:#define __INT_FAST32_MAX__ 2147483647
5603// PPC64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005604// PPC64:#define __INT_FAST64_FMTd__ "ld"
5605// PPC64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005606// PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
5607// PPC64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005608// PPC64:#define __INT_FAST8_FMTd__ "hhd"
5609// PPC64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005610// PPC64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005611// PPC64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005612// PPC64:#define __INT_LEAST16_FMTd__ "hd"
5613// PPC64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005614// PPC64:#define __INT_LEAST16_MAX__ 32767
5615// PPC64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005616// PPC64:#define __INT_LEAST32_FMTd__ "d"
5617// PPC64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005618// PPC64:#define __INT_LEAST32_MAX__ 2147483647
5619// PPC64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005620// PPC64:#define __INT_LEAST64_FMTd__ "ld"
5621// PPC64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005622// PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5623// PPC64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005624// PPC64:#define __INT_LEAST8_FMTd__ "hhd"
5625// PPC64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005626// PPC64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005627// PPC64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005628// PPC64:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005629// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5630// PPC64:#define __LDBL_DIG__ 31
5631// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005632// PPC64:#define __LDBL_HAS_DENORM__ 1
5633// PPC64:#define __LDBL_HAS_INFINITY__ 1
5634// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005635// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00005636// PPC64:#define __LDBL_MAX_10_EXP__ 308
5637// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00005638// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5639// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
5640// PPC64:#define __LDBL_MIN_EXP__ (-968)
5641// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00005642// PPC64:#define __LONGDOUBLE128 1
Chris Lattnere963d092009-10-29 04:55:36 +00005643// PPC64:#define __LONG_DOUBLE_128__ 1
5644// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5645// PPC64:#define __LONG_MAX__ 9223372036854775807L
5646// PPC64:#define __LP64__ 1
5647// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005648// PPC64:#define __POINTER_WIDTH__ 64
5649// PPC64:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005650// PPC64:#define __PPC64__ 1
5651// PPC64:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00005652// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00005653// PPC64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005654// PPC64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005655// PPC64:#define __SCHAR_MAX__ 127
5656// PPC64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005657// PPC64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00005658// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005659// PPC64:#define __SIZEOF_DOUBLE__ 8
5660// PPC64:#define __SIZEOF_FLOAT__ 4
5661// PPC64:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00005662// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00005663// PPC64:#define __SIZEOF_LONG_LONG__ 8
5664// PPC64:#define __SIZEOF_LONG__ 8
5665// PPC64:#define __SIZEOF_POINTER__ 8
5666// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
5667// PPC64:#define __SIZEOF_SHORT__ 2
5668// PPC64:#define __SIZEOF_SIZE_T__ 8
5669// PPC64:#define __SIZEOF_WCHAR_T__ 4
5670// PPC64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005671// PPC64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00005672// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005673// PPC64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005674// PPC64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005675// PPC64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005676// PPC64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005677// PPC64:#define __UINT16_TYPE__ unsigned short
5678// PPC64:#define __UINT32_C_SUFFIX__ U
5679// PPC64:#define __UINT32_MAX__ 4294967295U
5680// PPC64:#define __UINT32_TYPE__ unsigned int
5681// PPC64:#define __UINT64_C_SUFFIX__ UL
5682// PPC64:#define __UINT64_MAX__ 18446744073709551615UL
5683// PPC64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005684// PPC64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005685// PPC64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005686// PPC64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005687// PPC64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005688// PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00005689// PPC64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005690// PPC64:#define __UINTMAX_WIDTH__ 64
5691// PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
5692// PPC64:#define __UINTPTR_TYPE__ long unsigned int
5693// PPC64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005694// PPC64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005695// PPC64:#define __UINT_FAST16_TYPE__ unsigned short
5696// PPC64:#define __UINT_FAST32_MAX__ 4294967295U
5697// PPC64:#define __UINT_FAST32_TYPE__ unsigned int
5698// PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5699// PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005700// PPC64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005701// PPC64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005702// PPC64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005703// PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
5704// PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
5705// PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
5706// PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5707// PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005708// PPC64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005709// PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005710// PPC64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005711// PPC64:#define __WCHAR_MAX__ 2147483647
5712// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005713// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005714// PPC64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005715// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005716// PPC64:#define __ppc64__ 1
5717// PPC64:#define __ppc__ 1
5718//
James Y Knightc97efa42016-02-11 16:51:29 +00005719// 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 +00005720//
5721// PPC64LE:#define _ARCH_PPC 1
5722// PPC64LE:#define _ARCH_PPC64 1
5723// PPC64LE:#define _ARCH_PPCGR 1
5724// PPC64LE:#define _ARCH_PPCSQ 1
5725// PPC64LE:#define _ARCH_PWR4 1
5726// PPC64LE:#define _ARCH_PWR5 1
5727// PPC64LE:#define _ARCH_PWR5X 1
5728// PPC64LE:#define _ARCH_PWR6 1
5729// PPC64LE:#define _ARCH_PWR6X 1
5730// PPC64LE:#define _ARCH_PWR7 1
Will Schmidt5fa50f3c2014-03-24 21:09:16 +00005731// PPC64LE:#define _CALL_ELF 2
Bill Schmidt778d3872013-07-26 01:36:11 +00005732// PPC64LE:#define _LITTLE_ENDIAN 1
5733// PPC64LE:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00005734// PPC64LE:#define __BIGGEST_ALIGNMENT__ 16
Bill Schmidt778d3872013-07-26 01:36:11 +00005735// PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5736// PPC64LE:#define __CHAR16_TYPE__ unsigned short
5737// PPC64LE:#define __CHAR32_TYPE__ unsigned int
5738// PPC64LE:#define __CHAR_BIT__ 8
5739// PPC64LE:#define __CHAR_UNSIGNED__ 1
5740// PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5741// PPC64LE:#define __DBL_DIG__ 15
5742// PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
5743// PPC64LE:#define __DBL_HAS_DENORM__ 1
5744// PPC64LE:#define __DBL_HAS_INFINITY__ 1
5745// PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
5746// PPC64LE:#define __DBL_MANT_DIG__ 53
5747// PPC64LE:#define __DBL_MAX_10_EXP__ 308
5748// PPC64LE:#define __DBL_MAX_EXP__ 1024
5749// PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
5750// PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
5751// PPC64LE:#define __DBL_MIN_EXP__ (-1021)
5752// PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005753// PPC64LE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Bill Schmidt778d3872013-07-26 01:36:11 +00005754// PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5755// PPC64LE:#define __FLT_DIG__ 6
5756// PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
5757// PPC64LE:#define __FLT_EVAL_METHOD__ 0
5758// PPC64LE:#define __FLT_HAS_DENORM__ 1
5759// PPC64LE:#define __FLT_HAS_INFINITY__ 1
5760// PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
5761// PPC64LE:#define __FLT_MANT_DIG__ 24
5762// PPC64LE:#define __FLT_MAX_10_EXP__ 38
5763// PPC64LE:#define __FLT_MAX_EXP__ 128
5764// PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
5765// PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
5766// PPC64LE:#define __FLT_MIN_EXP__ (-125)
5767// PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
5768// PPC64LE:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00005769// PPC64LE:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00005770// PPC64LE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005771// PPC64LE:#define __INT16_FMTd__ "hd"
5772// PPC64LE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005773// PPC64LE:#define __INT16_MAX__ 32767
Bill Schmidt778d3872013-07-26 01:36:11 +00005774// PPC64LE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005775// PPC64LE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005776// PPC64LE:#define __INT32_FMTd__ "d"
5777// PPC64LE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005778// PPC64LE:#define __INT32_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005779// PPC64LE:#define __INT32_TYPE__ int
5780// PPC64LE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005781// PPC64LE:#define __INT64_FMTd__ "ld"
5782// PPC64LE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005783// PPC64LE:#define __INT64_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005784// PPC64LE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005785// PPC64LE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005786// PPC64LE:#define __INT8_FMTd__ "hhd"
5787// PPC64LE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005788// PPC64LE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005789// PPC64LE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005790// PPC64LE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005791// PPC64LE:#define __INTMAX_FMTd__ "ld"
5792// PPC64LE:#define __INTMAX_FMTi__ "li"
Bill Schmidt778d3872013-07-26 01:36:11 +00005793// PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
5794// PPC64LE:#define __INTMAX_TYPE__ long int
5795// PPC64LE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005796// PPC64LE:#define __INTPTR_FMTd__ "ld"
5797// PPC64LE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005798// PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005799// PPC64LE:#define __INTPTR_TYPE__ long int
5800// PPC64LE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005801// PPC64LE:#define __INT_FAST16_FMTd__ "hd"
5802// PPC64LE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005803// PPC64LE:#define __INT_FAST16_MAX__ 32767
5804// PPC64LE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005805// PPC64LE:#define __INT_FAST32_FMTd__ "d"
5806// PPC64LE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005807// PPC64LE:#define __INT_FAST32_MAX__ 2147483647
5808// PPC64LE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005809// PPC64LE:#define __INT_FAST64_FMTd__ "ld"
5810// PPC64LE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005811// PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
5812// PPC64LE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005813// PPC64LE:#define __INT_FAST8_FMTd__ "hhd"
5814// PPC64LE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005815// PPC64LE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005816// PPC64LE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005817// PPC64LE:#define __INT_LEAST16_FMTd__ "hd"
5818// PPC64LE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005819// PPC64LE:#define __INT_LEAST16_MAX__ 32767
5820// PPC64LE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005821// PPC64LE:#define __INT_LEAST32_FMTd__ "d"
5822// PPC64LE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005823// PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
5824// PPC64LE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005825// PPC64LE:#define __INT_LEAST64_FMTd__ "ld"
5826// PPC64LE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005827// PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
5828// PPC64LE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005829// PPC64LE:#define __INT_LEAST8_FMTd__ "hhd"
5830// PPC64LE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005831// PPC64LE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005832// PPC64LE:#define __INT_LEAST8_TYPE__ signed char
Bill Schmidt778d3872013-07-26 01:36:11 +00005833// PPC64LE:#define __INT_MAX__ 2147483647
5834// PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5835// PPC64LE:#define __LDBL_DIG__ 31
5836// PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5837// PPC64LE:#define __LDBL_HAS_DENORM__ 1
5838// PPC64LE:#define __LDBL_HAS_INFINITY__ 1
5839// PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
5840// PPC64LE:#define __LDBL_MANT_DIG__ 106
5841// PPC64LE:#define __LDBL_MAX_10_EXP__ 308
5842// PPC64LE:#define __LDBL_MAX_EXP__ 1024
5843// PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5844// PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
5845// PPC64LE:#define __LDBL_MIN_EXP__ (-968)
5846// PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5847// PPC64LE:#define __LITTLE_ENDIAN__ 1
Eric Christopheree214102017-03-25 06:37:23 +00005848// PPC64LE:#define __LONGDOUBLE128 1
Bill Schmidt778d3872013-07-26 01:36:11 +00005849// PPC64LE:#define __LONG_DOUBLE_128__ 1
5850// PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
5851// PPC64LE:#define __LONG_MAX__ 9223372036854775807L
5852// PPC64LE:#define __LP64__ 1
5853// PPC64LE:#define __NATURAL_ALIGNMENT__ 1
5854// PPC64LE:#define __POINTER_WIDTH__ 64
5855// PPC64LE:#define __POWERPC__ 1
5856// PPC64LE:#define __PPC64__ 1
5857// PPC64LE:#define __PPC__ 1
5858// PPC64LE:#define __PTRDIFF_TYPE__ long int
5859// PPC64LE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005860// PPC64LE:#define __REGISTER_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005861// PPC64LE:#define __SCHAR_MAX__ 127
5862// PPC64LE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005863// PPC64LE:#define __SIG_ATOMIC_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005864// PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
5865// PPC64LE:#define __SIZEOF_DOUBLE__ 8
5866// PPC64LE:#define __SIZEOF_FLOAT__ 4
5867// PPC64LE:#define __SIZEOF_INT__ 4
5868// PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
5869// PPC64LE:#define __SIZEOF_LONG_LONG__ 8
5870// PPC64LE:#define __SIZEOF_LONG__ 8
5871// PPC64LE:#define __SIZEOF_POINTER__ 8
5872// PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
5873// PPC64LE:#define __SIZEOF_SHORT__ 2
5874// PPC64LE:#define __SIZEOF_SIZE_T__ 8
5875// PPC64LE:#define __SIZEOF_WCHAR_T__ 4
5876// PPC64LE:#define __SIZEOF_WINT_T__ 4
5877// PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
5878// PPC64LE:#define __SIZE_TYPE__ long unsigned int
5879// PPC64LE:#define __SIZE_WIDTH__ 64
Eric Christopher32ac5e42017-02-15 07:50:11 +00005880// PPC64LE:#define __STRUCT_PARM_ALIGN__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00005881// PPC64LE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005882// PPC64LE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005883// PPC64LE:#define __UINT16_TYPE__ unsigned short
5884// PPC64LE:#define __UINT32_C_SUFFIX__ U
5885// PPC64LE:#define __UINT32_MAX__ 4294967295U
5886// PPC64LE:#define __UINT32_TYPE__ unsigned int
5887// PPC64LE:#define __UINT64_C_SUFFIX__ UL
5888// PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
5889// PPC64LE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005890// PPC64LE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005891// PPC64LE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005892// PPC64LE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005893// PPC64LE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005894// PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
Bill Schmidt778d3872013-07-26 01:36:11 +00005895// PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005896// PPC64LE:#define __UINTMAX_WIDTH__ 64
5897// PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
5898// PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
5899// PPC64LE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005900// PPC64LE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005901// PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
5902// PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
5903// PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
5904// PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5905// PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005906// PPC64LE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005907// PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005908// PPC64LE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005909// PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
5910// PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
5911// PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
5912// PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5913// PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005914// PPC64LE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005915// PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005916// PPC64LE:#define __USER_LABEL_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005917// PPC64LE:#define __WCHAR_MAX__ 2147483647
5918// PPC64LE:#define __WCHAR_TYPE__ int
5919// PPC64LE:#define __WCHAR_WIDTH__ 32
5920// PPC64LE:#define __WINT_TYPE__ int
5921// PPC64LE:#define __WINT_WIDTH__ 32
5922// PPC64LE:#define __ppc64__ 1
5923// PPC64LE:#define __ppc__ 1
5924//
James Y Knightc97efa42016-02-11 16:51:29 +00005925// 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 +00005926//
5927// PPCA2Q:#define _ARCH_A2 1
5928// PPCA2Q:#define _ARCH_A2Q 1
5929// PPCA2Q:#define _ARCH_PPC 1
5930// PPCA2Q:#define _ARCH_PPC64 1
5931// PPCA2Q:#define _ARCH_QP 1
5932//
James Y Knightc97efa42016-02-11 16:51:29 +00005933// 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 +00005934//
5935// PPCBGQ:#define __THW_BLUEGENE__ 1
5936// PPCBGQ:#define __TOS_BGQ__ 1
5937// PPCBGQ:#define __bg__ 1
5938// PPCBGQ:#define __bgq__ 1
5939//
James Y Knightc97efa42016-02-11 16:51:29 +00005940// 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 +00005941//
5942// PPC630:#define _ARCH_630 1
5943// PPC630:#define _ARCH_PPC 1
5944// PPC630:#define _ARCH_PPC64 1
5945// PPC630:#define _ARCH_PPCGR 1
5946//
James Y Knightc97efa42016-02-11 16:51:29 +00005947// 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 +00005948//
5949// PPCPWR3:#define _ARCH_PPC 1
5950// PPCPWR3:#define _ARCH_PPC64 1
5951// PPCPWR3:#define _ARCH_PPCGR 1
5952//
James Y Knightc97efa42016-02-11 16:51:29 +00005953// 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 +00005954//
5955// PPCPOWER3:#define _ARCH_PPC 1
5956// PPCPOWER3:#define _ARCH_PPC64 1
5957// PPCPOWER3:#define _ARCH_PPCGR 1
5958//
James Y Knightc97efa42016-02-11 16:51:29 +00005959// 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 +00005960//
5961// PPCPWR4:#define _ARCH_PPC 1
5962// PPCPWR4:#define _ARCH_PPC64 1
5963// PPCPWR4:#define _ARCH_PPCGR 1
5964// PPCPWR4:#define _ARCH_PPCSQ 1
5965// PPCPWR4:#define _ARCH_PWR4 1
5966//
James Y Knightc97efa42016-02-11 16:51:29 +00005967// 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 +00005968//
5969// PPCPOWER4:#define _ARCH_PPC 1
5970// PPCPOWER4:#define _ARCH_PPC64 1
5971// PPCPOWER4:#define _ARCH_PPCGR 1
5972// PPCPOWER4:#define _ARCH_PPCSQ 1
5973// PPCPOWER4:#define _ARCH_PWR4 1
5974//
James Y Knightc97efa42016-02-11 16:51:29 +00005975// 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 +00005976//
5977// PPCPWR5:#define _ARCH_PPC 1
5978// PPCPWR5:#define _ARCH_PPC64 1
5979// PPCPWR5:#define _ARCH_PPCGR 1
5980// PPCPWR5:#define _ARCH_PPCSQ 1
5981// PPCPWR5:#define _ARCH_PWR4 1
5982// PPCPWR5:#define _ARCH_PWR5 1
5983//
James Y Knightc97efa42016-02-11 16:51:29 +00005984// 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 +00005985//
5986// PPCPOWER5:#define _ARCH_PPC 1
5987// PPCPOWER5:#define _ARCH_PPC64 1
5988// PPCPOWER5:#define _ARCH_PPCGR 1
5989// PPCPOWER5:#define _ARCH_PPCSQ 1
5990// PPCPOWER5:#define _ARCH_PWR4 1
5991// PPCPOWER5:#define _ARCH_PWR5 1
5992//
James Y Knightc97efa42016-02-11 16:51:29 +00005993// 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 +00005994//
5995// PPCPWR5X:#define _ARCH_PPC 1
5996// PPCPWR5X:#define _ARCH_PPC64 1
5997// PPCPWR5X:#define _ARCH_PPCGR 1
5998// PPCPWR5X:#define _ARCH_PPCSQ 1
5999// PPCPWR5X:#define _ARCH_PWR4 1
6000// PPCPWR5X:#define _ARCH_PWR5 1
6001// PPCPWR5X:#define _ARCH_PWR5X 1
6002//
James Y Knightc97efa42016-02-11 16:51:29 +00006003// 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 +00006004//
6005// PPCPOWER5X:#define _ARCH_PPC 1
6006// PPCPOWER5X:#define _ARCH_PPC64 1
6007// PPCPOWER5X:#define _ARCH_PPCGR 1
6008// PPCPOWER5X:#define _ARCH_PPCSQ 1
6009// PPCPOWER5X:#define _ARCH_PWR4 1
6010// PPCPOWER5X:#define _ARCH_PWR5 1
6011// PPCPOWER5X:#define _ARCH_PWR5X 1
6012//
James Y Knightc97efa42016-02-11 16:51:29 +00006013// 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 +00006014//
6015// PPCPWR6:#define _ARCH_PPC 1
6016// PPCPWR6:#define _ARCH_PPC64 1
6017// PPCPWR6:#define _ARCH_PPCGR 1
6018// PPCPWR6:#define _ARCH_PPCSQ 1
6019// PPCPWR6:#define _ARCH_PWR4 1
6020// PPCPWR6:#define _ARCH_PWR5 1
6021// PPCPWR6:#define _ARCH_PWR5X 1
6022// PPCPWR6:#define _ARCH_PWR6 1
6023//
James Y Knightc97efa42016-02-11 16:51:29 +00006024// 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 +00006025//
6026// PPCPOWER6:#define _ARCH_PPC 1
6027// PPCPOWER6:#define _ARCH_PPC64 1
6028// PPCPOWER6:#define _ARCH_PPCGR 1
6029// PPCPOWER6:#define _ARCH_PPCSQ 1
6030// PPCPOWER6:#define _ARCH_PWR4 1
6031// PPCPOWER6:#define _ARCH_PWR5 1
6032// PPCPOWER6:#define _ARCH_PWR5X 1
6033// PPCPOWER6:#define _ARCH_PWR6 1
6034//
James Y Knightc97efa42016-02-11 16:51:29 +00006035// 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 +00006036//
6037// PPCPWR6X:#define _ARCH_PPC 1
6038// PPCPWR6X:#define _ARCH_PPC64 1
6039// PPCPWR6X:#define _ARCH_PPCGR 1
6040// PPCPWR6X:#define _ARCH_PPCSQ 1
6041// PPCPWR6X:#define _ARCH_PWR4 1
6042// PPCPWR6X:#define _ARCH_PWR5 1
6043// PPCPWR6X:#define _ARCH_PWR5X 1
6044// PPCPWR6X:#define _ARCH_PWR6 1
6045// PPCPWR6X:#define _ARCH_PWR6X 1
6046//
James Y Knightc97efa42016-02-11 16:51:29 +00006047// 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 +00006048//
6049// PPCPOWER6X:#define _ARCH_PPC 1
6050// PPCPOWER6X:#define _ARCH_PPC64 1
6051// PPCPOWER6X:#define _ARCH_PPCGR 1
6052// PPCPOWER6X:#define _ARCH_PPCSQ 1
6053// PPCPOWER6X:#define _ARCH_PWR4 1
6054// PPCPOWER6X:#define _ARCH_PWR5 1
6055// PPCPOWER6X:#define _ARCH_PWR5X 1
6056// PPCPOWER6X:#define _ARCH_PWR6 1
6057// PPCPOWER6X:#define _ARCH_PWR6X 1
6058//
James Y Knightc97efa42016-02-11 16:51:29 +00006059// 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 +00006060//
6061// PPCPWR7:#define _ARCH_PPC 1
6062// PPCPWR7:#define _ARCH_PPC64 1
6063// PPCPWR7:#define _ARCH_PPCGR 1
6064// PPCPWR7:#define _ARCH_PPCSQ 1
6065// PPCPWR7:#define _ARCH_PWR4 1
6066// PPCPWR7:#define _ARCH_PWR5 1
6067// PPCPWR7:#define _ARCH_PWR5X 1
6068// PPCPWR7:#define _ARCH_PWR6 1
6069// PPCPWR7:#define _ARCH_PWR6X 1
6070// PPCPWR7:#define _ARCH_PWR7 1
6071//
James Y Knightc97efa42016-02-11 16:51:29 +00006072// 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 +00006073//
6074// PPCPOWER7:#define _ARCH_PPC 1
6075// PPCPOWER7:#define _ARCH_PPC64 1
6076// PPCPOWER7:#define _ARCH_PPCGR 1
6077// PPCPOWER7:#define _ARCH_PPCSQ 1
6078// PPCPOWER7:#define _ARCH_PWR4 1
6079// PPCPOWER7:#define _ARCH_PWR5 1
6080// PPCPOWER7:#define _ARCH_PWR5X 1
6081// PPCPOWER7:#define _ARCH_PWR6 1
6082// PPCPOWER7:#define _ARCH_PWR6X 1
6083// PPCPOWER7:#define _ARCH_PWR7 1
6084//
James Y Knightc97efa42016-02-11 16:51:29 +00006085// 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 +00006086//
6087// PPCPWR8:#define _ARCH_PPC 1
6088// PPCPWR8:#define _ARCH_PPC64 1
6089// PPCPWR8:#define _ARCH_PPCGR 1
6090// PPCPWR8:#define _ARCH_PPCSQ 1
6091// PPCPWR8:#define _ARCH_PWR4 1
6092// PPCPWR8:#define _ARCH_PWR5 1
6093// PPCPWR8:#define _ARCH_PWR5X 1
6094// PPCPWR8:#define _ARCH_PWR6 1
6095// PPCPWR8:#define _ARCH_PWR6X 1
6096// PPCPWR8:#define _ARCH_PWR7 1
6097// PPCPWR8:#define _ARCH_PWR8 1
6098//
James Y Knightc97efa42016-02-11 16:51:29 +00006099// 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 +00006100//
Eric Christopherb70819e2017-03-25 02:29:18 +00006101// ppc64le also defaults to power8.
6102// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-none-none -target-cpu ppc64le -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER8 %s
6103//
Will Schmidtf0487512014-06-26 13:34:10 +00006104// PPCPOWER8:#define _ARCH_PPC 1
6105// PPCPOWER8:#define _ARCH_PPC64 1
6106// PPCPOWER8:#define _ARCH_PPCGR 1
6107// PPCPOWER8:#define _ARCH_PPCSQ 1
6108// PPCPOWER8:#define _ARCH_PWR4 1
6109// PPCPOWER8:#define _ARCH_PWR5 1
6110// PPCPOWER8:#define _ARCH_PWR5X 1
6111// PPCPOWER8:#define _ARCH_PWR6 1
6112// PPCPOWER8:#define _ARCH_PWR6X 1
6113// PPCPOWER8:#define _ARCH_PWR7 1
6114// PPCPOWER8:#define _ARCH_PWR8 1
6115//
Nemanja Ivanovicd99f21b2016-05-09 18:58:02 +00006116// 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
6117//
6118// PPCPWR9:#define _ARCH_PPC 1
6119// PPCPWR9:#define _ARCH_PPC64 1
6120// PPCPWR9:#define _ARCH_PPCGR 1
6121// PPCPWR9:#define _ARCH_PPCSQ 1
6122// PPCPWR9:#define _ARCH_PWR4 1
6123// PPCPWR9:#define _ARCH_PWR5 1
6124// PPCPWR9:#define _ARCH_PWR5X 1
6125// PPCPWR9:#define _ARCH_PWR6 1
6126// PPCPWR9:#define _ARCH_PWR6X 1
6127// PPCPWR9:#define _ARCH_PWR7 1
6128// PPCPWR9:#define _ARCH_PWR9 1
6129//
6130// 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
6131//
6132// PPCPOWER9:#define _ARCH_PPC 1
6133// PPCPOWER9:#define _ARCH_PPC64 1
6134// PPCPOWER9:#define _ARCH_PPCGR 1
6135// PPCPOWER9:#define _ARCH_PPCSQ 1
6136// PPCPOWER9:#define _ARCH_PWR4 1
6137// PPCPOWER9:#define _ARCH_PWR5 1
6138// PPCPOWER9:#define _ARCH_PWR5X 1
6139// PPCPOWER9:#define _ARCH_PWR6 1
6140// PPCPOWER9:#define _ARCH_PWR6X 1
6141// PPCPOWER9:#define _ARCH_PWR7 1
6142// PPCPOWER9:#define _ARCH_PWR9 1
6143//
Nemanja Ivanovicbb1ea2d2016-05-09 08:52:33 +00006144// 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
6145// PPC-FLOAT128:#define __FLOAT128__ 1
6146//
James Y Knightc97efa42016-02-11 16:51:29 +00006147// 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 +00006148//
6149// PPC64-LINUX:#define _ARCH_PPC 1
6150// PPC64-LINUX:#define _ARCH_PPC64 1
6151// PPC64-LINUX:#define _BIG_ENDIAN 1
Eric Christopher2fd2eda2017-03-25 03:33:59 +00006152// PPC64-LINUX:#define _CALL_LINUX 1
Nico Weber3435ede2012-01-31 02:07:33 +00006153// PPC64-LINUX:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00006154// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Nico Weber3435ede2012-01-31 02:07:33 +00006155// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006156// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006157// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
6158// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
6159// PPC64-LINUX:#define __CHAR_BIT__ 8
6160// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
6161// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6162// PPC64-LINUX:#define __DBL_DIG__ 15
6163// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6164// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
6165// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
6166// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6167// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
6168// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
6169// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
6170// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6171// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6172// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
6173// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006174// PPC64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006175// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6176// PPC64-LINUX:#define __FLT_DIG__ 6
6177// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6178// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
6179// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
6180// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
6181// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6182// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
6183// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
6184// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
6185// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6186// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6187// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
6188// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6189// PPC64-LINUX:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006190// PPC64-LINUX:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006191// PPC64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006192// PPC64-LINUX:#define __INT16_FMTd__ "hd"
6193// PPC64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006194// PPC64-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006195// PPC64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006196// PPC64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006197// PPC64-LINUX:#define __INT32_FMTd__ "d"
6198// PPC64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006199// PPC64-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006200// PPC64-LINUX:#define __INT32_TYPE__ int
6201// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006202// PPC64-LINUX:#define __INT64_FMTd__ "ld"
6203// PPC64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006204// PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00006205// PPC64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00006206// PPC64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006207// PPC64-LINUX:#define __INT8_FMTd__ "hhd"
6208// PPC64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006209// PPC64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006210// PPC64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006211// PPC64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006212// PPC64-LINUX:#define __INTMAX_FMTd__ "ld"
6213// PPC64-LINUX:#define __INTMAX_FMTi__ "li"
Nico Weber3435ede2012-01-31 02:07:33 +00006214// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
6215// PPC64-LINUX:#define __INTMAX_TYPE__ long int
6216// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006217// PPC64-LINUX:#define __INTPTR_FMTd__ "ld"
6218// PPC64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006219// PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00006220// PPC64-LINUX:#define __INTPTR_TYPE__ long int
6221// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006222// PPC64-LINUX:#define __INT_FAST16_FMTd__ "hd"
6223// PPC64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006224// PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
6225// PPC64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006226// PPC64-LINUX:#define __INT_FAST32_FMTd__ "d"
6227// PPC64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006228// PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
6229// PPC64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006230// PPC64-LINUX:#define __INT_FAST64_FMTd__ "ld"
6231// PPC64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006232// PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
6233// PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006234// PPC64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6235// PPC64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006236// PPC64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006237// PPC64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006238// PPC64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6239// PPC64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006240// PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
6241// PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006242// PPC64-LINUX:#define __INT_LEAST32_FMTd__ "d"
6243// PPC64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006244// PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6245// PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006246// PPC64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
6247// PPC64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006248// PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
6249// PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006250// PPC64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6251// PPC64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006252// PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006253// PPC64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006254// PPC64-LINUX:#define __INT_MAX__ 2147483647
6255// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6256// PPC64-LINUX:#define __LDBL_DIG__ 31
6257// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6258// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
6259// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
6260// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6261// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
6262// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
6263// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
6264// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6265// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6266// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
6267// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006268// PPC64-LINUX:#define __LONGDOUBLE128 1
Nico Weber3435ede2012-01-31 02:07:33 +00006269// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
6270// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6271// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
6272// PPC64-LINUX:#define __LP64__ 1
6273// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006274// PPC64-LINUX:#define __POINTER_WIDTH__ 64
6275// PPC64-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006276// PPC64-LINUX:#define __PPC64__ 1
6277// PPC64-LINUX:#define __PPC__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006278// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
6279// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
6280// PPC64-LINUX:#define __REGISTER_PREFIX__
6281// PPC64-LINUX:#define __SCHAR_MAX__ 127
6282// PPC64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006283// PPC64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006284// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6285// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
6286// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
6287// PPC64-LINUX:#define __SIZEOF_INT__ 4
6288// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6289// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
6290// PPC64-LINUX:#define __SIZEOF_LONG__ 8
6291// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
6292// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
6293// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
6294// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
6295// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
6296// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006297// PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006298// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
6299// PPC64-LINUX:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006300// PPC64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006301// PPC64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006302// PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
6303// PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
6304// PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
6305// PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
6306// PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
6307// PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
6308// PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006309// PPC64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006310// PPC64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006311// PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006312// PPC64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00006313// PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006314// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006315// PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
6316// PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
6317// PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
6318// PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006319// PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006320// PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6321// PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6322// PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6323// PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6324// PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006325// PPC64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006326// PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006327// PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006328// PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6329// PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6330// PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6331// PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6332// PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006333// PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006334// PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006335// PPC64-LINUX:#define __USER_LABEL_PREFIX__
6336// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
6337// PPC64-LINUX:#define __WCHAR_TYPE__ int
6338// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
6339// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
6340// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
6341// PPC64-LINUX:#define __WINT_WIDTH__ 32
6342// PPC64-LINUX:#define __powerpc64__ 1
6343// PPC64-LINUX:#define __powerpc__ 1
6344// PPC64-LINUX:#define __ppc64__ 1
6345// PPC64-LINUX:#define __ppc__ 1
Ulrich Weigand8afad612014-07-28 13:17:52 +00006346
James Y Knightc97efa42016-02-11 16:51:29 +00006347// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6348// 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
6349// 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
6350// 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
6351// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6352// 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
6353// 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 +00006354// PPC64-ELFv1:#define _CALL_ELF 1
6355// PPC64-ELFv2:#define _CALL_ELF 2
Nico Weber3435ede2012-01-31 02:07:33 +00006356//
Eric Christopher2fd2eda2017-03-25 03:33:59 +00006357// Most of this is encompassed in other places.
6358// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu -target-abi elfv2 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64LE-LINUX %s
6359//
6360// PPC64LE-LINUX:#define _CALL_LINUX 1
6361//
James Y Knightc97efa42016-02-11 16:51:29 +00006362// 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 +00006363//
6364// PPC:#define _ARCH_PPC 1
6365// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006366// PPC-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00006367// PPC:#define __BIGGEST_ALIGNMENT__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00006368// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006369// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006370// PPC:#define __CHAR16_TYPE__ unsigned short
6371// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006372// PPC:#define __CHAR_BIT__ 8
6373// PPC:#define __CHAR_UNSIGNED__ 1
6374// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6375// PPC:#define __DBL_DIG__ 15
6376// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6377// PPC:#define __DBL_HAS_DENORM__ 1
6378// PPC:#define __DBL_HAS_INFINITY__ 1
6379// PPC:#define __DBL_HAS_QUIET_NAN__ 1
6380// PPC:#define __DBL_MANT_DIG__ 53
6381// PPC:#define __DBL_MAX_10_EXP__ 308
6382// PPC:#define __DBL_MAX_EXP__ 1024
6383// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
6384// PPC:#define __DBL_MIN_10_EXP__ (-307)
6385// PPC:#define __DBL_MIN_EXP__ (-1021)
6386// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006387// PPC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006388// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6389// PPC:#define __FLT_DIG__ 6
6390// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
6391// PPC:#define __FLT_EVAL_METHOD__ 0
6392// PPC:#define __FLT_HAS_DENORM__ 1
6393// PPC:#define __FLT_HAS_INFINITY__ 1
6394// PPC:#define __FLT_HAS_QUIET_NAN__ 1
6395// PPC:#define __FLT_MANT_DIG__ 24
6396// PPC:#define __FLT_MAX_10_EXP__ 38
6397// PPC:#define __FLT_MAX_EXP__ 128
6398// PPC:#define __FLT_MAX__ 3.40282347e+38F
6399// PPC:#define __FLT_MIN_10_EXP__ (-37)
6400// PPC:#define __FLT_MIN_EXP__ (-125)
6401// PPC:#define __FLT_MIN__ 1.17549435e-38F
6402// PPC:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006403// PPC:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006404// PPC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006405// PPC:#define __INT16_FMTd__ "hd"
6406// PPC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006407// PPC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006408// PPC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006409// PPC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006410// PPC:#define __INT32_FMTd__ "d"
6411// PPC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006412// PPC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006413// PPC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006414// PPC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006415// PPC:#define __INT64_FMTd__ "lld"
6416// PPC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006417// PPC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006418// PPC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006419// PPC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006420// PPC:#define __INT8_FMTd__ "hhd"
6421// PPC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006422// PPC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006423// PPC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006424// PPC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006425// PPC:#define __INTMAX_FMTd__ "lld"
6426// PPC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006427// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006428// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006429// PPC:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006430// PPC:#define __INTPTR_FMTd__ "ld"
6431// PPC:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006432// PPC:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00006433// PPC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006434// PPC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006435// PPC:#define __INT_FAST16_FMTd__ "hd"
6436// PPC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006437// PPC:#define __INT_FAST16_MAX__ 32767
6438// PPC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006439// PPC:#define __INT_FAST32_FMTd__ "d"
6440// PPC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006441// PPC:#define __INT_FAST32_MAX__ 2147483647
6442// PPC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006443// PPC:#define __INT_FAST64_FMTd__ "lld"
6444// PPC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006445// PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6446// PPC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006447// PPC:#define __INT_FAST8_FMTd__ "hhd"
6448// PPC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006449// PPC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006450// PPC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006451// PPC:#define __INT_LEAST16_FMTd__ "hd"
6452// PPC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006453// PPC:#define __INT_LEAST16_MAX__ 32767
6454// PPC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006455// PPC:#define __INT_LEAST32_FMTd__ "d"
6456// PPC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006457// PPC:#define __INT_LEAST32_MAX__ 2147483647
6458// PPC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006459// PPC:#define __INT_LEAST64_FMTd__ "lld"
6460// PPC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006461// PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6462// PPC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006463// PPC:#define __INT_LEAST8_FMTd__ "hhd"
6464// PPC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006465// PPC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006466// PPC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006467// PPC:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006468// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6469// PPC:#define __LDBL_DIG__ 31
6470// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006471// PPC:#define __LDBL_HAS_DENORM__ 1
6472// PPC:#define __LDBL_HAS_INFINITY__ 1
6473// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006474// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00006475// PPC:#define __LDBL_MAX_10_EXP__ 308
6476// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00006477// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6478// PPC:#define __LDBL_MIN_10_EXP__ (-291)
6479// PPC:#define __LDBL_MIN_EXP__ (-968)
6480// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006481// PPC:#define __LONGDOUBLE128 1
Chris Lattnere963d092009-10-29 04:55:36 +00006482// PPC:#define __LONG_DOUBLE_128__ 1
6483// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6484// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006485// PPC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00006486// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00006487// PPC:#define __POINTER_WIDTH__ 32
6488// PPC:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006489// PPC:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00006490// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00006491// PPC:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006492// PPC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006493// PPC:#define __SCHAR_MAX__ 127
6494// PPC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006495// PPC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00006496// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00006497// PPC:#define __SIZEOF_DOUBLE__ 8
6498// PPC:#define __SIZEOF_FLOAT__ 4
6499// PPC:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00006500// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00006501// PPC:#define __SIZEOF_LONG_LONG__ 8
6502// PPC:#define __SIZEOF_LONG__ 4
6503// PPC:#define __SIZEOF_POINTER__ 4
6504// PPC:#define __SIZEOF_PTRDIFF_T__ 4
6505// PPC:#define __SIZEOF_SHORT__ 2
6506// PPC:#define __SIZEOF_SIZE_T__ 4
6507// PPC:#define __SIZEOF_WCHAR_T__ 4
6508// PPC:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00006509// PPC:#define __SIZE_MAX__ 4294967295UL
Chris Lattnere963d092009-10-29 04:55:36 +00006510// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00006511// PPC:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006512// PPC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006513// PPC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006514// PPC:#define __UINT16_TYPE__ unsigned short
6515// PPC:#define __UINT32_C_SUFFIX__ U
6516// PPC:#define __UINT32_MAX__ 4294967295U
6517// PPC:#define __UINT32_TYPE__ unsigned int
6518// PPC:#define __UINT64_C_SUFFIX__ ULL
6519// PPC:#define __UINT64_MAX__ 18446744073709551615ULL
6520// PPC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006521// PPC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006522// PPC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006523// PPC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006524// PPC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006525// PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00006526// PPC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006527// PPC:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006528// PPC:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006529// PPC:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006530// PPC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006531// PPC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006532// PPC:#define __UINT_FAST16_TYPE__ unsigned short
6533// PPC:#define __UINT_FAST32_MAX__ 4294967295U
6534// PPC:#define __UINT_FAST32_TYPE__ unsigned int
6535// PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6536// PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006537// PPC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006538// PPC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006539// PPC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006540// PPC:#define __UINT_LEAST16_TYPE__ unsigned short
6541// PPC:#define __UINT_LEAST32_MAX__ 4294967295U
6542// PPC:#define __UINT_LEAST32_TYPE__ unsigned int
6543// PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6544// PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006545// PPC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006546// PPC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006547// PPC:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006548// PPC:#define __WCHAR_MAX__ 2147483647
6549// PPC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00006550// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006551// PPC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00006552// PPC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006553// PPC:#define __ppc__ 1
6554//
James Y Knightc97efa42016-02-11 16:51:29 +00006555// 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 +00006556//
6557// PPC-LINUX:#define _ARCH_PPC 1
6558// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006559// PPC-LINUX-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00006560// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Nico Weber3435ede2012-01-31 02:07:33 +00006561// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006562// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006563// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
6564// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
6565// PPC-LINUX:#define __CHAR_BIT__ 8
6566// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
6567// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6568// PPC-LINUX:#define __DBL_DIG__ 15
6569// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6570// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
6571// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
6572// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6573// PPC-LINUX:#define __DBL_MANT_DIG__ 53
6574// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
6575// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
6576// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6577// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6578// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
6579// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006580// PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006581// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6582// PPC-LINUX:#define __FLT_DIG__ 6
6583// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6584// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
6585// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
6586// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
6587// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6588// PPC-LINUX:#define __FLT_MANT_DIG__ 24
6589// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
6590// PPC-LINUX:#define __FLT_MAX_EXP__ 128
6591// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6592// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6593// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
6594// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6595// PPC-LINUX:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006596// PPC-LINUX:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006597// PPC-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006598// PPC-LINUX:#define __INT16_FMTd__ "hd"
6599// PPC-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006600// PPC-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006601// PPC-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006602// PPC-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006603// PPC-LINUX:#define __INT32_FMTd__ "d"
6604// PPC-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006605// PPC-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006606// PPC-LINUX:#define __INT32_TYPE__ int
6607// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006608// PPC-LINUX:#define __INT64_FMTd__ "lld"
6609// PPC-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006610// PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Nico Weber3435ede2012-01-31 02:07:33 +00006611// PPC-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006612// PPC-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006613// PPC-LINUX:#define __INT8_FMTd__ "hhd"
6614// PPC-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006615// PPC-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006616// PPC-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006617// PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006618// PPC-LINUX:#define __INTMAX_FMTd__ "lld"
6619// PPC-LINUX:#define __INTMAX_FMTi__ "lli"
Nico Weber3435ede2012-01-31 02:07:33 +00006620// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
6621// PPC-LINUX:#define __INTMAX_TYPE__ long long int
6622// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006623// PPC-LINUX:#define __INTPTR_FMTd__ "d"
6624// PPC-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006625// PPC-LINUX:#define __INTPTR_MAX__ 2147483647
Hal Finkel26908382012-03-02 20:54:36 +00006626// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006627// PPC-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006628// PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
6629// PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006630// PPC-LINUX:#define __INT_FAST16_MAX__ 32767
6631// PPC-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006632// PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
6633// PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006634// PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
6635// PPC-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006636// PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
6637// PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006638// PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
6639// PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006640// PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6641// PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006642// PPC-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006643// PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006644// PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6645// PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006646// PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
6647// PPC-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006648// PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
6649// PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006650// PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6651// PPC-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006652// PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
6653// PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006654// PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6655// PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006656// PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6657// PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006658// PPC-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006659// PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006660// PPC-LINUX:#define __INT_MAX__ 2147483647
6661// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6662// PPC-LINUX:#define __LDBL_DIG__ 31
6663// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6664// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
6665// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
6666// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6667// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
6668// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
6669// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
6670// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6671// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6672// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
6673// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006674// PPC-LINUX:#define __LONGDOUBLE128 1
Nico Weber3435ede2012-01-31 02:07:33 +00006675// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
6676// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6677// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006678// PPC-LINUX-NOT:#define __LP64__
Nico Weber3435ede2012-01-31 02:07:33 +00006679// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006680// PPC-LINUX:#define __POINTER_WIDTH__ 32
6681// PPC-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006682// PPC-LINUX:#define __PPC__ 1
Hal Finkel26908382012-03-02 20:54:36 +00006683// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006684// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
6685// PPC-LINUX:#define __REGISTER_PREFIX__
6686// PPC-LINUX:#define __SCHAR_MAX__ 127
6687// PPC-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006688// PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006689// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6690// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
6691// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
6692// PPC-LINUX:#define __SIZEOF_INT__ 4
6693// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6694// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
6695// PPC-LINUX:#define __SIZEOF_LONG__ 4
6696// PPC-LINUX:#define __SIZEOF_POINTER__ 4
6697// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
6698// PPC-LINUX:#define __SIZEOF_SHORT__ 2
6699// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
6700// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
6701// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006702// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
Nico Weber3435ede2012-01-31 02:07:33 +00006703// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
6704// PPC-LINUX:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006705// PPC-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006706// PPC-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006707// PPC-LINUX:#define __UINT16_TYPE__ unsigned short
6708// PPC-LINUX:#define __UINT32_C_SUFFIX__ U
6709// PPC-LINUX:#define __UINT32_MAX__ 4294967295U
6710// PPC-LINUX:#define __UINT32_TYPE__ unsigned int
6711// PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
6712// PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
6713// PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006714// PPC-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006715// PPC-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006716// PPC-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006717// PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006718// PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Nico Weber3435ede2012-01-31 02:07:33 +00006719// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006720// PPC-LINUX:#define __UINTMAX_WIDTH__ 64
6721// PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
6722// PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
6723// PPC-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006724// PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006725// PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6726// PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6727// PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6728// PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6729// PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006730// PPC-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006731// PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006732// PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006733// PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6734// PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6735// PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6736// PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6737// PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006738// PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006739// PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006740// PPC-LINUX:#define __USER_LABEL_PREFIX__
6741// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
6742// PPC-LINUX:#define __WCHAR_TYPE__ int
6743// PPC-LINUX:#define __WCHAR_WIDTH__ 32
6744// PPC-LINUX:#define __WINT_TYPE__ unsigned int
6745// PPC-LINUX:#define __WINT_UNSIGNED__ 1
6746// PPC-LINUX:#define __WINT_WIDTH__ 32
6747// PPC-LINUX:#define __powerpc__ 1
6748// PPC-LINUX:#define __ppc__ 1
6749//
Eric Christopher1e6fedb2017-03-25 19:26:04 +00006750// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC32-LINUX %s
6751//
6752// PPC32-LINUX-NOT: _CALL_LINUX
6753//
James Y Knightc97efa42016-02-11 16:51:29 +00006754// 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 +00006755//
6756// PPC-DARWIN:#define _ARCH_PPC 1
6757// PPC-DARWIN:#define _BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00006758// PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
David Fang072d47b2013-05-16 17:51:48 +00006759// PPC-DARWIN:#define __BIG_ENDIAN__ 1
6760// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6761// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
6762// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
6763// PPC-DARWIN:#define __CHAR_BIT__ 8
6764// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6765// PPC-DARWIN:#define __DBL_DIG__ 15
6766// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
6767// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
6768// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
6769// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
6770// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
6771// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
6772// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
6773// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
6774// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
6775// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
6776// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006777// PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
David Fang072d47b2013-05-16 17:51:48 +00006778// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6779// PPC-DARWIN:#define __FLT_DIG__ 6
6780// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
6781// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
6782// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
6783// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
6784// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
6785// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
6786// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
6787// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
6788// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
6789// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
6790// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
6791// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
6792// PPC-DARWIN:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006793// PPC-DARWIN:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006794// PPC-DARWIN:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006795// PPC-DARWIN:#define __INT16_FMTd__ "hd"
6796// PPC-DARWIN:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006797// PPC-DARWIN:#define __INT16_MAX__ 32767
David Fang072d47b2013-05-16 17:51:48 +00006798// PPC-DARWIN:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006799// PPC-DARWIN:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006800// PPC-DARWIN:#define __INT32_FMTd__ "d"
6801// PPC-DARWIN:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006802// PPC-DARWIN:#define __INT32_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006803// PPC-DARWIN:#define __INT32_TYPE__ int
6804// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006805// PPC-DARWIN:#define __INT64_FMTd__ "lld"
6806// PPC-DARWIN:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006807// PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
David Fang072d47b2013-05-16 17:51:48 +00006808// PPC-DARWIN:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006809// PPC-DARWIN:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006810// PPC-DARWIN:#define __INT8_FMTd__ "hhd"
6811// PPC-DARWIN:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006812// PPC-DARWIN:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006813// PPC-DARWIN:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006814// PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006815// PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
6816// PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
David Fang072d47b2013-05-16 17:51:48 +00006817// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
6818// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
6819// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006820// PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
6821// PPC-DARWIN:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006822// PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
David Fang072d47b2013-05-16 17:51:48 +00006823// PPC-DARWIN:#define __INTPTR_TYPE__ long int
6824// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006825// PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
6826// PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006827// PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
6828// PPC-DARWIN:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006829// PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
6830// PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006831// PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
6832// PPC-DARWIN:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006833// PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
6834// PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006835// PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
6836// PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006837// PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
6838// PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006839// PPC-DARWIN:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006840// PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006841// PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
6842// PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006843// PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
6844// PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006845// PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
6846// PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006847// PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
6848// PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006849// PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
6850// PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006851// PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6852// PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006853// PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
6854// PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006855// PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006856// PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
David Fang072d47b2013-05-16 17:51:48 +00006857// PPC-DARWIN:#define __INT_MAX__ 2147483647
6858// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6859// PPC-DARWIN:#define __LDBL_DIG__ 31
6860// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6861// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
6862// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
6863// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
6864// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
6865// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
6866// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
6867// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6868// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
6869// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
6870// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006871// PPC-DARWIN:#define __LONGDOUBLE128 1
David Fang072d47b2013-05-16 17:51:48 +00006872// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
6873// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
6874// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
6875// PPC-DARWIN:#define __MACH__ 1
6876// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
6877// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
6878// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
6879// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
6880// PPC-DARWIN:#define __POINTER_WIDTH__ 32
6881// PPC-DARWIN:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006882// PPC-DARWIN:#define __PPC__ 1
David Fang072d47b2013-05-16 17:51:48 +00006883// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
6884// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006885// PPC-DARWIN:#define __REGISTER_PREFIX__
David Fang072d47b2013-05-16 17:51:48 +00006886// PPC-DARWIN:#define __SCHAR_MAX__ 127
6887// PPC-DARWIN:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006888// PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006889// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
6890// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
6891// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
6892// PPC-DARWIN:#define __SIZEOF_INT__ 4
6893// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
6894// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
6895// PPC-DARWIN:#define __SIZEOF_LONG__ 4
6896// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
6897// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
6898// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
6899// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
6900// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
6901// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
6902// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
6903// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
6904// PPC-DARWIN:#define __SIZE_WIDTH__ 32
6905// PPC-DARWIN:#define __STDC_HOSTED__ 0
Richard Smithab506ad2014-10-20 23:26:58 +00006906// PPC-DARWIN:#define __STDC_VERSION__ 201112L
David Fang072d47b2013-05-16 17:51:48 +00006907// PPC-DARWIN:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006908// PPC-DARWIN:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006909// PPC-DARWIN:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006910// PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
6911// PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
6912// PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
6913// PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
6914// PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
6915// PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
6916// PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006917// PPC-DARWIN:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006918// PPC-DARWIN:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006919// PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006920// PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006921// PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
David Fang072d47b2013-05-16 17:51:48 +00006922// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006923// PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006924// PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006925// PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006926// PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006927// PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006928// PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
6929// PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
6930// PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
6931// PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6932// PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006933// PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006934// PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006935// PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006936// PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
6937// PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
6938// PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
6939// PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6940// PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006941// PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006942// PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
David Fang072d47b2013-05-16 17:51:48 +00006943// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
6944// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
6945// PPC-DARWIN:#define __WCHAR_TYPE__ int
6946// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
6947// PPC-DARWIN:#define __WINT_TYPE__ int
6948// PPC-DARWIN:#define __WINT_WIDTH__ 32
6949// PPC-DARWIN:#define __powerpc__ 1
6950// PPC-DARWIN:#define __ppc__ 1
Eric Christopherdec1b922017-03-16 22:31:07 +00006951
6952// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-DARWIN %s
6953// PPC64-DARWIN:#define __STRUCT_PARM_ALIGN__ 16
6954
James Y Knightc97efa42016-02-11 16:51:29 +00006955// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
6956// 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 +00006957//
Matt Arsenaultf333de32016-09-07 07:08:02 +00006958// AMDGPU:#define __ENDIAN_LITTLE__ 1
Tom Stellard22041372015-07-17 13:16:52 +00006959// AMDGPU:#define cl_khr_byte_addressable_store 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006960// AMDGCN:#define cl_khr_fp64 1
Tom Stellard22041372015-07-17 13:16:52 +00006961// AMDGPU:#define cl_khr_global_int32_base_atomics 1
6962// AMDGPU:#define cl_khr_global_int32_extended_atomics 1
6963// AMDGPU:#define cl_khr_local_int32_base_atomics 1
6964// AMDGPU:#define cl_khr_local_int32_extended_atomics 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006965
James Y Knightc97efa42016-02-11 16:51:29 +00006966// 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 +00006967// 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 +00006968//
Tim Northovera6a19f12015-02-06 01:25:07 +00006969// S390X:#define __BIGGEST_ALIGNMENT__ 8
Ulrich Weigand47445072013-05-06 16:26:41 +00006970// S390X:#define __CHAR16_TYPE__ unsigned short
6971// S390X:#define __CHAR32_TYPE__ unsigned int
6972// S390X:#define __CHAR_BIT__ 8
6973// S390X:#define __CHAR_UNSIGNED__ 1
6974// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6975// S390X:#define __DBL_DIG__ 15
6976// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
6977// S390X:#define __DBL_HAS_DENORM__ 1
6978// S390X:#define __DBL_HAS_INFINITY__ 1
6979// S390X:#define __DBL_HAS_QUIET_NAN__ 1
6980// S390X:#define __DBL_MANT_DIG__ 53
6981// S390X:#define __DBL_MAX_10_EXP__ 308
6982// S390X:#define __DBL_MAX_EXP__ 1024
6983// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
6984// S390X:#define __DBL_MIN_10_EXP__ (-307)
6985// S390X:#define __DBL_MIN_EXP__ (-1021)
6986// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006987// S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ulrich Weigand47445072013-05-06 16:26:41 +00006988// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6989// S390X:#define __FLT_DIG__ 6
6990// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
6991// S390X:#define __FLT_EVAL_METHOD__ 0
6992// S390X:#define __FLT_HAS_DENORM__ 1
6993// S390X:#define __FLT_HAS_INFINITY__ 1
6994// S390X:#define __FLT_HAS_QUIET_NAN__ 1
6995// S390X:#define __FLT_MANT_DIG__ 24
6996// S390X:#define __FLT_MAX_10_EXP__ 38
6997// S390X:#define __FLT_MAX_EXP__ 128
6998// S390X:#define __FLT_MAX__ 3.40282347e+38F
6999// S390X:#define __FLT_MIN_10_EXP__ (-37)
7000// S390X:#define __FLT_MIN_EXP__ (-125)
7001// S390X:#define __FLT_MIN__ 1.17549435e-38F
7002// S390X:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007003// S390X:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007004// S390X:#define __INT16_FMTd__ "hd"
7005// S390X:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007006// S390X:#define __INT16_MAX__ 32767
Ulrich Weigand47445072013-05-06 16:26:41 +00007007// S390X:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007008// S390X:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007009// S390X:#define __INT32_FMTd__ "d"
7010// S390X:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007011// S390X:#define __INT32_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00007012// S390X:#define __INT32_TYPE__ int
Ulrich Weigand881497a2015-03-30 13:50:21 +00007013// S390X:#define __INT64_C_SUFFIX__ L
7014// S390X:#define __INT64_FMTd__ "ld"
7015// S390X:#define __INT64_FMTi__ "li"
7016// S390X:#define __INT64_MAX__ 9223372036854775807L
7017// S390X:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007018// S390X:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007019// S390X:#define __INT8_FMTd__ "hhd"
7020// S390X:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007021// S390X:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007022// S390X:#define __INT8_TYPE__ signed char
Ulrich Weigand881497a2015-03-30 13:50:21 +00007023// S390X:#define __INTMAX_C_SUFFIX__ L
7024// S390X:#define __INTMAX_FMTd__ "ld"
7025// S390X:#define __INTMAX_FMTi__ "li"
7026// S390X:#define __INTMAX_MAX__ 9223372036854775807L
7027// S390X:#define __INTMAX_TYPE__ long int
Ulrich Weigand47445072013-05-06 16:26:41 +00007028// S390X:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007029// S390X:#define __INTPTR_FMTd__ "ld"
7030// S390X:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007031// S390X:#define __INTPTR_MAX__ 9223372036854775807L
Ulrich Weigand47445072013-05-06 16:26:41 +00007032// S390X:#define __INTPTR_TYPE__ long int
7033// S390X:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007034// S390X:#define __INT_FAST16_FMTd__ "hd"
7035// S390X:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007036// S390X:#define __INT_FAST16_MAX__ 32767
7037// S390X:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007038// S390X:#define __INT_FAST32_FMTd__ "d"
7039// S390X:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007040// S390X:#define __INT_FAST32_MAX__ 2147483647
7041// S390X:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007042// S390X:#define __INT_FAST64_FMTd__ "ld"
7043// S390X:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007044// S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
7045// S390X:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007046// S390X:#define __INT_FAST8_FMTd__ "hhd"
7047// S390X:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007048// S390X:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007049// S390X:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007050// S390X:#define __INT_LEAST16_FMTd__ "hd"
7051// S390X:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007052// S390X:#define __INT_LEAST16_MAX__ 32767
7053// S390X:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007054// S390X:#define __INT_LEAST32_FMTd__ "d"
7055// S390X:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007056// S390X:#define __INT_LEAST32_MAX__ 2147483647
7057// S390X:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007058// S390X:#define __INT_LEAST64_FMTd__ "ld"
7059// S390X:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007060// S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
7061// S390X:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007062// S390X:#define __INT_LEAST8_FMTd__ "hhd"
7063// S390X:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007064// S390X:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007065// S390X:#define __INT_LEAST8_TYPE__ signed char
Ulrich Weigand47445072013-05-06 16:26:41 +00007066// S390X:#define __INT_MAX__ 2147483647
7067// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
7068// S390X:#define __LDBL_DIG__ 33
7069// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
7070// S390X:#define __LDBL_HAS_DENORM__ 1
7071// S390X:#define __LDBL_HAS_INFINITY__ 1
7072// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
7073// S390X:#define __LDBL_MANT_DIG__ 113
7074// S390X:#define __LDBL_MAX_10_EXP__ 4932
7075// S390X:#define __LDBL_MAX_EXP__ 16384
7076// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
7077// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
7078// S390X:#define __LDBL_MIN_EXP__ (-16381)
7079// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
7080// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
7081// S390X:#define __LONG_MAX__ 9223372036854775807L
7082// S390X:#define __NO_INLINE__ 1
7083// S390X:#define __POINTER_WIDTH__ 64
7084// S390X:#define __PTRDIFF_TYPE__ long int
7085// S390X:#define __PTRDIFF_WIDTH__ 64
7086// S390X:#define __SCHAR_MAX__ 127
7087// S390X:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007088// S390X:#define __SIG_ATOMIC_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00007089// S390X:#define __SIG_ATOMIC_WIDTH__ 32
7090// S390X:#define __SIZEOF_DOUBLE__ 8
7091// S390X:#define __SIZEOF_FLOAT__ 4
7092// S390X:#define __SIZEOF_INT__ 4
7093// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
7094// S390X:#define __SIZEOF_LONG_LONG__ 8
7095// S390X:#define __SIZEOF_LONG__ 8
7096// S390X:#define __SIZEOF_POINTER__ 8
7097// S390X:#define __SIZEOF_PTRDIFF_T__ 8
7098// S390X:#define __SIZEOF_SHORT__ 2
7099// S390X:#define __SIZEOF_SIZE_T__ 8
7100// S390X:#define __SIZEOF_WCHAR_T__ 4
7101// S390X:#define __SIZEOF_WINT_T__ 4
7102// S390X:#define __SIZE_TYPE__ long unsigned int
7103// S390X:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00007104// S390X-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007105// S390X:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007106// S390X:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007107// S390X:#define __UINT16_TYPE__ unsigned short
7108// S390X:#define __UINT32_C_SUFFIX__ U
7109// S390X:#define __UINT32_MAX__ 4294967295U
7110// S390X:#define __UINT32_TYPE__ unsigned int
Ulrich Weigand881497a2015-03-30 13:50:21 +00007111// S390X:#define __UINT64_C_SUFFIX__ UL
7112// S390X:#define __UINT64_MAX__ 18446744073709551615UL
7113// S390X:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007114// S390X:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007115// S390X:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007116// S390X:#define __UINT8_TYPE__ unsigned char
Ulrich Weigand881497a2015-03-30 13:50:21 +00007117// S390X:#define __UINTMAX_C_SUFFIX__ UL
7118// S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
7119// S390X:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007120// S390X:#define __UINTMAX_WIDTH__ 64
7121// S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
7122// S390X:#define __UINTPTR_TYPE__ long unsigned int
7123// S390X:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007124// S390X:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007125// S390X:#define __UINT_FAST16_TYPE__ unsigned short
7126// S390X:#define __UINT_FAST32_MAX__ 4294967295U
7127// S390X:#define __UINT_FAST32_TYPE__ unsigned int
7128// S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7129// S390X:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007130// S390X:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007131// S390X:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007132// S390X:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007133// S390X:#define __UINT_LEAST16_TYPE__ unsigned short
7134// S390X:#define __UINT_LEAST32_MAX__ 4294967295U
7135// S390X:#define __UINT_LEAST32_TYPE__ unsigned int
7136// S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7137// S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007138// S390X:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007139// S390X:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007140// S390X:#define __USER_LABEL_PREFIX__
Ulrich Weigand47445072013-05-06 16:26:41 +00007141// S390X:#define __WCHAR_MAX__ 2147483647
7142// S390X:#define __WCHAR_TYPE__ int
7143// S390X:#define __WCHAR_WIDTH__ 32
7144// S390X:#define __WINT_TYPE__ int
7145// S390X:#define __WINT_WIDTH__ 32
7146// S390X:#define __s390__ 1
7147// S390X:#define __s390x__ 1
7148//
James Y Knightb214cbc2016-03-04 19:00:41 +00007149// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7150// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7151// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
7152// 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 +00007153// 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
7154// 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 +00007155//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007156// SPARC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007157// SPARC:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00007158// SPARC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007159// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007160// SPARC:#define __CHAR16_TYPE__ unsigned short
7161// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007162// SPARC:#define __CHAR_BIT__ 8
7163// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7164// SPARC:#define __DBL_DIG__ 15
7165// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
7166// SPARC:#define __DBL_HAS_DENORM__ 1
7167// SPARC:#define __DBL_HAS_INFINITY__ 1
7168// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
7169// SPARC:#define __DBL_MANT_DIG__ 53
7170// SPARC:#define __DBL_MAX_10_EXP__ 308
7171// SPARC:#define __DBL_MAX_EXP__ 1024
7172// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
7173// SPARC:#define __DBL_MIN_10_EXP__ (-307)
7174// SPARC:#define __DBL_MIN_EXP__ (-1021)
7175// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007176// SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007177// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7178// SPARC:#define __FLT_DIG__ 6
7179// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
7180// SPARC:#define __FLT_EVAL_METHOD__ 0
7181// SPARC:#define __FLT_HAS_DENORM__ 1
7182// SPARC:#define __FLT_HAS_INFINITY__ 1
7183// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
7184// SPARC:#define __FLT_MANT_DIG__ 24
7185// SPARC:#define __FLT_MAX_10_EXP__ 38
7186// SPARC:#define __FLT_MAX_EXP__ 128
7187// SPARC:#define __FLT_MAX__ 3.40282347e+38F
7188// SPARC:#define __FLT_MIN_10_EXP__ (-37)
7189// SPARC:#define __FLT_MIN_EXP__ (-125)
7190// SPARC:#define __FLT_MIN__ 1.17549435e-38F
7191// SPARC:#define __FLT_RADIX__ 2
Douglas Katzman13f4a912016-11-09 15:43:51 +00007192// SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
James Y Knightc97efa42016-02-11 16:51:29 +00007193// SPARC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007194// SPARC:#define __INT16_FMTd__ "hd"
7195// SPARC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007196// SPARC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007197// SPARC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007198// SPARC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007199// SPARC:#define __INT32_FMTd__ "d"
7200// SPARC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007201// SPARC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007202// SPARC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007203// SPARC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007204// SPARC:#define __INT64_FMTd__ "lld"
7205// SPARC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007206// SPARC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00007207// SPARC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007208// SPARC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007209// SPARC:#define __INT8_FMTd__ "hhd"
7210// SPARC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007211// SPARC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007212// SPARC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007213// SPARC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007214// SPARC:#define __INTMAX_FMTd__ "lld"
7215// SPARC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00007216// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00007217// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007218// SPARC:#define __INTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007219// SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
7220// SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
7221// SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
7222// SPARC-DEFAULT:#define __INTPTR_TYPE__ int
7223// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
7224// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
7225// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
7226// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007227// SPARC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007228// SPARC:#define __INT_FAST16_FMTd__ "hd"
7229// SPARC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007230// SPARC:#define __INT_FAST16_MAX__ 32767
7231// SPARC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007232// SPARC:#define __INT_FAST32_FMTd__ "d"
7233// SPARC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007234// SPARC:#define __INT_FAST32_MAX__ 2147483647
7235// SPARC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007236// SPARC:#define __INT_FAST64_FMTd__ "lld"
7237// SPARC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007238// SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
7239// SPARC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007240// SPARC:#define __INT_FAST8_FMTd__ "hhd"
7241// SPARC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007242// SPARC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007243// SPARC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007244// SPARC:#define __INT_LEAST16_FMTd__ "hd"
7245// SPARC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007246// SPARC:#define __INT_LEAST16_MAX__ 32767
7247// SPARC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007248// SPARC:#define __INT_LEAST32_FMTd__ "d"
7249// SPARC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007250// SPARC:#define __INT_LEAST32_MAX__ 2147483647
7251// SPARC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007252// SPARC:#define __INT_LEAST64_FMTd__ "lld"
7253// SPARC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007254// SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7255// SPARC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007256// SPARC:#define __INT_LEAST8_FMTd__ "hhd"
7257// SPARC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007258// SPARC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007259// SPARC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007260// SPARC:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007261// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00007262// SPARC:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007263// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00007264// SPARC:#define __LDBL_HAS_DENORM__ 1
7265// SPARC:#define __LDBL_HAS_INFINITY__ 1
7266// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
7267// SPARC:#define __LDBL_MANT_DIG__ 53
7268// SPARC:#define __LDBL_MAX_10_EXP__ 308
7269// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007270// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00007271// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
7272// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007273// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00007274// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
7275// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007276// SPARC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007277// SPARC:#define __POINTER_WIDTH__ 32
James Y Knightb214cbc2016-03-04 19:00:41 +00007278// SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
7279// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007280// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00007281// SPARC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007282// SPARC:#define __SCHAR_MAX__ 127
7283// SPARC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007284// SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007285// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007286// SPARC:#define __SIZEOF_DOUBLE__ 8
7287// SPARC:#define __SIZEOF_FLOAT__ 4
7288// SPARC:#define __SIZEOF_INT__ 4
7289// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
7290// SPARC:#define __SIZEOF_LONG_LONG__ 8
7291// SPARC:#define __SIZEOF_LONG__ 4
7292// SPARC:#define __SIZEOF_POINTER__ 4
7293// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
7294// SPARC:#define __SIZEOF_SHORT__ 2
7295// SPARC:#define __SIZEOF_SIZE_T__ 4
7296// SPARC:#define __SIZEOF_WCHAR_T__ 4
7297// SPARC:#define __SIZEOF_WINT_T__ 4
James Y Knightb214cbc2016-03-04 19:00:41 +00007298// SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
7299// SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
7300// SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
7301// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007302// SPARC:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007303// SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
7304// SPARC-NETOPENBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007305// SPARC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007306// SPARC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007307// SPARC:#define __UINT16_TYPE__ unsigned short
7308// SPARC:#define __UINT32_C_SUFFIX__ U
7309// SPARC:#define __UINT32_MAX__ 4294967295U
7310// SPARC:#define __UINT32_TYPE__ unsigned int
7311// SPARC:#define __UINT64_C_SUFFIX__ ULL
7312// SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
7313// SPARC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007314// SPARC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007315// SPARC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007316// SPARC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007317// SPARC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00007318// SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00007319// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007320// SPARC:#define __UINTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007321// SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
7322// SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
7323// SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
7324// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007325// SPARC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007326// SPARC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007327// SPARC:#define __UINT_FAST16_TYPE__ unsigned short
7328// SPARC:#define __UINT_FAST32_MAX__ 4294967295U
7329// SPARC:#define __UINT_FAST32_TYPE__ unsigned int
7330// SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7331// SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007332// SPARC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007333// SPARC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007334// SPARC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007335// SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
7336// SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
7337// SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
7338// SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7339// SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007340// SPARC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007341// SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007342// SPARC:#define __USER_LABEL_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00007343// SPARC:#define __VERSION__ "4.2.1 Compatible{{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +00007344// SPARC:#define __WCHAR_MAX__ 2147483647
7345// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007346// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007347// SPARC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007348// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007349// SPARC:#define __sparc 1
7350// SPARC:#define __sparc__ 1
7351// SPARC:#define __sparcv8 1
7352// SPARC:#define sparc 1
James Y Knight4b4d19e2015-06-04 15:36:29 +00007353
James Y Knightc97efa42016-02-11 16:51:29 +00007354// 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 +00007355// 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 +00007356//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007357// TCE-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007358// TCE:#define __BIGGEST_ALIGNMENT__ 4
Robert Lytton2c942c62014-03-10 12:06:29 +00007359// TCE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007360// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007361// TCE:#define __CHAR16_TYPE__ unsigned short
7362// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007363// TCE:#define __CHAR_BIT__ 8
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007364// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnere963d092009-10-29 04:55:36 +00007365// TCE:#define __DBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007366// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnere963d092009-10-29 04:55:36 +00007367// TCE:#define __DBL_HAS_DENORM__ 1
7368// TCE:#define __DBL_HAS_INFINITY__ 1
7369// TCE:#define __DBL_HAS_QUIET_NAN__ 1
7370// TCE:#define __DBL_MANT_DIG__ 24
7371// TCE:#define __DBL_MAX_10_EXP__ 38
7372// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007373// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnere963d092009-10-29 04:55:36 +00007374// TCE:#define __DBL_MIN_10_EXP__ (-37)
7375// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007376// TCE:#define __DBL_MIN__ 1.17549435e-38
Ed Schouten49920992015-02-23 09:12:31 +00007377// TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007378// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7379// TCE:#define __FLT_DIG__ 6
7380// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
7381// TCE:#define __FLT_EVAL_METHOD__ 0
7382// TCE:#define __FLT_HAS_DENORM__ 1
7383// TCE:#define __FLT_HAS_INFINITY__ 1
7384// TCE:#define __FLT_HAS_QUIET_NAN__ 1
7385// TCE:#define __FLT_MANT_DIG__ 24
7386// TCE:#define __FLT_MAX_10_EXP__ 38
7387// TCE:#define __FLT_MAX_EXP__ 128
7388// TCE:#define __FLT_MAX__ 3.40282347e+38F
7389// TCE:#define __FLT_MIN_10_EXP__ (-37)
7390// TCE:#define __FLT_MIN_EXP__ (-125)
7391// TCE:#define __FLT_MIN__ 1.17549435e-38F
7392// TCE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007393// TCE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007394// TCE:#define __INT16_FMTd__ "hd"
7395// TCE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007396// TCE:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007397// TCE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007398// TCE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007399// TCE:#define __INT32_FMTd__ "d"
7400// TCE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007401// TCE:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007402// TCE:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007403// TCE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007404// TCE:#define __INT8_FMTd__ "hhd"
7405// TCE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007406// TCE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007407// TCE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007408// TCE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007409// TCE:#define __INTMAX_FMTd__ "ld"
7410// TCE:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007411// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00007412// TCE:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007413// TCE:#define __INTMAX_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007414// TCE:#define __INTPTR_FMTd__ "d"
7415// TCE:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007416// TCE:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00007417// TCE:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007418// TCE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007419// TCE:#define __INT_FAST16_FMTd__ "hd"
7420// TCE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007421// TCE:#define __INT_FAST16_MAX__ 32767
7422// TCE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007423// TCE:#define __INT_FAST32_FMTd__ "d"
7424// TCE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007425// TCE:#define __INT_FAST32_MAX__ 2147483647
7426// TCE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007427// TCE:#define __INT_FAST8_FMTd__ "hhd"
7428// TCE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007429// TCE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007430// TCE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007431// TCE:#define __INT_LEAST16_FMTd__ "hd"
7432// TCE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007433// TCE:#define __INT_LEAST16_MAX__ 32767
7434// TCE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007435// TCE:#define __INT_LEAST32_FMTd__ "d"
7436// TCE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007437// TCE:#define __INT_LEAST32_MAX__ 2147483647
7438// TCE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007439// TCE:#define __INT_LEAST8_FMTd__ "hhd"
7440// TCE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007441// TCE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007442// TCE:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007443// TCE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007444// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnere963d092009-10-29 04:55:36 +00007445// TCE:#define __LDBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007446// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnere963d092009-10-29 04:55:36 +00007447// TCE:#define __LDBL_HAS_DENORM__ 1
7448// TCE:#define __LDBL_HAS_INFINITY__ 1
7449// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
7450// TCE:#define __LDBL_MANT_DIG__ 24
7451// TCE:#define __LDBL_MAX_10_EXP__ 38
7452// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007453// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnere963d092009-10-29 04:55:36 +00007454// TCE:#define __LDBL_MIN_10_EXP__ (-37)
7455// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007456// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnere963d092009-10-29 04:55:36 +00007457// TCE:#define __LONG_LONG_MAX__ 2147483647LL
7458// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007459// TCE-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007460// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00007461// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00007462// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007463// TCE:#define __SCHAR_MAX__ 127
7464// TCE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007465// TCE:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007466// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007467// TCE:#define __SIZEOF_DOUBLE__ 4
7468// TCE:#define __SIZEOF_FLOAT__ 4
7469// TCE:#define __SIZEOF_INT__ 4
7470// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
7471// TCE:#define __SIZEOF_LONG_LONG__ 4
7472// TCE:#define __SIZEOF_LONG__ 4
7473// TCE:#define __SIZEOF_POINTER__ 4
7474// TCE:#define __SIZEOF_PTRDIFF_T__ 4
7475// TCE:#define __SIZEOF_SHORT__ 2
7476// TCE:#define __SIZEOF_SIZE_T__ 4
7477// TCE:#define __SIZEOF_WCHAR_T__ 4
7478// TCE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007479// TCE:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00007480// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007481// TCE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007482// TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
Chris Lattnere963d092009-10-29 04:55:36 +00007483// TCE:#define __TCE_V1__ 1
7484// TCE:#define __TCE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007485// TCE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007486// TCE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007487// TCE:#define __UINT16_TYPE__ unsigned short
7488// TCE:#define __UINT32_C_SUFFIX__ U
7489// TCE:#define __UINT32_MAX__ 4294967295U
7490// TCE:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007491// TCE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007492// TCE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007493// TCE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007494// TCE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007495// TCE:#define __UINTMAX_MAX__ 4294967295UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007496// TCE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007497// TCE:#define __UINTMAX_WIDTH__ 32
7498// TCE:#define __UINTPTR_MAX__ 4294967295U
7499// TCE:#define __UINTPTR_TYPE__ unsigned int
7500// TCE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007501// TCE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007502// TCE:#define __UINT_FAST16_TYPE__ unsigned short
7503// TCE:#define __UINT_FAST32_MAX__ 4294967295U
7504// TCE:#define __UINT_FAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007505// TCE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007506// TCE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007507// TCE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007508// TCE:#define __UINT_LEAST16_TYPE__ unsigned short
7509// TCE:#define __UINT_LEAST32_MAX__ 4294967295U
7510// TCE:#define __UINT_LEAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007511// TCE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007512// TCE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007513// TCE:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007514// TCE:#define __WCHAR_MAX__ 2147483647
7515// TCE:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007516// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007517// TCE:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007518// TCE:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007519// TCE:#define __tce 1
7520// TCE:#define __tce__ 1
7521// TCE:#define tce 1
7522//
James Y Knightc97efa42016-02-11 16:51:29 +00007523// 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 +00007524// 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 +00007525//
7526// X86_64:#define _LP64 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007527// X86_64-NOT:#define _LP32 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007528// X86_64:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007529// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007530// X86_64:#define __CHAR16_TYPE__ unsigned short
7531// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007532// X86_64:#define __CHAR_BIT__ 8
7533// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7534// X86_64:#define __DBL_DIG__ 15
7535// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
7536// X86_64:#define __DBL_HAS_DENORM__ 1
7537// X86_64:#define __DBL_HAS_INFINITY__ 1
7538// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
7539// X86_64:#define __DBL_MANT_DIG__ 53
7540// X86_64:#define __DBL_MAX_10_EXP__ 308
7541// X86_64:#define __DBL_MAX_EXP__ 1024
7542// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
7543// X86_64:#define __DBL_MIN_10_EXP__ (-307)
7544// X86_64:#define __DBL_MIN_EXP__ (-1021)
7545// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007546// X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007547// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7548// X86_64:#define __FLT_DIG__ 6
7549// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
7550// X86_64:#define __FLT_EVAL_METHOD__ 0
7551// X86_64:#define __FLT_HAS_DENORM__ 1
7552// X86_64:#define __FLT_HAS_INFINITY__ 1
7553// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
7554// X86_64:#define __FLT_MANT_DIG__ 24
7555// X86_64:#define __FLT_MAX_10_EXP__ 38
7556// X86_64:#define __FLT_MAX_EXP__ 128
7557// X86_64:#define __FLT_MAX__ 3.40282347e+38F
7558// X86_64:#define __FLT_MIN_10_EXP__ (-37)
7559// X86_64:#define __FLT_MIN_EXP__ (-125)
7560// X86_64:#define __FLT_MIN__ 1.17549435e-38F
7561// X86_64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007562// X86_64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007563// X86_64:#define __INT16_FMTd__ "hd"
7564// X86_64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007565// X86_64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007566// X86_64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007567// X86_64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007568// X86_64:#define __INT32_FMTd__ "d"
7569// X86_64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007570// X86_64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007571// X86_64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007572// X86_64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007573// X86_64:#define __INT64_FMTd__ "ld"
7574// X86_64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007575// X86_64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00007576// X86_64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007577// X86_64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007578// X86_64:#define __INT8_FMTd__ "hhd"
7579// X86_64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007580// X86_64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007581// X86_64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007582// X86_64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007583// X86_64:#define __INTMAX_FMTd__ "ld"
7584// X86_64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007585// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007586// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007587// X86_64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007588// X86_64:#define __INTPTR_FMTd__ "ld"
7589// X86_64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007590// X86_64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007591// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007592// X86_64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007593// X86_64:#define __INT_FAST16_FMTd__ "hd"
7594// X86_64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007595// X86_64:#define __INT_FAST16_MAX__ 32767
7596// X86_64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007597// X86_64:#define __INT_FAST32_FMTd__ "d"
7598// X86_64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007599// X86_64:#define __INT_FAST32_MAX__ 2147483647
7600// X86_64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007601// X86_64:#define __INT_FAST64_FMTd__ "ld"
7602// X86_64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007603// X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
7604// X86_64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007605// X86_64:#define __INT_FAST8_FMTd__ "hhd"
7606// X86_64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007607// X86_64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007608// X86_64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007609// X86_64:#define __INT_LEAST16_FMTd__ "hd"
7610// X86_64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007611// X86_64:#define __INT_LEAST16_MAX__ 32767
7612// X86_64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007613// X86_64:#define __INT_LEAST32_FMTd__ "d"
7614// X86_64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007615// X86_64:#define __INT_LEAST32_MAX__ 2147483647
7616// X86_64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007617// X86_64:#define __INT_LEAST64_FMTd__ "ld"
7618// X86_64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007619// X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
7620// X86_64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007621// X86_64:#define __INT_LEAST8_FMTd__ "hhd"
7622// X86_64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007623// X86_64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007624// X86_64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007625// X86_64:#define __INT_MAX__ 2147483647
7626// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7627// X86_64:#define __LDBL_DIG__ 18
7628// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7629// X86_64:#define __LDBL_HAS_DENORM__ 1
7630// X86_64:#define __LDBL_HAS_INFINITY__ 1
7631// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
7632// X86_64:#define __LDBL_MANT_DIG__ 64
7633// X86_64:#define __LDBL_MAX_10_EXP__ 4932
7634// X86_64:#define __LDBL_MAX_EXP__ 16384
7635// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7636// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
7637// X86_64:#define __LDBL_MIN_EXP__ (-16381)
7638// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7639// X86_64:#define __LITTLE_ENDIAN__ 1
7640// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
7641// X86_64:#define __LONG_MAX__ 9223372036854775807L
7642// X86_64:#define __LP64__ 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007643// X86_64-NOT:#define __ILP32__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007644// X86_64:#define __MMX__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007645// X86_64:#define __NO_MATH_INLINES 1
7646// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00007647// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007648// X86_64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007649// X86_64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007650// X86_64:#define __SCHAR_MAX__ 127
7651// X86_64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007652// X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007653// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007654// X86_64:#define __SIZEOF_DOUBLE__ 8
7655// X86_64:#define __SIZEOF_FLOAT__ 4
7656// X86_64:#define __SIZEOF_INT__ 4
7657// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
7658// X86_64:#define __SIZEOF_LONG_LONG__ 8
7659// X86_64:#define __SIZEOF_LONG__ 8
7660// X86_64:#define __SIZEOF_POINTER__ 8
7661// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
7662// X86_64:#define __SIZEOF_SHORT__ 2
7663// X86_64:#define __SIZEOF_SIZE_T__ 8
7664// X86_64:#define __SIZEOF_WCHAR_T__ 4
7665// X86_64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007666// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00007667// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007668// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00007669// X86_64:#define __SSE2_MATH__ 1
7670// X86_64:#define __SSE2__ 1
7671// X86_64:#define __SSE_MATH__ 1
7672// X86_64:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007673// X86_64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00007674// X86_64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007675// X86_64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007676// X86_64:#define __UINT16_TYPE__ unsigned short
7677// X86_64:#define __UINT32_C_SUFFIX__ U
7678// X86_64:#define __UINT32_MAX__ 4294967295U
7679// X86_64:#define __UINT32_TYPE__ unsigned int
7680// X86_64:#define __UINT64_C_SUFFIX__ UL
7681// X86_64:#define __UINT64_MAX__ 18446744073709551615UL
7682// X86_64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007683// X86_64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007684// X86_64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007685// X86_64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007686// X86_64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007687// X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007688// X86_64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007689// X86_64:#define __UINTMAX_WIDTH__ 64
7690// X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
7691// X86_64:#define __UINTPTR_TYPE__ long unsigned int
7692// X86_64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007693// X86_64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007694// X86_64:#define __UINT_FAST16_TYPE__ unsigned short
7695// X86_64:#define __UINT_FAST32_MAX__ 4294967295U
7696// X86_64:#define __UINT_FAST32_TYPE__ unsigned int
7697// X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7698// X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007699// X86_64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007700// X86_64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007701// X86_64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007702// X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
7703// X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
7704// X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
7705// X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7706// X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007707// X86_64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007708// X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007709// X86_64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007710// X86_64:#define __WCHAR_MAX__ 2147483647
7711// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007712// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007713// X86_64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007714// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007715// X86_64:#define __amd64 1
7716// X86_64:#define __amd64__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007717// X86_64:#define __x86_64 1
7718// X86_64:#define __x86_64__ 1
7719//
James Y Knightc97efa42016-02-11 16:51:29 +00007720// 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 +00007721//
7722// X86_64H:#define __x86_64 1
7723// X86_64H:#define __x86_64__ 1
7724// X86_64H:#define __x86_64h 1
7725// X86_64H:#define __x86_64h__ 1
7726
James Y Knightc97efa42016-02-11 16:51:29 +00007727// 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 +00007728// 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 +00007729//
7730// X32:#define _ILP32 1
7731// X32-NOT:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007732// X32:#define __BIGGEST_ALIGNMENT__ 16
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007733// X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7734// X32:#define __CHAR16_TYPE__ unsigned short
7735// X32:#define __CHAR32_TYPE__ unsigned int
7736// X32:#define __CHAR_BIT__ 8
7737// X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7738// X32:#define __DBL_DIG__ 15
7739// X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
7740// X32:#define __DBL_HAS_DENORM__ 1
7741// X32:#define __DBL_HAS_INFINITY__ 1
7742// X32:#define __DBL_HAS_QUIET_NAN__ 1
7743// X32:#define __DBL_MANT_DIG__ 53
7744// X32:#define __DBL_MAX_10_EXP__ 308
7745// X32:#define __DBL_MAX_EXP__ 1024
7746// X32:#define __DBL_MAX__ 1.7976931348623157e+308
7747// X32:#define __DBL_MIN_10_EXP__ (-307)
7748// X32:#define __DBL_MIN_EXP__ (-1021)
7749// X32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007750// X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007751// X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7752// X32:#define __FLT_DIG__ 6
7753// X32:#define __FLT_EPSILON__ 1.19209290e-7F
7754// X32:#define __FLT_EVAL_METHOD__ 0
7755// X32:#define __FLT_HAS_DENORM__ 1
7756// X32:#define __FLT_HAS_INFINITY__ 1
7757// X32:#define __FLT_HAS_QUIET_NAN__ 1
7758// X32:#define __FLT_MANT_DIG__ 24
7759// X32:#define __FLT_MAX_10_EXP__ 38
7760// X32:#define __FLT_MAX_EXP__ 128
7761// X32:#define __FLT_MAX__ 3.40282347e+38F
7762// X32:#define __FLT_MIN_10_EXP__ (-37)
7763// X32:#define __FLT_MIN_EXP__ (-125)
7764// X32:#define __FLT_MIN__ 1.17549435e-38F
7765// X32:#define __FLT_RADIX__ 2
7766// X32:#define __ILP32__ 1
7767// X32-NOT:#define __LP64__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007768// X32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007769// X32:#define __INT16_FMTd__ "hd"
7770// X32:#define __INT16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007771// X32:#define __INT16_MAX__ 32767
7772// X32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007773// X32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007774// X32:#define __INT32_FMTd__ "d"
7775// X32:#define __INT32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007776// X32:#define __INT32_MAX__ 2147483647
7777// X32:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007778// X32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007779// X32:#define __INT64_FMTd__ "lld"
7780// X32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007781// X32:#define __INT64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007782// X32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007783// X32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007784// X32:#define __INT8_FMTd__ "hhd"
7785// X32:#define __INT8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007786// X32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007787// X32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007788// X32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007789// X32:#define __INTMAX_FMTd__ "lld"
7790// X32:#define __INTMAX_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007791// X32:#define __INTMAX_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007792// X32:#define __INTMAX_TYPE__ long long int
7793// X32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007794// X32:#define __INTPTR_FMTd__ "d"
7795// X32:#define __INTPTR_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007796// X32:#define __INTPTR_MAX__ 2147483647
7797// X32:#define __INTPTR_TYPE__ int
7798// X32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007799// X32:#define __INT_FAST16_FMTd__ "hd"
7800// X32:#define __INT_FAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007801// X32:#define __INT_FAST16_MAX__ 32767
7802// X32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007803// X32:#define __INT_FAST32_FMTd__ "d"
7804// X32:#define __INT_FAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007805// X32:#define __INT_FAST32_MAX__ 2147483647
7806// X32:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007807// X32:#define __INT_FAST64_FMTd__ "lld"
7808// X32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007809// X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007810// X32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007811// X32:#define __INT_FAST8_FMTd__ "hhd"
7812// X32:#define __INT_FAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007813// X32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007814// X32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007815// X32:#define __INT_LEAST16_FMTd__ "hd"
7816// X32:#define __INT_LEAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007817// X32:#define __INT_LEAST16_MAX__ 32767
7818// X32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007819// X32:#define __INT_LEAST32_FMTd__ "d"
7820// X32:#define __INT_LEAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007821// X32:#define __INT_LEAST32_MAX__ 2147483647
7822// X32:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007823// X32:#define __INT_LEAST64_FMTd__ "lld"
7824// X32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007825// X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007826// X32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007827// X32:#define __INT_LEAST8_FMTd__ "hhd"
7828// X32:#define __INT_LEAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007829// X32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007830// X32:#define __INT_LEAST8_TYPE__ signed char
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007831// X32:#define __INT_MAX__ 2147483647
7832// X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7833// X32:#define __LDBL_DIG__ 18
7834// X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7835// X32:#define __LDBL_HAS_DENORM__ 1
7836// X32:#define __LDBL_HAS_INFINITY__ 1
7837// X32:#define __LDBL_HAS_QUIET_NAN__ 1
7838// X32:#define __LDBL_MANT_DIG__ 64
7839// X32:#define __LDBL_MAX_10_EXP__ 4932
7840// X32:#define __LDBL_MAX_EXP__ 16384
7841// X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7842// X32:#define __LDBL_MIN_10_EXP__ (-4931)
7843// X32:#define __LDBL_MIN_EXP__ (-16381)
7844// X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7845// X32:#define __LITTLE_ENDIAN__ 1
7846// X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
7847// X32:#define __LONG_MAX__ 2147483647L
7848// X32:#define __MMX__ 1
7849// X32:#define __NO_MATH_INLINES 1
7850// X32:#define __POINTER_WIDTH__ 32
7851// X32:#define __PTRDIFF_TYPE__ int
7852// X32:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00007853// X32:#define __REGISTER_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007854// X32:#define __SCHAR_MAX__ 127
7855// X32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007856// X32:#define __SIG_ATOMIC_MAX__ 2147483647
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007857// X32:#define __SIG_ATOMIC_WIDTH__ 32
7858// X32:#define __SIZEOF_DOUBLE__ 8
7859// X32:#define __SIZEOF_FLOAT__ 4
7860// X32:#define __SIZEOF_INT__ 4
7861// X32:#define __SIZEOF_LONG_DOUBLE__ 16
7862// X32:#define __SIZEOF_LONG_LONG__ 8
7863// X32:#define __SIZEOF_LONG__ 4
7864// X32:#define __SIZEOF_POINTER__ 4
7865// X32:#define __SIZEOF_PTRDIFF_T__ 4
7866// X32:#define __SIZEOF_SHORT__ 2
7867// X32:#define __SIZEOF_SIZE_T__ 4
7868// X32:#define __SIZEOF_WCHAR_T__ 4
7869// X32:#define __SIZEOF_WINT_T__ 4
7870// X32:#define __SIZE_MAX__ 4294967295U
7871// X32:#define __SIZE_TYPE__ unsigned int
7872// X32:#define __SIZE_WIDTH__ 32
7873// X32:#define __SSE2_MATH__ 1
7874// X32:#define __SSE2__ 1
7875// X32:#define __SSE_MATH__ 1
7876// X32:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007877// X32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
James Y Knightc97efa42016-02-11 16:51:29 +00007878// X32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007879// X32:#define __UINT16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007880// X32:#define __UINT16_TYPE__ unsigned short
7881// X32:#define __UINT32_C_SUFFIX__ U
7882// X32:#define __UINT32_MAX__ 4294967295U
7883// X32:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007884// X32:#define __UINT64_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007885// X32:#define __UINT64_MAX__ 18446744073709551615ULL
7886// X32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007887// X32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007888// X32:#define __UINT8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007889// X32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007890// X32:#define __UINTMAX_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007891// X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
7892// X32:#define __UINTMAX_TYPE__ long long unsigned int
7893// X32:#define __UINTMAX_WIDTH__ 64
7894// X32:#define __UINTPTR_MAX__ 4294967295U
7895// X32:#define __UINTPTR_TYPE__ unsigned int
7896// X32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007897// X32:#define __UINT_FAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007898// X32:#define __UINT_FAST16_TYPE__ unsigned short
7899// X32:#define __UINT_FAST32_MAX__ 4294967295U
7900// X32:#define __UINT_FAST32_TYPE__ unsigned int
7901// X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7902// X32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007903// X32:#define __UINT_FAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007904// X32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007905// X32:#define __UINT_LEAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007906// X32:#define __UINT_LEAST16_TYPE__ unsigned short
7907// X32:#define __UINT_LEAST32_MAX__ 4294967295U
7908// X32:#define __UINT_LEAST32_TYPE__ unsigned int
7909// X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7910// X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007911// X32:#define __UINT_LEAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007912// X32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007913// X32:#define __USER_LABEL_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007914// X32:#define __WCHAR_MAX__ 2147483647
7915// X32:#define __WCHAR_TYPE__ int
7916// X32:#define __WCHAR_WIDTH__ 32
7917// X32:#define __WINT_TYPE__ int
7918// X32:#define __WINT_WIDTH__ 32
7919// X32:#define __amd64 1
7920// X32:#define __amd64__ 1
7921// X32:#define __x86_64 1
7922// X32:#define __x86_64__ 1
7923//
James Y Knightc97efa42016-02-11 16:51:29 +00007924// 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 +00007925//
7926// X86_64-CLOUDABI:#define _LP64 1
7927// X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
7928// X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
7929// X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
7930// X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
7931// X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
7932// X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
7933// X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
7934// X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7935// X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
7936// X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
7937// X86_64-CLOUDABI:#define __CHAR_BIT__ 8
7938// X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
7939// X86_64-CLOUDABI:#define __CloudABI__ 1
7940// X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
7941// X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7942// X86_64-CLOUDABI:#define __DBL_DIG__ 15
7943// X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
7944// X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
7945// X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
7946// X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
7947// X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
7948// X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
7949// X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
7950// X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
7951// X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
7952// X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
7953// X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
7954// X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7955// X86_64-CLOUDABI:#define __ELF__ 1
7956// X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
7957// X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
7958// X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7959// X86_64-CLOUDABI:#define __FLT_DIG__ 6
7960// X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
7961// X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
7962// X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
7963// X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
7964// X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
7965// X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
7966// X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
7967// X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
7968// X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
7969// X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
7970// X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
7971// X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
7972// X86_64-CLOUDABI:#define __FLT_RADIX__ 2
7973// X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
7974// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
7975// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
7976// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
7977// X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
7978// X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
7979// X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
7980// X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
7981// X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
7982// X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
7983// X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
7984// X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
7985// X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
7986// X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
7987// X86_64-CLOUDABI:#define __GNUC__ 4
7988// X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
James Y Knightc97efa42016-02-11 16:51:29 +00007989// X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007990// X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
7991// X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
7992// X86_64-CLOUDABI:#define __INT16_MAX__ 32767
7993// X86_64-CLOUDABI:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007994// X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007995// X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
7996// X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
7997// X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
7998// X86_64-CLOUDABI:#define __INT32_TYPE__ int
7999// X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
8000// X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
8001// X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
8002// X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
8003// X86_64-CLOUDABI:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008004// X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008005// X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
8006// X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
8007// X86_64-CLOUDABI:#define __INT8_MAX__ 127
8008// X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
8009// X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
8010// X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
8011// X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
8012// X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
8013// X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
8014// X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
8015// X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
8016// X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
8017// X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
8018// X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
8019// X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
8020// X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
8021// X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
8022// X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
8023// X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
8024// X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
8025// X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
8026// X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
8027// X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
8028// X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
8029// X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
8030// X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
8031// X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
8032// X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
8033// X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
8034// X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
8035// X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
8036// X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
8037// X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
8038// X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
8039// X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
8040// X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
8041// X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
8042// X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
8043// X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
8044// X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
8045// X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
8046// X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
8047// X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
8048// X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
8049// X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
8050// X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
8051// X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
8052// X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
8053// X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
8054// X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8055// X86_64-CLOUDABI:#define __LDBL_DIG__ 18
8056// X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8057// X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
8058// X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
8059// X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
8060// X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
8061// X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
8062// X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
8063// X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8064// X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
8065// X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
8066// X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8067// X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
8068// X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
8069// X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
8070// X86_64-CLOUDABI:#define __LP64__ 1
8071// X86_64-CLOUDABI:#define __MMX__ 1
8072// X86_64-CLOUDABI:#define __NO_INLINE__ 1
8073// X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
8074// X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
8075// X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
8076// X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
8077// X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
8078// X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
8079// X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
8080// X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
8081// X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
8082// X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
8083// X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008084// X86_64-CLOUDABI:#define __REGISTER_PREFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008085// X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
8086// X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
8087// X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
8088// X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
8089// X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
8090// X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
8091// X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
8092// X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
8093// X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
8094// X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
8095// X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
8096// X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
8097// X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
8098// X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
8099// X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
8100// X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
8101// X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
8102// X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
8103// X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
8104// X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
8105// X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
8106// X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
8107// X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
8108// X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
8109// X86_64-CLOUDABI:#define __SSE2_MATH__ 1
8110// X86_64-CLOUDABI:#define __SSE2__ 1
8111// X86_64-CLOUDABI:#define __SSE_MATH__ 1
8112// X86_64-CLOUDABI:#define __SSE__ 1
8113// X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
8114// X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
8115// X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
8116// X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
8117// X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
8118// X86_64-CLOUDABI:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008119// X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008120// X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
8121// X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
8122// X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
8123// X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
8124// X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
8125// X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
8126// X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
8127// X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
8128// X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
8129// X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
8130// X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
8131// X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
8132// X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
8133// X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
8134// X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
8135// X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
8136// X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
8137// X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
8138// X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
8139// X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008140// X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008141// X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
8142// X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
8143// X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
8144// X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
8145// X86_64-CLOUDABI:#define __UINT8_MAX__ 255
8146// X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
8147// X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
8148// X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
8149// X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
8150// X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
8151// X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
8152// X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
8153// X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
8154// X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
8155// X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
8156// X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
8157// X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
8158// X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
8159// X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
8160// X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
8161// X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
8162// X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
8163// X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
8164// X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
8165// X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
8166// X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
8167// X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
8168// X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
8169// X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
8170// X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
8171// X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
8172// X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
8173// X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
8174// X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
8175// X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
8176// X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
8177// X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
8178// X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8179// X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
8180// X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
8181// X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
8182// X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
8183// X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
8184// X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
8185// X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
8186// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
8187// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
8188// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
8189// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
8190// X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
8191// X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
8192// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
8193// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
8194// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
8195// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
8196// X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
8197// X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
8198// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
8199// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
8200// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
8201// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
8202// X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8203// X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
8204// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
8205// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
8206// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
8207// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
8208// X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
8209// X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00008210// X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
8211// X86_64-CLOUDABI:#define __VERSION__ "4.2.1 Compatible{{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00008212// X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
8213// X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
8214// X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
8215// X86_64-CLOUDABI:#define __WINT_TYPE__ int
8216// X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
8217// X86_64-CLOUDABI:#define __amd64 1
8218// X86_64-CLOUDABI:#define __amd64__ 1
8219// X86_64-CLOUDABI:#define __clang__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008220// X86_64-CLOUDABI:#define __clang_major__ {{.*}}
8221// X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
8222// X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
8223// X86_64-CLOUDABI:#define __clang_version__ {{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00008224// X86_64-CLOUDABI:#define __llvm__ 1
8225// X86_64-CLOUDABI:#define __x86_64 1
8226// X86_64-CLOUDABI:#define __x86_64__ 1
8227//
James Y Knightc97efa42016-02-11 16:51:29 +00008228// 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 +00008229//
8230// X86_64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008231// X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00008232// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008233// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
8234// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
8235// X86_64-LINUX:#define __CHAR_BIT__ 8
8236// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8237// X86_64-LINUX:#define __DBL_DIG__ 15
8238// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
8239// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
8240// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
8241// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
8242// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
8243// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
8244// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
8245// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
8246// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
8247// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
8248// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008249// X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008250// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8251// X86_64-LINUX:#define __FLT_DIG__ 6
8252// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
8253// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
8254// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
8255// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
8256// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
8257// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
8258// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
8259// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
8260// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
8261// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
8262// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
8263// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
8264// X86_64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008265// X86_64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008266// X86_64-LINUX:#define __INT16_FMTd__ "hd"
8267// X86_64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008268// X86_64-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00008269// X86_64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008270// X86_64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008271// X86_64-LINUX:#define __INT32_FMTd__ "d"
8272// X86_64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008273// X86_64-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008274// X86_64-LINUX:#define __INT32_TYPE__ int
8275// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008276// X86_64-LINUX:#define __INT64_FMTd__ "ld"
8277// X86_64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008278// X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008279// X86_64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008280// X86_64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008281// X86_64-LINUX:#define __INT8_FMTd__ "hhd"
8282// X86_64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008283// X86_64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008284// X86_64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008285// X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008286// X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
8287// X86_64-LINUX:#define __INTMAX_FMTi__ "li"
Douglas Gregore6d6e512011-01-12 21:19:25 +00008288// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
8289// X86_64-LINUX:#define __INTMAX_TYPE__ long int
8290// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008291// X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
8292// X86_64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008293// X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008294// X86_64-LINUX:#define __INTPTR_TYPE__ long int
8295// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008296// X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
8297// X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008298// X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
8299// X86_64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008300// X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
8301// X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008302// X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
8303// X86_64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008304// X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
8305// X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008306// X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
8307// X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008308// X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
8309// X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008310// X86_64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008311// X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008312// X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
8313// X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008314// X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
8315// X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008316// X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
8317// X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008318// X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
8319// X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008320// X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
8321// X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008322// X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
8323// X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008324// X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
8325// X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008326// X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008327// X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008328// X86_64-LINUX:#define __INT_MAX__ 2147483647
8329// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8330// X86_64-LINUX:#define __LDBL_DIG__ 18
8331// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8332// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
8333// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
8334// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
8335// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
8336// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
8337// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
8338// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8339// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
8340// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
8341// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8342// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
8343// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
8344// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
8345// X86_64-LINUX:#define __LP64__ 1
8346// X86_64-LINUX:#define __MMX__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008347// X86_64-LINUX:#define __NO_MATH_INLINES 1
8348// X86_64-LINUX:#define __POINTER_WIDTH__ 64
8349// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
8350// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008351// X86_64-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008352// X86_64-LINUX:#define __SCHAR_MAX__ 127
8353// X86_64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008354// X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008355// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
8356// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
8357// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
8358// X86_64-LINUX:#define __SIZEOF_INT__ 4
8359// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
8360// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
8361// X86_64-LINUX:#define __SIZEOF_LONG__ 8
8362// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
8363// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
8364// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
8365// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
8366// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
8367// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00008368// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008369// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
8370// X86_64-LINUX:#define __SIZE_WIDTH__ 64
8371// X86_64-LINUX:#define __SSE2_MATH__ 1
8372// X86_64-LINUX:#define __SSE2__ 1
8373// X86_64-LINUX:#define __SSE_MATH__ 1
8374// X86_64-LINUX:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008375// X86_64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008376// X86_64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008377// X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
8378// X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
8379// X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
8380// X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
8381// X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
8382// X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
8383// X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008384// X86_64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008385// X86_64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008386// X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008387// X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008388// X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008389// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008390// X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
8391// X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
8392// X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
8393// X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008394// X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008395// X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
8396// X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
8397// X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
8398// X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8399// X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008400// X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008401// X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008402// X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008403// X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
8404// X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
8405// X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
8406// X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8407// X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008408// X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008409// X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008410// X86_64-LINUX:#define __USER_LABEL_PREFIX__
8411// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
8412// X86_64-LINUX:#define __WCHAR_TYPE__ int
8413// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
8414// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
8415// X86_64-LINUX:#define __WINT_WIDTH__ 32
8416// X86_64-LINUX:#define __amd64 1
8417// X86_64-LINUX:#define __amd64__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008418// X86_64-LINUX:#define __x86_64 1
8419// X86_64-LINUX:#define __x86_64__ 1
8420//
James Y Knightc97efa42016-02-11 16:51:29 +00008421// 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 +00008422//
Ed Schouten49920992015-02-23 09:12:31 +00008423// X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
8424// X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
Ed Schoutend0621462013-09-29 07:54:52 +00008425// X86_64-FREEBSD:#define __FreeBSD__ 9
8426// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
Ed Schouten49920992015-02-23 09:12:31 +00008427// X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
Ed Schoutend0621462013-09-29 07:54:52 +00008428// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
8429//
James Y Knightc97efa42016-02-11 16:51:29 +00008430// 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 +00008431//
8432// X86_64-NETBSD:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008433// X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008434// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8435// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
8436// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
8437// X86_64-NETBSD:#define __CHAR_BIT__ 8
8438// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8439// X86_64-NETBSD:#define __DBL_DIG__ 15
8440// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
8441// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
8442// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
8443// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
8444// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
8445// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
8446// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
8447// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
8448// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
8449// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
8450// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008451// X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008452// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8453// X86_64-NETBSD:#define __FLT_DIG__ 6
8454// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
8455// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
8456// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
8457// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
8458// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
8459// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
8460// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
8461// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
8462// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
8463// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
8464// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
8465// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
8466// X86_64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008467// X86_64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008468// X86_64-NETBSD:#define __INT16_FMTd__ "hd"
8469// X86_64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008470// X86_64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008471// X86_64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008472// X86_64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008473// X86_64-NETBSD:#define __INT32_FMTd__ "d"
8474// X86_64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008475// X86_64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008476// X86_64-NETBSD:#define __INT32_TYPE__ int
8477// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008478// X86_64-NETBSD:#define __INT64_FMTd__ "ld"
8479// X86_64-NETBSD:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008480// X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008481// X86_64-NETBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008482// X86_64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008483// X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
8484// X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008485// X86_64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008486// X86_64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008487// X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008488// X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
8489// X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008490// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
8491// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
8492// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008493// X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
8494// X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008495// X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008496// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
8497// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008498// X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
8499// X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008500// X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
8501// X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008502// X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
8503// X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008504// X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
8505// X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008506// X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
8507// X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008508// X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
8509// X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008510// X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
8511// X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008512// X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008513// X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008514// X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
8515// X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008516// X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
8517// X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008518// X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
8519// X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008520// X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
8521// X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008522// X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
8523// X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008524// X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
8525// X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008526// X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
8527// X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008528// X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008529// X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008530// X86_64-NETBSD:#define __INT_MAX__ 2147483647
8531// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8532// X86_64-NETBSD:#define __LDBL_DIG__ 18
8533// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8534// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
8535// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
8536// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
8537// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
8538// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
8539// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
8540// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8541// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
8542// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
8543// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8544// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
8545// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
8546// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
8547// X86_64-NETBSD:#define __LP64__ 1
8548// X86_64-NETBSD:#define __MMX__ 1
8549// X86_64-NETBSD:#define __NO_MATH_INLINES 1
8550// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
8551// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
8552// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008553// X86_64-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008554// X86_64-NETBSD:#define __SCHAR_MAX__ 127
8555// X86_64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008556// X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008557// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
8558// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
8559// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
8560// X86_64-NETBSD:#define __SIZEOF_INT__ 4
8561// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
8562// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
8563// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
8564// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
8565// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
8566// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
8567// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
8568// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
8569// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
8570// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
8571// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
8572// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
8573// X86_64-NETBSD:#define __SSE2_MATH__ 1
8574// X86_64-NETBSD:#define __SSE2__ 1
8575// X86_64-NETBSD:#define __SSE_MATH__ 1
8576// X86_64-NETBSD:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008577// X86_64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008578// X86_64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008579// X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
8580// X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
8581// X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
8582// X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
8583// X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
8584// X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
8585// X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008586// X86_64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008587// X86_64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008588// X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008589// X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008590// X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008591// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008592// X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
8593// X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
8594// X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
8595// X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008596// X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008597// X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
8598// X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
8599// X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
8600// X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8601// X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008602// X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008603// X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008604// X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008605// X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
8606// X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
8607// X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
8608// X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8609// X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008610// X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008611// X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008612// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
8613// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
8614// X86_64-NETBSD:#define __WCHAR_TYPE__ int
8615// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
8616// X86_64-NETBSD:#define __WINT_TYPE__ int
8617// X86_64-NETBSD:#define __WINT_WIDTH__ 32
8618// X86_64-NETBSD:#define __amd64 1
8619// X86_64-NETBSD:#define __amd64__ 1
8620// X86_64-NETBSD:#define __x86_64 1
8621// X86_64-NETBSD:#define __x86_64__ 1
8622//
James Y Knightc97efa42016-02-11 16:51:29 +00008623// 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 +00008624//
8625// PS4:#define _LP64 1
8626// PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8627// PS4:#define __CHAR16_TYPE__ unsigned short
8628// PS4:#define __CHAR32_TYPE__ unsigned int
8629// PS4:#define __CHAR_BIT__ 8
8630// PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8631// PS4:#define __DBL_DIG__ 15
8632// PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
8633// PS4:#define __DBL_HAS_DENORM__ 1
8634// PS4:#define __DBL_HAS_INFINITY__ 1
8635// PS4:#define __DBL_HAS_QUIET_NAN__ 1
8636// PS4:#define __DBL_MANT_DIG__ 53
8637// PS4:#define __DBL_MAX_10_EXP__ 308
8638// PS4:#define __DBL_MAX_EXP__ 1024
8639// PS4:#define __DBL_MAX__ 1.7976931348623157e+308
8640// PS4:#define __DBL_MIN_10_EXP__ (-307)
8641// PS4:#define __DBL_MIN_EXP__ (-1021)
8642// PS4:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008643// PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008644// PS4:#define __ELF__ 1
8645// PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8646// PS4:#define __FLT_DIG__ 6
8647// PS4:#define __FLT_EPSILON__ 1.19209290e-7F
8648// PS4:#define __FLT_EVAL_METHOD__ 0
8649// PS4:#define __FLT_HAS_DENORM__ 1
8650// PS4:#define __FLT_HAS_INFINITY__ 1
8651// PS4:#define __FLT_HAS_QUIET_NAN__ 1
8652// PS4:#define __FLT_MANT_DIG__ 24
8653// PS4:#define __FLT_MAX_10_EXP__ 38
8654// PS4:#define __FLT_MAX_EXP__ 128
8655// PS4:#define __FLT_MAX__ 3.40282347e+38F
8656// PS4:#define __FLT_MIN_10_EXP__ (-37)
8657// PS4:#define __FLT_MIN_EXP__ (-125)
8658// PS4:#define __FLT_MIN__ 1.17549435e-38F
8659// PS4:#define __FLT_RADIX__ 2
8660// PS4:#define __FreeBSD__ 9
8661// PS4:#define __FreeBSD_cc_version 900001
8662// PS4:#define __INT16_TYPE__ short
8663// PS4:#define __INT32_TYPE__ int
8664// PS4:#define __INT64_C_SUFFIX__ L
8665// PS4:#define __INT64_TYPE__ long int
8666// PS4:#define __INT8_TYPE__ signed char
8667// PS4:#define __INTMAX_MAX__ 9223372036854775807L
8668// PS4:#define __INTMAX_TYPE__ long int
8669// PS4:#define __INTMAX_WIDTH__ 64
8670// PS4:#define __INTPTR_TYPE__ long int
8671// PS4:#define __INTPTR_WIDTH__ 64
8672// PS4:#define __INT_MAX__ 2147483647
8673// PS4:#define __KPRINTF_ATTRIBUTE__ 1
8674// PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8675// PS4:#define __LDBL_DIG__ 18
8676// PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8677// PS4:#define __LDBL_HAS_DENORM__ 1
8678// PS4:#define __LDBL_HAS_INFINITY__ 1
8679// PS4:#define __LDBL_HAS_QUIET_NAN__ 1
8680// PS4:#define __LDBL_MANT_DIG__ 64
8681// PS4:#define __LDBL_MAX_10_EXP__ 4932
8682// PS4:#define __LDBL_MAX_EXP__ 16384
8683// PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8684// PS4:#define __LDBL_MIN_10_EXP__ (-4931)
8685// PS4:#define __LDBL_MIN_EXP__ (-16381)
8686// PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8687// PS4:#define __LITTLE_ENDIAN__ 1
8688// PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
8689// PS4:#define __LONG_MAX__ 9223372036854775807L
8690// PS4:#define __LP64__ 1
8691// PS4:#define __MMX__ 1
8692// PS4:#define __NO_MATH_INLINES 1
Paul Robinson9d613612016-05-16 17:22:25 +00008693// PS4:#define __ORBIS__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008694// PS4:#define __POINTER_WIDTH__ 64
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008695// PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
8696// PS4:#define __PTRDIFF_TYPE__ long int
8697// PS4:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008698// PS4:#define __REGISTER_PREFIX__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008699// PS4:#define __SCHAR_MAX__ 127
8700// PS4:#define __SHRT_MAX__ 32767
8701// PS4:#define __SIG_ATOMIC_MAX__ 2147483647
8702// PS4:#define __SIG_ATOMIC_WIDTH__ 32
8703// PS4:#define __SIZEOF_DOUBLE__ 8
8704// PS4:#define __SIZEOF_FLOAT__ 4
8705// PS4:#define __SIZEOF_INT__ 4
8706// PS4:#define __SIZEOF_LONG_DOUBLE__ 16
8707// PS4:#define __SIZEOF_LONG_LONG__ 8
8708// PS4:#define __SIZEOF_LONG__ 8
8709// PS4:#define __SIZEOF_POINTER__ 8
8710// PS4:#define __SIZEOF_PTRDIFF_T__ 8
8711// PS4:#define __SIZEOF_SHORT__ 2
8712// PS4:#define __SIZEOF_SIZE_T__ 8
8713// PS4:#define __SIZEOF_WCHAR_T__ 2
8714// PS4:#define __SIZEOF_WINT_T__ 4
8715// PS4:#define __SIZE_TYPE__ long unsigned int
8716// PS4:#define __SIZE_WIDTH__ 64
8717// PS4:#define __SSE2_MATH__ 1
8718// PS4:#define __SSE2__ 1
8719// PS4:#define __SSE_MATH__ 1
8720// PS4:#define __SSE__ 1
Sunil Srivastavabf010802016-04-27 19:53:03 +00008721// PS4:#define __STDC_VERSION__ 199901L
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008722// PS4:#define __UINTMAX_TYPE__ long unsigned int
8723// PS4:#define __USER_LABEL_PREFIX__
8724// PS4:#define __WCHAR_MAX__ 65535
8725// PS4:#define __WCHAR_TYPE__ unsigned short
8726// PS4:#define __WCHAR_UNSIGNED__ 1
8727// PS4:#define __WCHAR_WIDTH__ 16
8728// PS4:#define __WINT_TYPE__ int
8729// PS4:#define __WINT_WIDTH__ 32
8730// PS4:#define __amd64 1
8731// PS4:#define __amd64__ 1
Saleem Abdulrasool56027092017-02-07 19:00:06 +00008732// PS4:#define __unix 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008733// PS4:#define __unix__ 1
8734// PS4:#define __x86_64 1
8735// PS4:#define __x86_64__ 1
Douglas Yung60fc1dd2017-02-09 00:07:38 +00008736// PS4:#define unix 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008737//
James Y Knightc97efa42016-02-11 16:51:29 +00008738// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8739// RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8740// X86-64-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00008741//
James Y Knightc97efa42016-02-11 16:51:29 +00008742// 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 +00008743// SPARCV9:#define __INT64_TYPE__ long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008744// SPARCV9:#define __INTMAX_C_SUFFIX__ L
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008745// SPARCV9:#define __INTMAX_TYPE__ long int
8746// SPARCV9:#define __INTPTR_TYPE__ long int
8747// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
8748// SPARCV9:#define __LP64__ 1
8749// SPARCV9:#define __SIZEOF_LONG__ 8
8750// SPARCV9:#define __SIZEOF_POINTER__ 8
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00008751// SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008752//
James Y Knightc97efa42016-02-11 16:51:29 +00008753// 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 +00008754// SPARC64-OBSD:#define __INT64_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008755// SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008756// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008757// SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008758// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
8759//
James Y Knightc97efa42016-02-11 16:51:29 +00008760// 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 +00008761// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
8762// KFREEBSD-DEFINE:#define __GLIBC__ 1
8763//
James Y Knightc97efa42016-02-11 16:51:29 +00008764// 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 +00008765// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
8766// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
8767//
James Y Knightc97efa42016-02-11 16:51:29 +00008768// 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 +00008769// GNUSOURCE:#define _GNU_SOURCE 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008770//
James Y Knightc97efa42016-02-11 16:51:29 +00008771// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
8772// NORTTI: #define __GXX_ABI_VERSION {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +00008773// NORTTI-NOT:#define __GXX_RTTI
James Y Knightc97efa42016-02-11 16:51:29 +00008774// NORTTI:#define __STDC__ 1
Evgeniy Stepanov94dc4c92012-04-26 12:08:09 +00008775//
James Y Knightc97efa42016-02-11 16:51:29 +00008776// 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 +00008777// ANDROID-NOT:#define __ANDROID_API__
James Y Knightc97efa42016-02-11 16:51:29 +00008778// ANDROID:#define __ANDROID__ 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008779//
Richard Smith59139022016-09-30 22:41:36 +00008780// RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
8781// I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
8782//
8783// 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
8784// X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
8785//
Stephen Hinesa89d8ff2016-11-11 01:29:39 +00008786// RUN: %clang_cc1 -triple arm-linux-androideabi20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID20 %s
8787// ANDROID20:#define __ANDROID_API__ 20
8788// ANDROID20:#define __ANDROID__ 1
8789//
Jacques Pienaard964cc22016-03-28 21:02:54 +00008790// RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
8791// LANAI: #define __lanai__ 1
8792//
Renato Golin0201a9e2016-09-22 19:28:20 +00008793// RUN: %clang_cc1 -E -dM -ffreestanding -triple=amd64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Brad Smith9aa2bf22017-02-21 23:13:09 +00008794// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Renato Golin0201a9e2016-09-22 19:28:20 +00008795// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8796// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Brad Smith9cb3b3b2017-02-25 16:35:18 +00008797// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Brad Smith8e55bd52017-03-06 23:48:31 +00008798// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8799// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Renato Golin0201a9e2016-09-22 19:28:20 +00008800// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8801// OPENBSD:#define __ELF__ 1
8802// OPENBSD:#define __INT16_TYPE__ short
8803// OPENBSD:#define __INT32_TYPE__ int
8804// OPENBSD:#define __INT64_TYPE__ long long int
8805// OPENBSD:#define __INT8_TYPE__ signed char
8806// OPENBSD:#define __INTMAX_TYPE__ long long int
8807// OPENBSD:#define __INTPTR_TYPE__ long int
8808// OPENBSD:#define __OpenBSD__ 1
8809// OPENBSD:#define __PTRDIFF_TYPE__ long int
8810// OPENBSD:#define __SIZE_TYPE__ long unsigned int
8811// OPENBSD:#define __UINT16_TYPE__ unsigned short
8812// OPENBSD:#define __UINT32_TYPE__ unsigned int
8813// OPENBSD:#define __UINT64_TYPE__ long long unsigned int
8814// OPENBSD:#define __UINT8_TYPE__ unsigned char
8815// OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
8816// OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
8817// OPENBSD:#define __WCHAR_TYPE__ int
8818// OPENBSD:#define __WINT_TYPE__ int
8819//
James Y Knightc97efa42016-02-11 16:51:29 +00008820// 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 +00008821// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008822//
James Y Knightc97efa42016-02-11 16:51:29 +00008823// 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 +00008824// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8825// XCORE:#define __LITTLE_ENDIAN__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008826// XCORE:#define __XS1B__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008827//
8828// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
8829// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00008830// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY32 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00008831//
James Y Knightc97efa42016-02-11 16:51:29 +00008832// WEBASSEMBLY32:#define _ILP32 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008833// WEBASSEMBLY32-NOT:#define _LP64
James Y Knightc97efa42016-02-11 16:51:29 +00008834// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQUIRE 2
8835// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQ_REL 4
8836// WEBASSEMBLY32-NEXT:#define __ATOMIC_CONSUME 1
8837// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELAXED 0
8838// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELEASE 3
8839// WEBASSEMBLY32-NEXT:#define __ATOMIC_SEQ_CST 5
8840// WEBASSEMBLY32-NEXT:#define __BIGGEST_ALIGNMENT__ 16
8841// WEBASSEMBLY32-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8842// WEBASSEMBLY32-NEXT:#define __CHAR16_TYPE__ unsigned short
8843// WEBASSEMBLY32-NEXT:#define __CHAR32_TYPE__ unsigned int
8844// WEBASSEMBLY32-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00008845// WEBASSEMBLY32-NOT:#define __CHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008846// WEBASSEMBLY32-NEXT:#define __CONSTANT_CFSTRINGS__ 1
8847// WEBASSEMBLY32-NEXT:#define __DBL_DECIMAL_DIG__ 17
8848// WEBASSEMBLY32-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8849// WEBASSEMBLY32-NEXT:#define __DBL_DIG__ 15
8850// WEBASSEMBLY32-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
8851// WEBASSEMBLY32-NEXT:#define __DBL_HAS_DENORM__ 1
8852// WEBASSEMBLY32-NEXT:#define __DBL_HAS_INFINITY__ 1
8853// WEBASSEMBLY32-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
8854// WEBASSEMBLY32-NEXT:#define __DBL_MANT_DIG__ 53
8855// WEBASSEMBLY32-NEXT:#define __DBL_MAX_10_EXP__ 308
8856// WEBASSEMBLY32-NEXT:#define __DBL_MAX_EXP__ 1024
8857// WEBASSEMBLY32-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
8858// WEBASSEMBLY32-NEXT:#define __DBL_MIN_10_EXP__ (-307)
8859// WEBASSEMBLY32-NEXT:#define __DBL_MIN_EXP__ (-1021)
8860// WEBASSEMBLY32-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
8861// WEBASSEMBLY32-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00008862// WEBASSEMBLY32-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00008863// WEBASSEMBLY32-NEXT:#define __FINITE_MATH_ONLY__ 0
8864// WEBASSEMBLY32-NEXT:#define __FLT_DECIMAL_DIG__ 9
8865// WEBASSEMBLY32-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8866// WEBASSEMBLY32-NEXT:#define __FLT_DIG__ 6
8867// WEBASSEMBLY32-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
8868// WEBASSEMBLY32-NEXT:#define __FLT_EVAL_METHOD__ 0
8869// WEBASSEMBLY32-NEXT:#define __FLT_HAS_DENORM__ 1
8870// WEBASSEMBLY32-NEXT:#define __FLT_HAS_INFINITY__ 1
8871// WEBASSEMBLY32-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
8872// WEBASSEMBLY32-NEXT:#define __FLT_MANT_DIG__ 24
8873// WEBASSEMBLY32-NEXT:#define __FLT_MAX_10_EXP__ 38
8874// WEBASSEMBLY32-NEXT:#define __FLT_MAX_EXP__ 128
8875// WEBASSEMBLY32-NEXT:#define __FLT_MAX__ 3.40282347e+38F
8876// WEBASSEMBLY32-NEXT:#define __FLT_MIN_10_EXP__ (-37)
8877// WEBASSEMBLY32-NEXT:#define __FLT_MIN_EXP__ (-125)
8878// WEBASSEMBLY32-NEXT:#define __FLT_MIN__ 1.17549435e-38F
8879// WEBASSEMBLY32-NEXT:#define __FLT_RADIX__ 2
8880// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8881// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8882// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8883// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8884// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8885// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
8886// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8887// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8888// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8889// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8890// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00008891// WEBASSEMBLY32-NEXT:#define __GNUC_MINOR__ {{.*}}
8892// WEBASSEMBLY32-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008893// WEBASSEMBLY32-NEXT:#define __GNUC_STDC_INLINE__ 1
Tim Northover25809012016-02-11 21:31:51 +00008894// WEBASSEMBLY32-NEXT:#define __GNUC__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008895// WEBASSEMBLY32-NEXT:#define __GXX_ABI_VERSION 1002
8896// WEBASSEMBLY32-NEXT:#define __ILP32__ 1
8897// WEBASSEMBLY32-NEXT:#define __INT16_C_SUFFIX__
8898// WEBASSEMBLY32-NEXT:#define __INT16_FMTd__ "hd"
8899// WEBASSEMBLY32-NEXT:#define __INT16_FMTi__ "hi"
8900// WEBASSEMBLY32-NEXT:#define __INT16_MAX__ 32767
8901// WEBASSEMBLY32-NEXT:#define __INT16_TYPE__ short
8902// WEBASSEMBLY32-NEXT:#define __INT32_C_SUFFIX__
8903// WEBASSEMBLY32-NEXT:#define __INT32_FMTd__ "d"
8904// WEBASSEMBLY32-NEXT:#define __INT32_FMTi__ "i"
8905// WEBASSEMBLY32-NEXT:#define __INT32_MAX__ 2147483647
8906// WEBASSEMBLY32-NEXT:#define __INT32_TYPE__ int
8907// WEBASSEMBLY32-NEXT:#define __INT64_C_SUFFIX__ LL
8908// WEBASSEMBLY32-NEXT:#define __INT64_FMTd__ "lld"
8909// WEBASSEMBLY32-NEXT:#define __INT64_FMTi__ "lli"
8910// WEBASSEMBLY32-NEXT:#define __INT64_MAX__ 9223372036854775807LL
8911// WEBASSEMBLY32-NEXT:#define __INT64_TYPE__ long long int
8912// WEBASSEMBLY32-NEXT:#define __INT8_C_SUFFIX__
8913// WEBASSEMBLY32-NEXT:#define __INT8_FMTd__ "hhd"
8914// WEBASSEMBLY32-NEXT:#define __INT8_FMTi__ "hhi"
8915// WEBASSEMBLY32-NEXT:#define __INT8_MAX__ 127
8916// WEBASSEMBLY32-NEXT:#define __INT8_TYPE__ signed char
8917// WEBASSEMBLY32-NEXT:#define __INTMAX_C_SUFFIX__ LL
8918// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTd__ "lld"
8919// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTi__ "lli"
8920// WEBASSEMBLY32-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
8921// WEBASSEMBLY32-NEXT:#define __INTMAX_TYPE__ long long int
8922// WEBASSEMBLY32-NEXT:#define __INTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00008923// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTd__ "d"
8924// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTi__ "i"
8925// WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647
8926// WEBASSEMBLY32-NEXT:#define __INTPTR_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00008927// WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
8928// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTd__ "hd"
8929// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTi__ "hi"
8930// WEBASSEMBLY32-NEXT:#define __INT_FAST16_MAX__ 32767
8931// WEBASSEMBLY32-NEXT:#define __INT_FAST16_TYPE__ short
8932// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTd__ "d"
8933// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTi__ "i"
8934// WEBASSEMBLY32-NEXT:#define __INT_FAST32_MAX__ 2147483647
8935// WEBASSEMBLY32-NEXT:#define __INT_FAST32_TYPE__ int
8936// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTd__ "lld"
8937// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTi__ "lli"
8938// WEBASSEMBLY32-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
8939// WEBASSEMBLY32-NEXT:#define __INT_FAST64_TYPE__ long long int
8940// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTd__ "hhd"
8941// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTi__ "hhi"
8942// WEBASSEMBLY32-NEXT:#define __INT_FAST8_MAX__ 127
8943// WEBASSEMBLY32-NEXT:#define __INT_FAST8_TYPE__ signed char
8944// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTd__ "hd"
8945// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTi__ "hi"
8946// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_MAX__ 32767
8947// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_TYPE__ short
8948// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTd__ "d"
8949// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTi__ "i"
8950// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_MAX__ 2147483647
8951// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_TYPE__ int
8952// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTd__ "lld"
8953// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTi__ "lli"
8954// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8955// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_TYPE__ long long int
8956// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
8957// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
8958// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_MAX__ 127
8959// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_TYPE__ signed char
8960// WEBASSEMBLY32-NEXT:#define __INT_MAX__ 2147483647
8961// WEBASSEMBLY32-NEXT:#define __LDBL_DECIMAL_DIG__ 36
8962// WEBASSEMBLY32-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
8963// WEBASSEMBLY32-NEXT:#define __LDBL_DIG__ 33
8964// WEBASSEMBLY32-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
8965// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_DENORM__ 1
8966// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_INFINITY__ 1
8967// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
8968// WEBASSEMBLY32-NEXT:#define __LDBL_MANT_DIG__ 113
8969// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_10_EXP__ 4932
8970// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_EXP__ 16384
8971// WEBASSEMBLY32-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
8972// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
8973// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_EXP__ (-16381)
8974// WEBASSEMBLY32-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
8975// WEBASSEMBLY32-NEXT:#define __LITTLE_ENDIAN__ 1
8976// WEBASSEMBLY32-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
8977// WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
Dan Gohmanc2853072015-09-03 22:51:53 +00008978// WEBASSEMBLY32-NOT:#define __LP64__
James Y Knightc97efa42016-02-11 16:51:29 +00008979// WEBASSEMBLY32-NEXT:#define __NO_INLINE__ 1
Alex Lorenz41d13152017-01-20 16:48:25 +00008980// WEBASSEMBLY32-NEXT:#define __OBJC_BOOL_IS_BOOL 0
James Y Knightc97efa42016-02-11 16:51:29 +00008981// WEBASSEMBLY32-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
8982// WEBASSEMBLY32-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
8983// WEBASSEMBLY32-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
8984// WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
8985// WEBASSEMBLY32-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
Derek Schuffacdc8e62016-09-01 22:38:37 +00008986// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTd__ "d"
8987// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTi__ "i"
8988// WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647
8989// WEBASSEMBLY32-NEXT:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00008990// WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
Dan Gohmanc2853072015-09-03 22:51:53 +00008991// WEBASSEMBLY32-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00008992// WEBASSEMBLY32-NEXT:#define __SCHAR_MAX__ 127
8993// WEBASSEMBLY32-NEXT:#define __SHRT_MAX__ 32767
8994// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
8995// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
8996// WEBASSEMBLY32-NEXT:#define __SIZEOF_DOUBLE__ 8
8997// WEBASSEMBLY32-NEXT:#define __SIZEOF_FLOAT__ 4
8998// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT128__ 16
8999// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT__ 4
9000// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9001// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_LONG__ 8
9002// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
9003// WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
9004// WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
9005// WEBASSEMBLY32-NEXT:#define __SIZEOF_SHORT__ 2
9006// WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
9007// WEBASSEMBLY32-NEXT:#define __SIZEOF_WCHAR_T__ 4
9008// WEBASSEMBLY32-NEXT:#define __SIZEOF_WINT_T__ 4
Derek Schuffacdc8e62016-09-01 22:38:37 +00009009// WEBASSEMBLY32-NEXT:#define __SIZE_FMTX__ "X"
9010// WEBASSEMBLY32-NEXT:#define __SIZE_FMTo__ "o"
9011// WEBASSEMBLY32-NEXT:#define __SIZE_FMTu__ "u"
9012// WEBASSEMBLY32-NEXT:#define __SIZE_FMTx__ "x"
9013// WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295U
9014// WEBASSEMBLY32-NEXT:#define __SIZE_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00009015// WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
9016// WEBASSEMBLY32-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009017// WEBASSEMBLY32-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9018// WEBASSEMBLY32-NOT:#define __STDC_NO_ATOMICS__
9019// WEBASSEMBLY32-NOT:#define __STDC_NO_COMPLEX__
9020// WEBASSEMBLY32-NOT:#define __STDC_NO_VLA__
9021// WEBASSEMBLY32-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009022// WEBASSEMBLY32-NEXT:#define __STDC_UTF_16__ 1
9023// WEBASSEMBLY32-NEXT:#define __STDC_UTF_32__ 1
9024// WEBASSEMBLY32-NEXT:#define __STDC_VERSION__ 201112L
9025// WEBASSEMBLY32-NEXT:#define __STDC__ 1
9026// WEBASSEMBLY32-NEXT:#define __UINT16_C_SUFFIX__
9027// WEBASSEMBLY32-NEXT:#define __UINT16_FMTX__ "hX"
9028// WEBASSEMBLY32-NEXT:#define __UINT16_FMTo__ "ho"
9029// WEBASSEMBLY32-NEXT:#define __UINT16_FMTu__ "hu"
9030// WEBASSEMBLY32-NEXT:#define __UINT16_FMTx__ "hx"
9031// WEBASSEMBLY32-NEXT:#define __UINT16_MAX__ 65535
9032// WEBASSEMBLY32-NEXT:#define __UINT16_TYPE__ unsigned short
9033// WEBASSEMBLY32-NEXT:#define __UINT32_C_SUFFIX__ U
9034// WEBASSEMBLY32-NEXT:#define __UINT32_FMTX__ "X"
9035// WEBASSEMBLY32-NEXT:#define __UINT32_FMTo__ "o"
9036// WEBASSEMBLY32-NEXT:#define __UINT32_FMTu__ "u"
9037// WEBASSEMBLY32-NEXT:#define __UINT32_FMTx__ "x"
9038// WEBASSEMBLY32-NEXT:#define __UINT32_MAX__ 4294967295U
9039// WEBASSEMBLY32-NEXT:#define __UINT32_TYPE__ unsigned int
9040// WEBASSEMBLY32-NEXT:#define __UINT64_C_SUFFIX__ ULL
9041// WEBASSEMBLY32-NEXT:#define __UINT64_FMTX__ "llX"
9042// WEBASSEMBLY32-NEXT:#define __UINT64_FMTo__ "llo"
9043// WEBASSEMBLY32-NEXT:#define __UINT64_FMTu__ "llu"
9044// WEBASSEMBLY32-NEXT:#define __UINT64_FMTx__ "llx"
9045// WEBASSEMBLY32-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9046// WEBASSEMBLY32-NEXT:#define __UINT64_TYPE__ long long unsigned int
9047// WEBASSEMBLY32-NEXT:#define __UINT8_C_SUFFIX__
9048// WEBASSEMBLY32-NEXT:#define __UINT8_FMTX__ "hhX"
9049// WEBASSEMBLY32-NEXT:#define __UINT8_FMTo__ "hho"
9050// WEBASSEMBLY32-NEXT:#define __UINT8_FMTu__ "hhu"
9051// WEBASSEMBLY32-NEXT:#define __UINT8_FMTx__ "hhx"
9052// WEBASSEMBLY32-NEXT:#define __UINT8_MAX__ 255
9053// WEBASSEMBLY32-NEXT:#define __UINT8_TYPE__ unsigned char
9054// WEBASSEMBLY32-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9055// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTX__ "llX"
9056// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTo__ "llo"
9057// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTu__ "llu"
9058// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTx__ "llx"
9059// WEBASSEMBLY32-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9060// WEBASSEMBLY32-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9061// WEBASSEMBLY32-NEXT:#define __UINTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00009062// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTX__ "X"
9063// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTo__ "o"
9064// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTu__ "u"
9065// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTx__ "x"
9066// WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295U
9067// WEBASSEMBLY32-NEXT:#define __UINTPTR_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00009068// WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
9069// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9070// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9071// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9072// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9073// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_MAX__ 65535
9074// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9075// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTX__ "X"
9076// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTo__ "o"
9077// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTu__ "u"
9078// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTx__ "x"
9079// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9080// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9081// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9082// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9083// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9084// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9085// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9086// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9087// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9088// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9089// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9090// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9091// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_MAX__ 255
9092// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9093// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9094// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9095// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9096// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9097// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_MAX__ 65535
9098// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9099// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9100// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9101// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9102// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9103// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9104// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9105// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9106// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9107// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9108// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9109// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9110// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9111// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9112// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9113// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9114// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9115// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_MAX__ 255
9116// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9117// WEBASSEMBLY32-NEXT:#define __USER_LABEL_PREFIX__
9118// WEBASSEMBLY32-NEXT:#define __VERSION__ "{{.*}}"
9119// WEBASSEMBLY32-NEXT:#define __WCHAR_MAX__ 2147483647
9120// WEBASSEMBLY32-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009121// WEBASSEMBLY32-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009122// WEBASSEMBLY32-NEXT:#define __WCHAR_WIDTH__ 32
9123// WEBASSEMBLY32-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009124// WEBASSEMBLY32-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009125// WEBASSEMBLY32-NEXT:#define __WINT_WIDTH__ 32
9126// WEBASSEMBLY32-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009127// WEBASSEMBLY32-NEXT:#define __clang_major__ {{.*}}
9128// WEBASSEMBLY32-NEXT:#define __clang_minor__ {{.*}}
9129// WEBASSEMBLY32-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009130// WEBASSEMBLY32-NEXT:#define __clang_version__ "{{.*}}"
9131// WEBASSEMBLY32-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009132// WEBASSEMBLY32-NOT:#define __wasm_simd128__
9133// WEBASSEMBLY32-NOT:#define __wasm_simd256__
9134// WEBASSEMBLY32-NOT:#define __wasm_simd512__
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009135// WEBASSEMBLY32-NOT:#define __unix
Dan Gohmanc2853072015-09-03 22:51:53 +00009136// WEBASSEMBLY32-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009137// WEBASSEMBLY32-NEXT:#define __wasm 1
9138// WEBASSEMBLY32-NEXT:#define __wasm32 1
9139// WEBASSEMBLY32-NEXT:#define __wasm32__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009140// WEBASSEMBLY32-NOT:#define __wasm64
9141// WEBASSEMBLY32-NOT:#define __wasm64__
James Y Knightc97efa42016-02-11 16:51:29 +00009142// WEBASSEMBLY32-NEXT:#define __wasm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009143//
9144// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
9145// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00009146// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY64 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00009147//
9148// WEBASSEMBLY64-NOT:#define _ILP32
James Y Knightc97efa42016-02-11 16:51:29 +00009149// WEBASSEMBLY64:#define _LP64 1
9150// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQUIRE 2
9151// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQ_REL 4
9152// WEBASSEMBLY64-NEXT:#define __ATOMIC_CONSUME 1
9153// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELAXED 0
9154// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELEASE 3
9155// WEBASSEMBLY64-NEXT:#define __ATOMIC_SEQ_CST 5
9156// WEBASSEMBLY64-NEXT:#define __BIGGEST_ALIGNMENT__ 16
9157// WEBASSEMBLY64-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9158// WEBASSEMBLY64-NEXT:#define __CHAR16_TYPE__ unsigned short
9159// WEBASSEMBLY64-NEXT:#define __CHAR32_TYPE__ unsigned int
9160// WEBASSEMBLY64-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00009161// WEBASSEMBLY64-NOT:#define __CHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009162// WEBASSEMBLY64-NEXT:#define __CONSTANT_CFSTRINGS__ 1
9163// WEBASSEMBLY64-NEXT:#define __DBL_DECIMAL_DIG__ 17
9164// WEBASSEMBLY64-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9165// WEBASSEMBLY64-NEXT:#define __DBL_DIG__ 15
9166// WEBASSEMBLY64-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
9167// WEBASSEMBLY64-NEXT:#define __DBL_HAS_DENORM__ 1
9168// WEBASSEMBLY64-NEXT:#define __DBL_HAS_INFINITY__ 1
9169// WEBASSEMBLY64-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
9170// WEBASSEMBLY64-NEXT:#define __DBL_MANT_DIG__ 53
9171// WEBASSEMBLY64-NEXT:#define __DBL_MAX_10_EXP__ 308
9172// WEBASSEMBLY64-NEXT:#define __DBL_MAX_EXP__ 1024
9173// WEBASSEMBLY64-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
9174// WEBASSEMBLY64-NEXT:#define __DBL_MIN_10_EXP__ (-307)
9175// WEBASSEMBLY64-NEXT:#define __DBL_MIN_EXP__ (-1021)
9176// WEBASSEMBLY64-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
9177// WEBASSEMBLY64-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00009178// WEBASSEMBLY64-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00009179// WEBASSEMBLY64-NEXT:#define __FINITE_MATH_ONLY__ 0
9180// WEBASSEMBLY64-NEXT:#define __FLT_DECIMAL_DIG__ 9
9181// WEBASSEMBLY64-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9182// WEBASSEMBLY64-NEXT:#define __FLT_DIG__ 6
9183// WEBASSEMBLY64-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
9184// WEBASSEMBLY64-NEXT:#define __FLT_EVAL_METHOD__ 0
9185// WEBASSEMBLY64-NEXT:#define __FLT_HAS_DENORM__ 1
9186// WEBASSEMBLY64-NEXT:#define __FLT_HAS_INFINITY__ 1
9187// WEBASSEMBLY64-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
9188// WEBASSEMBLY64-NEXT:#define __FLT_MANT_DIG__ 24
9189// WEBASSEMBLY64-NEXT:#define __FLT_MAX_10_EXP__ 38
9190// WEBASSEMBLY64-NEXT:#define __FLT_MAX_EXP__ 128
9191// WEBASSEMBLY64-NEXT:#define __FLT_MAX__ 3.40282347e+38F
9192// WEBASSEMBLY64-NEXT:#define __FLT_MIN_10_EXP__ (-37)
9193// WEBASSEMBLY64-NEXT:#define __FLT_MIN_EXP__ (-125)
9194// WEBASSEMBLY64-NEXT:#define __FLT_MIN__ 1.17549435e-38F
9195// WEBASSEMBLY64-NEXT:#define __FLT_RADIX__ 2
9196// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9197// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9198// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9199// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9200// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9201// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9202// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9203// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9204// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9205// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9206// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00009207// WEBASSEMBLY64-NEXT:#define __GNUC_MINOR__ {{.*}}
9208// WEBASSEMBLY64-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009209// WEBASSEMBLY64-NEXT:#define __GNUC_STDC_INLINE__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009210// WEBASSEMBLY64-NEXT:#define __GNUC__ {{.}}
James Y Knightc97efa42016-02-11 16:51:29 +00009211// WEBASSEMBLY64-NEXT:#define __GXX_ABI_VERSION 1002
Dan Gohmanc2853072015-09-03 22:51:53 +00009212// WEBASSEMBLY64-NOT:#define __ILP32__
James Y Knightc97efa42016-02-11 16:51:29 +00009213// WEBASSEMBLY64-NEXT:#define __INT16_C_SUFFIX__
9214// WEBASSEMBLY64-NEXT:#define __INT16_FMTd__ "hd"
9215// WEBASSEMBLY64-NEXT:#define __INT16_FMTi__ "hi"
9216// WEBASSEMBLY64-NEXT:#define __INT16_MAX__ 32767
9217// WEBASSEMBLY64-NEXT:#define __INT16_TYPE__ short
9218// WEBASSEMBLY64-NEXT:#define __INT32_C_SUFFIX__
9219// WEBASSEMBLY64-NEXT:#define __INT32_FMTd__ "d"
9220// WEBASSEMBLY64-NEXT:#define __INT32_FMTi__ "i"
9221// WEBASSEMBLY64-NEXT:#define __INT32_MAX__ 2147483647
9222// WEBASSEMBLY64-NEXT:#define __INT32_TYPE__ int
9223// WEBASSEMBLY64-NEXT:#define __INT64_C_SUFFIX__ LL
9224// WEBASSEMBLY64-NEXT:#define __INT64_FMTd__ "lld"
9225// WEBASSEMBLY64-NEXT:#define __INT64_FMTi__ "lli"
9226// WEBASSEMBLY64-NEXT:#define __INT64_MAX__ 9223372036854775807LL
9227// WEBASSEMBLY64-NEXT:#define __INT64_TYPE__ long long int
9228// WEBASSEMBLY64-NEXT:#define __INT8_C_SUFFIX__
9229// WEBASSEMBLY64-NEXT:#define __INT8_FMTd__ "hhd"
9230// WEBASSEMBLY64-NEXT:#define __INT8_FMTi__ "hhi"
9231// WEBASSEMBLY64-NEXT:#define __INT8_MAX__ 127
9232// WEBASSEMBLY64-NEXT:#define __INT8_TYPE__ signed char
9233// WEBASSEMBLY64-NEXT:#define __INTMAX_C_SUFFIX__ LL
9234// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTd__ "lld"
9235// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTi__ "lli"
9236// WEBASSEMBLY64-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
9237// WEBASSEMBLY64-NEXT:#define __INTMAX_TYPE__ long long int
9238// WEBASSEMBLY64-NEXT:#define __INTMAX_WIDTH__ 64
9239// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTd__ "ld"
9240// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTi__ "li"
9241// WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
9242// WEBASSEMBLY64-NEXT:#define __INTPTR_TYPE__ long int
9243// WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
9244// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTd__ "hd"
9245// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTi__ "hi"
9246// WEBASSEMBLY64-NEXT:#define __INT_FAST16_MAX__ 32767
9247// WEBASSEMBLY64-NEXT:#define __INT_FAST16_TYPE__ short
9248// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTd__ "d"
9249// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTi__ "i"
9250// WEBASSEMBLY64-NEXT:#define __INT_FAST32_MAX__ 2147483647
9251// WEBASSEMBLY64-NEXT:#define __INT_FAST32_TYPE__ int
9252// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTd__ "lld"
9253// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTi__ "lli"
9254// WEBASSEMBLY64-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
9255// WEBASSEMBLY64-NEXT:#define __INT_FAST64_TYPE__ long long int
9256// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTd__ "hhd"
9257// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTi__ "hhi"
9258// WEBASSEMBLY64-NEXT:#define __INT_FAST8_MAX__ 127
9259// WEBASSEMBLY64-NEXT:#define __INT_FAST8_TYPE__ signed char
9260// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTd__ "hd"
9261// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTi__ "hi"
9262// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_MAX__ 32767
9263// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_TYPE__ short
9264// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTd__ "d"
9265// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTi__ "i"
9266// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_MAX__ 2147483647
9267// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_TYPE__ int
9268// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTd__ "lld"
9269// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTi__ "lli"
9270// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9271// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_TYPE__ long long int
9272// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9273// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9274// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_MAX__ 127
9275// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_TYPE__ signed char
9276// WEBASSEMBLY64-NEXT:#define __INT_MAX__ 2147483647
9277// WEBASSEMBLY64-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9278// WEBASSEMBLY64-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9279// WEBASSEMBLY64-NEXT:#define __LDBL_DIG__ 33
9280// WEBASSEMBLY64-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9281// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_DENORM__ 1
9282// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_INFINITY__ 1
9283// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9284// WEBASSEMBLY64-NEXT:#define __LDBL_MANT_DIG__ 113
9285// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9286// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_EXP__ 16384
9287// WEBASSEMBLY64-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9288// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9289// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9290// WEBASSEMBLY64-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9291// WEBASSEMBLY64-NEXT:#define __LITTLE_ENDIAN__ 1
9292// WEBASSEMBLY64-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9293// WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
9294// WEBASSEMBLY64-NEXT:#define __LP64__ 1
9295// WEBASSEMBLY64-NEXT:#define __NO_INLINE__ 1
Alex Lorenz41d13152017-01-20 16:48:25 +00009296// WEBASSEMBLY64-NEXT:#define __OBJC_BOOL_IS_BOOL 0
James Y Knightc97efa42016-02-11 16:51:29 +00009297// WEBASSEMBLY64-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9298// WEBASSEMBLY64-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9299// WEBASSEMBLY64-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9300// WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
9301// WEBASSEMBLY64-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
9302// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTd__ "ld"
9303// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTi__ "li"
9304// WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
9305// WEBASSEMBLY64-NEXT:#define __PTRDIFF_TYPE__ long int
9306// WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
Dan Gohmanc2853072015-09-03 22:51:53 +00009307// WEBASSEMBLY64-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009308// WEBASSEMBLY64-NEXT:#define __SCHAR_MAX__ 127
9309// WEBASSEMBLY64-NEXT:#define __SHRT_MAX__ 32767
9310// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
9311// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
9312// WEBASSEMBLY64-NEXT:#define __SIZEOF_DOUBLE__ 8
9313// WEBASSEMBLY64-NEXT:#define __SIZEOF_FLOAT__ 4
9314// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT128__ 16
9315// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT__ 4
9316// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9317// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_LONG__ 8
9318// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
9319// WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
9320// WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
9321// WEBASSEMBLY64-NEXT:#define __SIZEOF_SHORT__ 2
9322// WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
9323// WEBASSEMBLY64-NEXT:#define __SIZEOF_WCHAR_T__ 4
9324// WEBASSEMBLY64-NEXT:#define __SIZEOF_WINT_T__ 4
9325// WEBASSEMBLY64-NEXT:#define __SIZE_FMTX__ "lX"
9326// WEBASSEMBLY64-NEXT:#define __SIZE_FMTo__ "lo"
9327// WEBASSEMBLY64-NEXT:#define __SIZE_FMTu__ "lu"
9328// WEBASSEMBLY64-NEXT:#define __SIZE_FMTx__ "lx"
9329// WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
9330// WEBASSEMBLY64-NEXT:#define __SIZE_TYPE__ long unsigned int
9331// WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
9332// WEBASSEMBLY64-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009333// WEBASSEMBLY64-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9334// WEBASSEMBLY64-NOT:#define __STDC_NO_ATOMICS__
9335// WEBASSEMBLY64-NOT:#define __STDC_NO_COMPLEX__
9336// WEBASSEMBLY64-NOT:#define __STDC_NO_VLA__
9337// WEBASSEMBLY64-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009338// WEBASSEMBLY64-NEXT:#define __STDC_UTF_16__ 1
9339// WEBASSEMBLY64-NEXT:#define __STDC_UTF_32__ 1
9340// WEBASSEMBLY64-NEXT:#define __STDC_VERSION__ 201112L
9341// WEBASSEMBLY64-NEXT:#define __STDC__ 1
9342// WEBASSEMBLY64-NEXT:#define __UINT16_C_SUFFIX__
9343// WEBASSEMBLY64-NEXT:#define __UINT16_FMTX__ "hX"
9344// WEBASSEMBLY64-NEXT:#define __UINT16_FMTo__ "ho"
9345// WEBASSEMBLY64-NEXT:#define __UINT16_FMTu__ "hu"
9346// WEBASSEMBLY64-NEXT:#define __UINT16_FMTx__ "hx"
9347// WEBASSEMBLY64-NEXT:#define __UINT16_MAX__ 65535
9348// WEBASSEMBLY64-NEXT:#define __UINT16_TYPE__ unsigned short
9349// WEBASSEMBLY64-NEXT:#define __UINT32_C_SUFFIX__ U
9350// WEBASSEMBLY64-NEXT:#define __UINT32_FMTX__ "X"
9351// WEBASSEMBLY64-NEXT:#define __UINT32_FMTo__ "o"
9352// WEBASSEMBLY64-NEXT:#define __UINT32_FMTu__ "u"
9353// WEBASSEMBLY64-NEXT:#define __UINT32_FMTx__ "x"
9354// WEBASSEMBLY64-NEXT:#define __UINT32_MAX__ 4294967295U
9355// WEBASSEMBLY64-NEXT:#define __UINT32_TYPE__ unsigned int
9356// WEBASSEMBLY64-NEXT:#define __UINT64_C_SUFFIX__ ULL
9357// WEBASSEMBLY64-NEXT:#define __UINT64_FMTX__ "llX"
9358// WEBASSEMBLY64-NEXT:#define __UINT64_FMTo__ "llo"
9359// WEBASSEMBLY64-NEXT:#define __UINT64_FMTu__ "llu"
9360// WEBASSEMBLY64-NEXT:#define __UINT64_FMTx__ "llx"
9361// WEBASSEMBLY64-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9362// WEBASSEMBLY64-NEXT:#define __UINT64_TYPE__ long long unsigned int
9363// WEBASSEMBLY64-NEXT:#define __UINT8_C_SUFFIX__
9364// WEBASSEMBLY64-NEXT:#define __UINT8_FMTX__ "hhX"
9365// WEBASSEMBLY64-NEXT:#define __UINT8_FMTo__ "hho"
9366// WEBASSEMBLY64-NEXT:#define __UINT8_FMTu__ "hhu"
9367// WEBASSEMBLY64-NEXT:#define __UINT8_FMTx__ "hhx"
9368// WEBASSEMBLY64-NEXT:#define __UINT8_MAX__ 255
9369// WEBASSEMBLY64-NEXT:#define __UINT8_TYPE__ unsigned char
9370// WEBASSEMBLY64-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9371// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTX__ "llX"
9372// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTo__ "llo"
9373// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTu__ "llu"
9374// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTx__ "llx"
9375// WEBASSEMBLY64-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9376// WEBASSEMBLY64-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9377// WEBASSEMBLY64-NEXT:#define __UINTMAX_WIDTH__ 64
9378// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTX__ "lX"
9379// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTo__ "lo"
9380// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTu__ "lu"
9381// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTx__ "lx"
9382// WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
9383// WEBASSEMBLY64-NEXT:#define __UINTPTR_TYPE__ long unsigned int
9384// WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
9385// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9386// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9387// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9388// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9389// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_MAX__ 65535
9390// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9391// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTX__ "X"
9392// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTo__ "o"
9393// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTu__ "u"
9394// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTx__ "x"
9395// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9396// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9397// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9398// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9399// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9400// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9401// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9402// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9403// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9404// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9405// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9406// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9407// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_MAX__ 255
9408// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9409// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9410// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9411// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9412// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9413// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_MAX__ 65535
9414// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9415// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9416// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9417// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9418// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9419// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9420// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9421// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9422// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9423// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9424// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9425// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9426// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9427// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9428// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9429// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9430// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9431// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_MAX__ 255
9432// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9433// WEBASSEMBLY64-NEXT:#define __USER_LABEL_PREFIX__
9434// WEBASSEMBLY64-NEXT:#define __VERSION__ "{{.*}}"
9435// WEBASSEMBLY64-NEXT:#define __WCHAR_MAX__ 2147483647
9436// WEBASSEMBLY64-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009437// WEBASSEMBLY64-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009438// WEBASSEMBLY64-NEXT:#define __WCHAR_WIDTH__ 32
9439// WEBASSEMBLY64-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009440// WEBASSEMBLY64-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009441// WEBASSEMBLY64-NEXT:#define __WINT_WIDTH__ 32
9442// WEBASSEMBLY64-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009443// WEBASSEMBLY64-NEXT:#define __clang_major__ {{.*}}
9444// WEBASSEMBLY64-NEXT:#define __clang_minor__ {{.*}}
9445// WEBASSEMBLY64-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009446// WEBASSEMBLY64-NEXT:#define __clang_version__ "{{.*}}"
9447// WEBASSEMBLY64-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009448// WEBASSEMBLY64-NOT:#define __wasm_simd128__
9449// WEBASSEMBLY64-NOT:#define __wasm_simd256__
9450// WEBASSEMBLY64-NOT:#define __wasm_simd512__
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009451// WEBASSEMBLY64-NOT:#define __unix
Dan Gohmanc2853072015-09-03 22:51:53 +00009452// WEBASSEMBLY64-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009453// WEBASSEMBLY64-NEXT:#define __wasm 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009454// WEBASSEMBLY64-NOT:#define __wasm32
9455// WEBASSEMBLY64-NOT:#define __wasm32__
James Y Knightc97efa42016-02-11 16:51:29 +00009456// WEBASSEMBLY64-NEXT:#define __wasm64 1
9457// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
9458// WEBASSEMBLY64-NEXT:#define __wasm__ 1
Saleem Abdulrasool16fcf0a2016-02-26 16:34:01 +00009459
9460// RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
9461// CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
9462
9463// RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
9464// CYGWIN-X64: #define __USER_LABEL_PREFIX__
9465
Dylan McKay924fa3a2017-01-05 05:20:27 +00009466// RUN: %clang_cc1 -E -dM -ffreestanding -triple=avr \
9467// RUN: < /dev/null \
9468// RUN: | FileCheck -match-full-lines -check-prefix=AVR %s
9469//
9470// AVR:#define __ATOMIC_ACQUIRE 2
9471// AVR:#define __ATOMIC_ACQ_REL 4
9472// AVR:#define __ATOMIC_CONSUME 1
9473// AVR:#define __ATOMIC_RELAXED 0
9474// AVR:#define __ATOMIC_RELEASE 3
9475// AVR:#define __ATOMIC_SEQ_CST 5
9476// AVR:#define __AVR__ 1
9477// AVR:#define __BIGGEST_ALIGNMENT__ 1
9478// AVR:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9479// AVR:#define __CHAR16_TYPE__ unsigned int
9480// AVR:#define __CHAR32_TYPE__ long unsigned int
9481// AVR:#define __CHAR_BIT__ 8
9482// AVR:#define __DBL_DECIMAL_DIG__ 9
9483// AVR:#define __DBL_DENORM_MIN__ 1.40129846e-45
9484// AVR:#define __DBL_DIG__ 6
9485// AVR:#define __DBL_EPSILON__ 1.19209290e-7
9486// AVR:#define __DBL_HAS_DENORM__ 1
9487// AVR:#define __DBL_HAS_INFINITY__ 1
9488// AVR:#define __DBL_HAS_QUIET_NAN__ 1
9489// AVR:#define __DBL_MANT_DIG__ 24
9490// AVR:#define __DBL_MAX_10_EXP__ 38
9491// AVR:#define __DBL_MAX_EXP__ 128
9492// AVR:#define __DBL_MAX__ 3.40282347e+38
9493// AVR:#define __DBL_MIN_10_EXP__ (-37)
9494// AVR:#define __DBL_MIN_EXP__ (-125)
9495// AVR:#define __DBL_MIN__ 1.17549435e-38
9496// AVR:#define __FINITE_MATH_ONLY__ 0
9497// AVR:#define __FLT_DECIMAL_DIG__ 9
9498// AVR:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9499// AVR:#define __FLT_DIG__ 6
9500// AVR:#define __FLT_EPSILON__ 1.19209290e-7F
9501// AVR:#define __FLT_EVAL_METHOD__ 0
9502// AVR:#define __FLT_HAS_DENORM__ 1
9503// AVR:#define __FLT_HAS_INFINITY__ 1
9504// AVR:#define __FLT_HAS_QUIET_NAN__ 1
9505// AVR:#define __FLT_MANT_DIG__ 24
9506// AVR:#define __FLT_MAX_10_EXP__ 38
9507// AVR:#define __FLT_MAX_EXP__ 128
9508// AVR:#define __FLT_MAX__ 3.40282347e+38F
9509// AVR:#define __FLT_MIN_10_EXP__ (-37)
9510// AVR:#define __FLT_MIN_EXP__ (-125)
9511// AVR:#define __FLT_MIN__ 1.17549435e-38F
9512// AVR:#define __FLT_RADIX__ 2
9513// AVR:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1
9514// AVR:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
9515// AVR:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
9516// AVR:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1
9517// AVR:#define __GCC_ATOMIC_INT_LOCK_FREE 1
9518// AVR:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
9519// AVR:#define __GCC_ATOMIC_LONG_LOCK_FREE 1
9520// AVR:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1
9521// AVR:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1
9522// AVR:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9523// AVR:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
9524// AVR:#define __GXX_ABI_VERSION 1002
9525// AVR:#define __INT16_C_SUFFIX__
9526// AVR:#define __INT16_MAX__ 32767
9527// AVR:#define __INT16_TYPE__ short
9528// AVR:#define __INT32_C_SUFFIX__ L
9529// AVR:#define __INT32_MAX__ 2147483647L
9530// AVR:#define __INT32_TYPE__ long int
9531// AVR:#define __INT64_C_SUFFIX__ LL
9532// AVR:#define __INT64_MAX__ 9223372036854775807LL
9533// AVR:#define __INT64_TYPE__ long long int
9534// AVR:#define __INT8_C_SUFFIX__
9535// AVR:#define __INT8_MAX__ 127
9536// AVR:#define __INT8_TYPE__ signed char
9537// AVR:#define __INTMAX_C_SUFFIX__ LL
9538// AVR:#define __INTMAX_MAX__ 9223372036854775807LL
9539// AVR:#define __INTMAX_TYPE__ long long int
9540// AVR:#define __INTPTR_MAX__ 32767
9541// AVR:#define __INTPTR_TYPE__ int
9542// AVR:#define __INT_FAST16_MAX__ 32767
9543// AVR:#define __INT_FAST16_TYPE__ int
9544// AVR:#define __INT_FAST32_MAX__ 2147483647L
9545// AVR:#define __INT_FAST32_TYPE__ long int
9546// AVR:#define __INT_FAST64_MAX__ 9223372036854775807LL
9547// AVR:#define __INT_FAST64_TYPE__ long long int
9548// AVR:#define __INT_FAST8_MAX__ 127
9549// AVR:#define __INT_FAST8_TYPE__ signed char
9550// AVR:#define __INT_LEAST16_MAX__ 32767
9551// AVR:#define __INT_LEAST16_TYPE__ int
9552// AVR:#define __INT_LEAST32_MAX__ 2147483647L
9553// AVR:#define __INT_LEAST32_TYPE__ long int
9554// AVR:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9555// AVR:#define __INT_LEAST64_TYPE__ long long int
9556// AVR:#define __INT_LEAST8_MAX__ 127
9557// AVR:#define __INT_LEAST8_TYPE__ signed char
9558// AVR:#define __INT_MAX__ 32767
9559// AVR:#define __LDBL_DECIMAL_DIG__ 9
9560// AVR:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
9561// AVR:#define __LDBL_DIG__ 6
9562// AVR:#define __LDBL_EPSILON__ 1.19209290e-7L
9563// AVR:#define __LDBL_HAS_DENORM__ 1
9564// AVR:#define __LDBL_HAS_INFINITY__ 1
9565// AVR:#define __LDBL_HAS_QUIET_NAN__ 1
9566// AVR:#define __LDBL_MANT_DIG__ 24
9567// AVR:#define __LDBL_MAX_10_EXP__ 38
9568// AVR:#define __LDBL_MAX_EXP__ 128
9569// AVR:#define __LDBL_MAX__ 3.40282347e+38L
9570// AVR:#define __LDBL_MIN_10_EXP__ (-37)
9571// AVR:#define __LDBL_MIN_EXP__ (-125)
9572// AVR:#define __LDBL_MIN__ 1.17549435e-38L
9573// AVR:#define __LONG_LONG_MAX__ 9223372036854775807LL
9574// AVR:#define __LONG_MAX__ 2147483647L
9575// AVR:#define __NO_INLINE__ 1
9576// AVR:#define __ORDER_BIG_ENDIAN__ 4321
9577// AVR:#define __ORDER_LITTLE_ENDIAN__ 1234
9578// AVR:#define __ORDER_PDP_ENDIAN__ 3412
9579// AVR:#define __PRAGMA_REDEFINE_EXTNAME 1
9580// AVR:#define __PTRDIFF_MAX__ 32767
9581// AVR:#define __PTRDIFF_TYPE__ int
9582// AVR:#define __SCHAR_MAX__ 127
9583// AVR:#define __SHRT_MAX__ 32767
9584// AVR:#define __SIG_ATOMIC_MAX__ 127
9585// AVR:#define __SIG_ATOMIC_WIDTH__ 8
9586// AVR:#define __SIZEOF_DOUBLE__ 4
9587// AVR:#define __SIZEOF_FLOAT__ 4
9588// AVR:#define __SIZEOF_INT__ 2
9589// AVR:#define __SIZEOF_LONG_DOUBLE__ 4
9590// AVR:#define __SIZEOF_LONG_LONG__ 8
9591// AVR:#define __SIZEOF_LONG__ 4
9592// AVR:#define __SIZEOF_POINTER__ 2
9593// AVR:#define __SIZEOF_PTRDIFF_T__ 2
9594// AVR:#define __SIZEOF_SHORT__ 2
9595// AVR:#define __SIZEOF_SIZE_T__ 2
9596// AVR:#define __SIZEOF_WCHAR_T__ 2
9597// AVR:#define __SIZEOF_WINT_T__ 2
9598// AVR:#define __SIZE_MAX__ 65535U
9599// AVR:#define __SIZE_TYPE__ unsigned int
9600// AVR:#define __STDC__ 1
9601// AVR:#define __UINT16_MAX__ 65535U
9602// AVR:#define __UINT16_TYPE__ unsigned short
9603// AVR:#define __UINT32_C_SUFFIX__ UL
9604// AVR:#define __UINT32_MAX__ 4294967295UL
9605// AVR:#define __UINT32_TYPE__ long unsigned int
9606// AVR:#define __UINT64_C_SUFFIX__ ULL
9607// AVR:#define __UINT64_MAX__ 18446744073709551615ULL
9608// AVR:#define __UINT64_TYPE__ long long unsigned int
9609// AVR:#define __UINT8_C_SUFFIX__
9610// AVR:#define __UINT8_MAX__ 255
9611// AVR:#define __UINT8_TYPE__ unsigned char
9612// AVR:#define __UINTMAX_C_SUFFIX__ ULL
9613// AVR:#define __UINTMAX_MAX__ 18446744073709551615ULL
9614// AVR:#define __UINTMAX_TYPE__ long long unsigned int
9615// AVR:#define __UINTPTR_MAX__ 65535U
9616// AVR:#define __UINTPTR_TYPE__ unsigned int
9617// AVR:#define __UINT_FAST16_MAX__ 65535U
9618// AVR:#define __UINT_FAST16_TYPE__ unsigned int
9619// AVR:#define __UINT_FAST32_MAX__ 4294967295UL
9620// AVR:#define __UINT_FAST32_TYPE__ long unsigned int
9621// AVR:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9622// AVR:#define __UINT_FAST64_TYPE__ long long unsigned int
9623// AVR:#define __UINT_FAST8_MAX__ 255
9624// AVR:#define __UINT_FAST8_TYPE__ unsigned char
9625// AVR:#define __UINT_LEAST16_MAX__ 65535U
9626// AVR:#define __UINT_LEAST16_TYPE__ unsigned int
9627// AVR:#define __UINT_LEAST32_MAX__ 4294967295UL
9628// AVR:#define __UINT_LEAST32_TYPE__ long unsigned int
9629// AVR:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9630// AVR:#define __UINT_LEAST64_TYPE__ long long unsigned int
9631// AVR:#define __UINT_LEAST8_MAX__ 255
9632// AVR:#define __UINT_LEAST8_TYPE__ unsigned char
9633// AVR:#define __USER_LABEL_PREFIX__
9634// AVR:#define __WCHAR_MAX__ 32767
9635// AVR:#define __WCHAR_TYPE__ int
9636// AVR:#define __WINT_TYPE__ int