blob: f7b14f7b76f0c08110c9b3dcbfc536c829c40722 [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
Joerg Sonnenberger66837642017-07-11 15:49:45 +00002188// RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabi %s -o - | FileCheck -match-full-lines -check-prefix ARM-NETBSD %s
2189
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002190// 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
Joerg Sonnenberger66837642017-07-11 15:49:45 +00002194// ARM-NETBSD:#define __ARM_ARCH_5TE__ 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
Oliver Stannard233310f2017-04-18 13:12:36 +00002381// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2382// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2383// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
Weiming Zhaob0613132016-04-18 16:25:46 +00002384// ARM-NONE-EABI: #define __ELF__ 1
2385
Tim Northover862eaf82016-05-13 21:26:45 +00002386// No MachO targets use the full EABI, even if AAPCS is used.
2387// 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
2388// 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
2389// 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
2390// 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
2391// 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
2392// ARM-MACHO-NO-EABI-NOT: #define __ARM_EABI__ 1
Tim Northovere77f78c2013-11-11 19:11:22 +00002393
James Y Knightc97efa42016-02-11 16:51:29 +00002394// 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 +00002395// ARM-BITRIG:#define __ARM_DWARF_EH__ 1
2396// ARM-BITRIG:#define __SIZEOF_SIZE_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002397// ARM-BITRIG:#define __SIZE_MAX__ 4294967295UL
Renato Golin9ba39232015-02-27 16:35:48 +00002398// ARM-BITRIG:#define __SIZE_TYPE__ long unsigned int
2399// ARM-BITRIG:#define __SIZE_WIDTH__ 32
2400
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002401// Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
2402
James Y Knightc97efa42016-02-11 16:51:29 +00002403// 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 +00002404// ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
2405
James Y Knightc97efa42016-02-11 16:51:29 +00002406// 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 +00002407// THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
2408
James Y Knightc97efa42016-02-11 16:51:29 +00002409// 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 +00002410// ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2411
James Y Knightc97efa42016-02-11 16:51:29 +00002412// 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 +00002413// THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2414
James Y Knightc97efa42016-02-11 16:51:29 +00002415// 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 +00002416// THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2417
James Y Knightc97efa42016-02-11 16:51:29 +00002418// 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 +00002419// ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2420
James Y Knightc97efa42016-02-11 16:51:29 +00002421// 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 +00002422// ARMv8: #define __THUMB_INTERWORK__ 1
2423// ARMv8-NOT: #define __thumb2__
2424
James Y Knightc97efa42016-02-11 16:51:29 +00002425// 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 +00002426// ARMebv8: #define __THUMB_INTERWORK__ 1
2427// ARMebv8-NOT: #define __thumb2__
2428
James Y Knightc97efa42016-02-11 16:51:29 +00002429// 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 +00002430// Thumbv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002431// Thumbv8: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002432
James Y Knightc97efa42016-02-11 16:51:29 +00002433// 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 +00002434// Thumbebv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002435// Thumbebv8: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002436
James Y Knightc97efa42016-02-11 16:51:29 +00002437// 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 +00002438// Thumbv5: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002439// Thumbv5-NOT: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002440
James Y Knightc97efa42016-02-11 16:51:29 +00002441// 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 +00002442// Thumbv6t2: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002443// Thumbv6t2: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002444
James Y Knightc97efa42016-02-11 16:51:29 +00002445// 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 +00002446// Thumbv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002447// Thumbv7: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002448
James Y Knightc97efa42016-02-11 16:51:29 +00002449// 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 +00002450// Thumbebv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002451// Thumbebv7: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002452
Chris Lattnere963d092009-10-29 04:55:36 +00002453//
James Y Knightc97efa42016-02-11 16:51:29 +00002454// 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 +00002455//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002456// I386-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002457// I386:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002458// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002459// I386:#define __CHAR16_TYPE__ unsigned short
2460// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002461// I386:#define __CHAR_BIT__ 8
2462// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2463// I386:#define __DBL_DIG__ 15
2464// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
2465// I386:#define __DBL_HAS_DENORM__ 1
2466// I386:#define __DBL_HAS_INFINITY__ 1
2467// I386:#define __DBL_HAS_QUIET_NAN__ 1
2468// I386:#define __DBL_MANT_DIG__ 53
2469// I386:#define __DBL_MAX_10_EXP__ 308
2470// I386:#define __DBL_MAX_EXP__ 1024
2471// I386:#define __DBL_MAX__ 1.7976931348623157e+308
2472// I386:#define __DBL_MIN_10_EXP__ (-307)
2473// I386:#define __DBL_MIN_EXP__ (-1021)
2474// I386:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002475// I386:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00002476// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2477// I386:#define __FLT_DIG__ 6
2478// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramercf501472011-12-28 15:47:06 +00002479// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnere963d092009-10-29 04:55:36 +00002480// I386:#define __FLT_HAS_DENORM__ 1
2481// I386:#define __FLT_HAS_INFINITY__ 1
2482// I386:#define __FLT_HAS_QUIET_NAN__ 1
2483// I386:#define __FLT_MANT_DIG__ 24
2484// I386:#define __FLT_MAX_10_EXP__ 38
2485// I386:#define __FLT_MAX_EXP__ 128
2486// I386:#define __FLT_MAX__ 3.40282347e+38F
2487// I386:#define __FLT_MIN_10_EXP__ (-37)
2488// I386:#define __FLT_MIN_EXP__ (-125)
2489// I386:#define __FLT_MIN__ 1.17549435e-38F
2490// I386:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002491// I386:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002492// I386:#define __INT16_FMTd__ "hd"
2493// I386:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002494// I386:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00002495// I386:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002496// I386:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002497// I386:#define __INT32_FMTd__ "d"
2498// I386:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002499// I386:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00002500// I386:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002501// I386:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002502// I386:#define __INT64_FMTd__ "lld"
2503// I386:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002504// I386:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00002505// I386:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002506// I386:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002507// I386:#define __INT8_FMTd__ "hhd"
2508// I386:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002509// I386:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002510// I386:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002511// I386:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002512// I386:#define __INTMAX_FMTd__ "lld"
2513// I386:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00002514// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00002515// I386:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002516// I386:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002517// I386:#define __INTPTR_FMTd__ "d"
2518// I386:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002519// I386:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00002520// I386:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002521// I386:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002522// I386:#define __INT_FAST16_FMTd__ "hd"
2523// I386:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002524// I386:#define __INT_FAST16_MAX__ 32767
2525// I386:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002526// I386:#define __INT_FAST32_FMTd__ "d"
2527// I386:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002528// I386:#define __INT_FAST32_MAX__ 2147483647
2529// I386:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002530// I386:#define __INT_FAST64_FMTd__ "lld"
2531// I386:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002532// I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
2533// I386:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002534// I386:#define __INT_FAST8_FMTd__ "hhd"
2535// I386:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002536// I386:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002537// I386:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002538// I386:#define __INT_LEAST16_FMTd__ "hd"
2539// I386:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002540// I386:#define __INT_LEAST16_MAX__ 32767
2541// I386:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002542// I386:#define __INT_LEAST32_FMTd__ "d"
2543// I386:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002544// I386:#define __INT_LEAST32_MAX__ 2147483647
2545// I386:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002546// I386:#define __INT_LEAST64_FMTd__ "lld"
2547// I386:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002548// I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2549// I386:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002550// I386:#define __INT_LEAST8_FMTd__ "hhd"
2551// I386:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002552// I386:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002553// I386:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00002554// I386:#define __INT_MAX__ 2147483647
2555// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2556// I386:#define __LDBL_DIG__ 18
2557// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2558// I386:#define __LDBL_HAS_DENORM__ 1
2559// I386:#define __LDBL_HAS_INFINITY__ 1
2560// I386:#define __LDBL_HAS_QUIET_NAN__ 1
2561// I386:#define __LDBL_MANT_DIG__ 64
2562// I386:#define __LDBL_MAX_10_EXP__ 4932
2563// I386:#define __LDBL_MAX_EXP__ 16384
2564// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2565// I386:#define __LDBL_MIN_10_EXP__ (-4931)
2566// I386:#define __LDBL_MIN_EXP__ (-16381)
2567// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2568// I386:#define __LITTLE_ENDIAN__ 1
2569// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
2570// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002571// I386-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00002572// I386:#define __NO_MATH_INLINES 1
2573// I386:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00002574// I386:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00002575// I386:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002576// I386:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002577// I386:#define __SCHAR_MAX__ 127
2578// I386:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002579// I386:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00002580// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002581// I386:#define __SIZEOF_DOUBLE__ 8
2582// I386:#define __SIZEOF_FLOAT__ 4
2583// I386:#define __SIZEOF_INT__ 4
2584// I386:#define __SIZEOF_LONG_DOUBLE__ 12
2585// I386:#define __SIZEOF_LONG_LONG__ 8
2586// I386:#define __SIZEOF_LONG__ 4
2587// I386:#define __SIZEOF_POINTER__ 4
2588// I386:#define __SIZEOF_PTRDIFF_T__ 4
2589// I386:#define __SIZEOF_SHORT__ 2
2590// I386:#define __SIZEOF_SIZE_T__ 4
2591// I386:#define __SIZEOF_WCHAR_T__ 4
2592// I386:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002593// I386:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00002594// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002595// I386:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002596// I386:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002597// I386:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002598// I386:#define __UINT16_TYPE__ unsigned short
2599// I386:#define __UINT32_C_SUFFIX__ U
2600// I386:#define __UINT32_MAX__ 4294967295U
2601// I386:#define __UINT32_TYPE__ unsigned int
2602// I386:#define __UINT64_C_SUFFIX__ ULL
2603// I386:#define __UINT64_MAX__ 18446744073709551615ULL
2604// I386:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002605// I386:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002606// I386:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002607// I386:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002608// I386:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002609// I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00002610// I386:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002611// I386:#define __UINTMAX_WIDTH__ 64
2612// I386:#define __UINTPTR_MAX__ 4294967295U
2613// I386:#define __UINTPTR_TYPE__ unsigned int
2614// I386:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002615// I386:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002616// I386:#define __UINT_FAST16_TYPE__ unsigned short
2617// I386:#define __UINT_FAST32_MAX__ 4294967295U
2618// I386:#define __UINT_FAST32_TYPE__ unsigned int
2619// I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2620// I386:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002621// I386:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002622// I386:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002623// I386:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002624// I386:#define __UINT_LEAST16_TYPE__ unsigned short
2625// I386:#define __UINT_LEAST32_MAX__ 4294967295U
2626// I386:#define __UINT_LEAST32_TYPE__ unsigned int
2627// I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2628// I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002629// I386:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002630// I386:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00002631// I386:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002632// I386:#define __WCHAR_MAX__ 2147483647
2633// I386:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002634// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002635// I386:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002636// I386:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002637// I386:#define __i386 1
2638// I386:#define __i386__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002639// I386:#define i386 1
2640//
James Y Knightc97efa42016-02-11 16:51:29 +00002641// 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 +00002642// 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 +00002643//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002644// I386-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002645// I386-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002646// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002647// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
2648// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
2649// I386-LINUX:#define __CHAR_BIT__ 8
2650// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2651// I386-LINUX:#define __DBL_DIG__ 15
2652// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2653// I386-LINUX:#define __DBL_HAS_DENORM__ 1
2654// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
2655// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2656// I386-LINUX:#define __DBL_MANT_DIG__ 53
2657// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
2658// I386-LINUX:#define __DBL_MAX_EXP__ 1024
2659// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2660// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2661// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
2662// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002663// I386-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002664// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2665// I386-LINUX:#define __FLT_DIG__ 6
2666// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2667// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
2668// I386-LINUX:#define __FLT_HAS_DENORM__ 1
2669// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
2670// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2671// I386-LINUX:#define __FLT_MANT_DIG__ 24
2672// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
2673// I386-LINUX:#define __FLT_MAX_EXP__ 128
2674// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2675// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2676// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
2677// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2678// I386-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002679// I386-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002680// I386-LINUX:#define __INT16_FMTd__ "hd"
2681// I386-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002682// I386-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00002683// I386-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002684// I386-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002685// I386-LINUX:#define __INT32_FMTd__ "d"
2686// I386-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002687// I386-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002688// I386-LINUX:#define __INT32_TYPE__ int
2689// I386-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002690// I386-LINUX:#define __INT64_FMTd__ "lld"
2691// I386-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002692// I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002693// I386-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002694// I386-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002695// I386-LINUX:#define __INT8_FMTd__ "hhd"
2696// I386-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002697// I386-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002698// I386-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002699// I386-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002700// I386-LINUX:#define __INTMAX_FMTd__ "lld"
2701// I386-LINUX:#define __INTMAX_FMTi__ "lli"
Douglas Gregore6d6e512011-01-12 21:19:25 +00002702// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2703// I386-LINUX:#define __INTMAX_TYPE__ long long int
2704// I386-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002705// I386-LINUX:#define __INTPTR_FMTd__ "d"
2706// I386-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002707// I386-LINUX:#define __INTPTR_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002708// I386-LINUX:#define __INTPTR_TYPE__ int
2709// I386-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002710// I386-LINUX:#define __INT_FAST16_FMTd__ "hd"
2711// I386-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002712// I386-LINUX:#define __INT_FAST16_MAX__ 32767
2713// I386-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002714// I386-LINUX:#define __INT_FAST32_FMTd__ "d"
2715// I386-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002716// I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
2717// I386-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002718// I386-LINUX:#define __INT_FAST64_FMTd__ "lld"
2719// I386-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002720// I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
2721// I386-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002722// I386-LINUX:#define __INT_FAST8_FMTd__ "hhd"
2723// I386-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002724// I386-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002725// I386-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002726// I386-LINUX:#define __INT_LEAST16_FMTd__ "hd"
2727// I386-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002728// I386-LINUX:#define __INT_LEAST16_MAX__ 32767
2729// I386-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002730// I386-LINUX:#define __INT_LEAST32_FMTd__ "d"
2731// I386-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002732// I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
2733// I386-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002734// I386-LINUX:#define __INT_LEAST64_FMTd__ "lld"
2735// I386-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002736// I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2737// I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002738// I386-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
2739// I386-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002740// I386-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002741// I386-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002742// I386-LINUX:#define __INT_MAX__ 2147483647
2743// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2744// I386-LINUX:#define __LDBL_DIG__ 18
2745// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2746// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
2747// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
2748// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2749// I386-LINUX:#define __LDBL_MANT_DIG__ 64
2750// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2751// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
2752// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2753// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2754// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2755// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2756// I386-LINUX:#define __LITTLE_ENDIAN__ 1
2757// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2758// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002759// I386-LINUX-NOT:#define __LP64__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002760// I386-LINUX:#define __NO_MATH_INLINES 1
2761// I386-LINUX:#define __POINTER_WIDTH__ 32
2762// I386-LINUX:#define __PTRDIFF_TYPE__ int
2763// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002764// I386-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002765// I386-LINUX:#define __SCHAR_MAX__ 127
2766// I386-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002767// I386-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002768// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2769// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
2770// I386-LINUX:#define __SIZEOF_FLOAT__ 4
2771// I386-LINUX:#define __SIZEOF_INT__ 4
2772// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
2773// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
2774// I386-LINUX:#define __SIZEOF_LONG__ 4
2775// I386-LINUX:#define __SIZEOF_POINTER__ 4
2776// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2777// I386-LINUX:#define __SIZEOF_SHORT__ 2
2778// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
2779// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
2780// I386-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002781// I386-LINUX:#define __SIZE_MAX__ 4294967295U
Douglas Gregore6d6e512011-01-12 21:19:25 +00002782// I386-LINUX:#define __SIZE_TYPE__ unsigned int
2783// I386-LINUX:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002784// I386-LINUX-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00002785// I386-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002786// I386-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002787// I386-LINUX:#define __UINT16_TYPE__ unsigned short
2788// I386-LINUX:#define __UINT32_C_SUFFIX__ U
2789// I386-LINUX:#define __UINT32_MAX__ 4294967295U
2790// I386-LINUX:#define __UINT32_TYPE__ unsigned int
2791// I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
2792// I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
2793// I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002794// I386-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002795// I386-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002796// I386-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002797// I386-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002798// I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002799// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002800// I386-LINUX:#define __UINTMAX_WIDTH__ 64
2801// I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
2802// I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
2803// I386-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002804// I386-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002805// I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
2806// I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
2807// I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
2808// I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2809// I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002810// I386-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002811// I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002812// I386-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002813// I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
2814// I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
2815// I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
2816// I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2817// I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002818// I386-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002819// I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002820// I386-LINUX:#define __USER_LABEL_PREFIX__
2821// I386-LINUX:#define __WCHAR_MAX__ 2147483647
2822// I386-LINUX:#define __WCHAR_TYPE__ int
2823// I386-LINUX:#define __WCHAR_WIDTH__ 32
2824// I386-LINUX:#define __WINT_TYPE__ unsigned int
2825// I386-LINUX:#define __WINT_WIDTH__ 32
2826// I386-LINUX:#define __i386 1
2827// I386-LINUX:#define __i386__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00002828// I386-LINUX:#define i386 1
2829//
James Y Knightc97efa42016-02-11 16:51:29 +00002830// 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 +00002831// 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 +00002832//
2833// I386-NETBSD-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002834// I386-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002835// I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2836// I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
2837// I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
2838// I386-NETBSD:#define __CHAR_BIT__ 8
2839// I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2840// I386-NETBSD:#define __DBL_DIG__ 15
2841// I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2842// I386-NETBSD:#define __DBL_HAS_DENORM__ 1
2843// I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
2844// I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2845// I386-NETBSD:#define __DBL_MANT_DIG__ 53
2846// I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
2847// I386-NETBSD:#define __DBL_MAX_EXP__ 1024
2848// I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2849// I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2850// I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2851// I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002852// I386-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002853// I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2854// I386-NETBSD:#define __FLT_DIG__ 6
2855// I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2856// I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
2857// I386-NETBSD:#define __FLT_HAS_DENORM__ 1
2858// I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
2859// I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2860// I386-NETBSD:#define __FLT_MANT_DIG__ 24
2861// I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
2862// I386-NETBSD:#define __FLT_MAX_EXP__ 128
2863// I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2864// I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2865// I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
2866// I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2867// I386-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002868// I386-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002869// I386-NETBSD:#define __INT16_FMTd__ "hd"
2870// I386-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002871// I386-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002872// I386-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002873// I386-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002874// I386-NETBSD:#define __INT32_FMTd__ "d"
2875// I386-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002876// I386-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002877// I386-NETBSD:#define __INT32_TYPE__ int
2878// I386-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002879// I386-NETBSD:#define __INT64_FMTd__ "lld"
2880// I386-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002881// I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002882// I386-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002883// I386-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002884// I386-NETBSD:#define __INT8_FMTd__ "hhd"
2885// I386-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002886// I386-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002887// I386-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002888// I386-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002889// I386-NETBSD:#define __INTMAX_FMTd__ "lld"
2890// I386-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002891// I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2892// I386-NETBSD:#define __INTMAX_TYPE__ long long int
2893// I386-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002894// I386-NETBSD:#define __INTPTR_FMTd__ "d"
2895// I386-NETBSD:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002896// I386-NETBSD:#define __INTPTR_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002897// I386-NETBSD:#define __INTPTR_TYPE__ int
2898// I386-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002899// I386-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2900// I386-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002901// I386-NETBSD:#define __INT_FAST16_MAX__ 32767
2902// I386-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002903// I386-NETBSD:#define __INT_FAST32_FMTd__ "d"
2904// I386-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002905// I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2906// I386-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002907// I386-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2908// I386-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002909// I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2910// I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002911// I386-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2912// I386-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002913// I386-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002914// I386-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002915// I386-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2916// I386-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002917// I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
2918// I386-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002919// I386-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2920// I386-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002921// I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2922// I386-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002923// I386-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2924// I386-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002925// I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2926// I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002927// I386-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2928// I386-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002929// I386-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002930// I386-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002931// I386-NETBSD:#define __INT_MAX__ 2147483647
2932// I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2933// I386-NETBSD:#define __LDBL_DIG__ 18
2934// I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2935// I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
2936// I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2937// I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2938// I386-NETBSD:#define __LDBL_MANT_DIG__ 64
2939// I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
2940// I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
2941// I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2942// I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
2943// I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
2944// I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2945// I386-NETBSD:#define __LITTLE_ENDIAN__ 1
2946// I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2947// I386-NETBSD:#define __LONG_MAX__ 2147483647L
2948// I386-NETBSD-NOT:#define __LP64__
2949// I386-NETBSD:#define __NO_MATH_INLINES 1
2950// I386-NETBSD:#define __POINTER_WIDTH__ 32
2951// I386-NETBSD:#define __PTRDIFF_TYPE__ int
2952// I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002953// I386-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002954// I386-NETBSD:#define __SCHAR_MAX__ 127
2955// I386-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002956// I386-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002957// I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2958// I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
2959// I386-NETBSD:#define __SIZEOF_FLOAT__ 4
2960// I386-NETBSD:#define __SIZEOF_INT__ 4
2961// I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
2962// I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2963// I386-NETBSD:#define __SIZEOF_LONG__ 4
2964// I386-NETBSD:#define __SIZEOF_POINTER__ 4
2965// I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2966// I386-NETBSD:#define __SIZEOF_SHORT__ 2
2967// I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
2968// I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2969// I386-NETBSD:#define __SIZEOF_WINT_T__ 4
2970// I386-NETBSD:#define __SIZE_MAX__ 4294967295U
2971// I386-NETBSD:#define __SIZE_TYPE__ unsigned int
2972// I386-NETBSD:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002973// I386-NETBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
James Y Knightc97efa42016-02-11 16:51:29 +00002974// I386-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002975// I386-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002976// I386-NETBSD:#define __UINT16_TYPE__ unsigned short
2977// I386-NETBSD:#define __UINT32_C_SUFFIX__ U
2978// I386-NETBSD:#define __UINT32_MAX__ 4294967295U
2979// I386-NETBSD:#define __UINT32_TYPE__ unsigned int
2980// I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2981// I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2982// I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002983// I386-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002984// I386-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002985// I386-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002986// I386-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002987// I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002988// I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002989// I386-NETBSD:#define __UINTMAX_WIDTH__ 64
2990// I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
2991// I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
2992// I386-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002993// I386-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002994// I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2995// I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2996// I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2997// I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2998// I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002999// I386-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003000// I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003001// I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003002// I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
3003// I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
3004// I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
3005// I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3006// I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003007// I386-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003008// I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003009// I386-NETBSD:#define __USER_LABEL_PREFIX__
3010// I386-NETBSD:#define __WCHAR_MAX__ 2147483647
3011// I386-NETBSD:#define __WCHAR_TYPE__ int
3012// I386-NETBSD:#define __WCHAR_WIDTH__ 32
3013// I386-NETBSD:#define __WINT_TYPE__ int
3014// I386-NETBSD:#define __WINT_WIDTH__ 32
3015// I386-NETBSD:#define __i386 1
3016// I386-NETBSD:#define __i386__ 1
3017// I386-NETBSD:#define i386 1
3018//
James Y Knightc97efa42016-02-11 16:51:29 +00003019// 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 +00003020// I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
James Y Knightc97efa42016-02-11 16:51:29 +00003021// 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 +00003022// I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00003023// 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 +00003024// I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
3025
James Y Knightc97efa42016-02-11 16:51:29 +00003026// RUN: %clang_cc1 -E -dM -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3027// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3028// RUN: %clang_cc1 -E -dM -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3029// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3030// I386-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00003031
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003032//
Richard Smith59139022016-09-30 22:41:36 +00003033// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-C %s
3034// 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 +00003035//
3036// MIPS32BE:#define MIPSEB 1
3037// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003038// MIPS32BE-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003039// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003040// MIPS32BE:#define _MIPS_ARCH "mips32r2"
3041// MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003042// MIPS32BE:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003043// MIPS32BE:#define _MIPS_SIM _ABIO32
3044// MIPS32BE:#define _MIPS_SZINT 32
3045// MIPS32BE:#define _MIPS_SZLONG 32
3046// MIPS32BE:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003047// MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00003048// MIPS32BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003049// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003050// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
3051// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
3052// MIPS32BE:#define __CHAR_BIT__ 8
3053// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
3054// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3055// MIPS32BE:#define __DBL_DIG__ 15
3056// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
3057// MIPS32BE:#define __DBL_HAS_DENORM__ 1
3058// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
3059// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
3060// MIPS32BE:#define __DBL_MANT_DIG__ 53
3061// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
3062// MIPS32BE:#define __DBL_MAX_EXP__ 1024
3063// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
3064// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
3065// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
3066// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003067// MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003068// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3069// MIPS32BE:#define __FLT_DIG__ 6
3070// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
3071// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
3072// MIPS32BE:#define __FLT_HAS_DENORM__ 1
3073// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
3074// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
3075// MIPS32BE:#define __FLT_MANT_DIG__ 24
3076// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
3077// MIPS32BE:#define __FLT_MAX_EXP__ 128
3078// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
3079// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
3080// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
3081// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
3082// MIPS32BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003083// MIPS32BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003084// MIPS32BE:#define __INT16_FMTd__ "hd"
3085// MIPS32BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003086// MIPS32BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003087// MIPS32BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003088// MIPS32BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003089// MIPS32BE:#define __INT32_FMTd__ "d"
3090// MIPS32BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003091// MIPS32BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003092// MIPS32BE:#define __INT32_TYPE__ int
3093// MIPS32BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003094// MIPS32BE:#define __INT64_FMTd__ "lld"
3095// MIPS32BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003096// MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003097// MIPS32BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003098// MIPS32BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003099// MIPS32BE:#define __INT8_FMTd__ "hhd"
3100// MIPS32BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003101// MIPS32BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003102// MIPS32BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003103// MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003104// MIPS32BE:#define __INTMAX_FMTd__ "lld"
3105// MIPS32BE:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003106// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
3107// MIPS32BE:#define __INTMAX_TYPE__ long long int
3108// MIPS32BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003109// MIPS32BE:#define __INTPTR_FMTd__ "ld"
3110// MIPS32BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003111// MIPS32BE:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003112// MIPS32BE:#define __INTPTR_TYPE__ long int
3113// MIPS32BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003114// MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
3115// MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003116// MIPS32BE:#define __INT_FAST16_MAX__ 32767
3117// MIPS32BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003118// MIPS32BE:#define __INT_FAST32_FMTd__ "d"
3119// MIPS32BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003120// MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
3121// MIPS32BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003122// MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
3123// MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003124// MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
3125// MIPS32BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003126// MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
3127// MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003128// MIPS32BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003129// MIPS32BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003130// MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
3131// MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003132// MIPS32BE:#define __INT_LEAST16_MAX__ 32767
3133// MIPS32BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003134// MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
3135// MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003136// MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
3137// MIPS32BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003138// MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
3139// MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003140// MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3141// MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003142// MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
3143// MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003144// MIPS32BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003145// MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003146// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003147// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003148// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003149// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003150// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
3151// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
3152// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
3153// MIPS32BE:#define __LDBL_MANT_DIG__ 53
3154// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
3155// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003156// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003157// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
3158// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003159// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003160// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
3161// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003162// MIPS32BE-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003163// MIPS32BE:#define __MIPSEB 1
3164// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003165// MIPS32BE:#define __POINTER_WIDTH__ 32
3166// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
3167// MIPS32BE:#define __PTRDIFF_TYPE__ int
3168// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003169// MIPS32BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003170// MIPS32BE:#define __SCHAR_MAX__ 127
3171// MIPS32BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003172// MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003173// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
3174// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
3175// MIPS32BE:#define __SIZEOF_FLOAT__ 4
3176// MIPS32BE:#define __SIZEOF_INT__ 4
3177// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
3178// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
3179// MIPS32BE:#define __SIZEOF_LONG__ 4
3180// MIPS32BE:#define __SIZEOF_POINTER__ 4
3181// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
3182// MIPS32BE:#define __SIZEOF_SHORT__ 2
3183// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
3184// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
3185// MIPS32BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003186// MIPS32BE:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003187// MIPS32BE:#define __SIZE_TYPE__ unsigned int
3188// MIPS32BE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003189// MIPS32BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003190// MIPS32BE:#define __STDC_HOSTED__ 0
Richard Smith59139022016-09-30 22:41:36 +00003191// MIPS32BE-C:#define __STDC_VERSION__ 201112L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003192// MIPS32BE:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00003193// MIPS32BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003194// MIPS32BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003195// MIPS32BE:#define __UINT16_TYPE__ unsigned short
3196// MIPS32BE:#define __UINT32_C_SUFFIX__ U
3197// MIPS32BE:#define __UINT32_MAX__ 4294967295U
3198// MIPS32BE:#define __UINT32_TYPE__ unsigned int
3199// MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
3200// MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
3201// MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003202// MIPS32BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003203// MIPS32BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003204// MIPS32BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003205// MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003206// MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003207// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003208// MIPS32BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003209// MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003210// MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003211// MIPS32BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003212// MIPS32BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003213// MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
3214// MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
3215// MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
3216// MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3217// MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003218// MIPS32BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003219// MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003220// MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003221// MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
3222// MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
3223// MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
3224// MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3225// MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003226// MIPS32BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003227// MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003228// MIPS32BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003229// MIPS32BE:#define __WCHAR_MAX__ 2147483647
3230// MIPS32BE:#define __WCHAR_TYPE__ int
3231// MIPS32BE:#define __WCHAR_WIDTH__ 32
3232// MIPS32BE:#define __WINT_TYPE__ int
3233// MIPS32BE:#define __WINT_WIDTH__ 32
3234// MIPS32BE:#define __clang__ 1
3235// MIPS32BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003236// MIPS32BE:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003237// MIPS32BE:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003238// MIPS32BE:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003239// MIPS32BE:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003240// MIPS32BE:#define __mips_hard_float 1
3241// MIPS32BE:#define __mips_o32 1
3242// MIPS32BE:#define _mips 1
3243// MIPS32BE:#define mips 1
3244//
James Y Knightc97efa42016-02-11 16:51:29 +00003245// 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 +00003246//
3247// MIPS32EL:#define MIPSEL 1
3248// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003249// MIPS32EL-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003250// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003251// MIPS32EL:#define _MIPS_ARCH "mips32r2"
3252// MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003253// MIPS32EL:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003254// MIPS32EL:#define _MIPS_SIM _ABIO32
3255// MIPS32EL:#define _MIPS_SZINT 32
3256// MIPS32EL:#define _MIPS_SZLONG 32
3257// MIPS32EL:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003258// MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003259// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003260// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
3261// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
3262// MIPS32EL:#define __CHAR_BIT__ 8
3263// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
3264// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3265// MIPS32EL:#define __DBL_DIG__ 15
3266// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
3267// MIPS32EL:#define __DBL_HAS_DENORM__ 1
3268// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
3269// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
3270// MIPS32EL:#define __DBL_MANT_DIG__ 53
3271// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
3272// MIPS32EL:#define __DBL_MAX_EXP__ 1024
3273// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
3274// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
3275// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
3276// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003277// MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003278// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3279// MIPS32EL:#define __FLT_DIG__ 6
3280// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
3281// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
3282// MIPS32EL:#define __FLT_HAS_DENORM__ 1
3283// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
3284// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
3285// MIPS32EL:#define __FLT_MANT_DIG__ 24
3286// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
3287// MIPS32EL:#define __FLT_MAX_EXP__ 128
3288// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
3289// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
3290// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
3291// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
3292// MIPS32EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003293// MIPS32EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003294// MIPS32EL:#define __INT16_FMTd__ "hd"
3295// MIPS32EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003296// MIPS32EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003297// MIPS32EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003298// MIPS32EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003299// MIPS32EL:#define __INT32_FMTd__ "d"
3300// MIPS32EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003301// MIPS32EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003302// MIPS32EL:#define __INT32_TYPE__ int
3303// MIPS32EL:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003304// MIPS32EL:#define __INT64_FMTd__ "lld"
3305// MIPS32EL:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003306// MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003307// MIPS32EL:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003308// MIPS32EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003309// MIPS32EL:#define __INT8_FMTd__ "hhd"
3310// MIPS32EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003311// MIPS32EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003312// MIPS32EL:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003313// MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003314// MIPS32EL:#define __INTMAX_FMTd__ "lld"
3315// MIPS32EL:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003316// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
3317// MIPS32EL:#define __INTMAX_TYPE__ long long int
3318// MIPS32EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003319// MIPS32EL:#define __INTPTR_FMTd__ "ld"
3320// MIPS32EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003321// MIPS32EL:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003322// MIPS32EL:#define __INTPTR_TYPE__ long int
3323// MIPS32EL:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003324// MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
3325// MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003326// MIPS32EL:#define __INT_FAST16_MAX__ 32767
3327// MIPS32EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003328// MIPS32EL:#define __INT_FAST32_FMTd__ "d"
3329// MIPS32EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003330// MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
3331// MIPS32EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003332// MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
3333// MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003334// MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
3335// MIPS32EL:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003336// MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
3337// MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003338// MIPS32EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003339// MIPS32EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003340// MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
3341// MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003342// MIPS32EL:#define __INT_LEAST16_MAX__ 32767
3343// MIPS32EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003344// MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
3345// MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003346// MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
3347// MIPS32EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003348// MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
3349// MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003350// MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3351// MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003352// MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
3353// MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003354// MIPS32EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003355// MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003356// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003357// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003358// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003359// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003360// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
3361// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
3362// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
3363// MIPS32EL:#define __LDBL_MANT_DIG__ 53
3364// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
3365// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003366// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003367// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
3368// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003369// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00003370// MIPS32EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003371// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
3372// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003373// MIPS32EL-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003374// MIPS32EL:#define __MIPSEL 1
3375// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003376// MIPS32EL:#define __POINTER_WIDTH__ 32
3377// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
3378// MIPS32EL:#define __PTRDIFF_TYPE__ int
3379// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003380// MIPS32EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003381// MIPS32EL:#define __SCHAR_MAX__ 127
3382// MIPS32EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003383// MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003384// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
3385// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
3386// MIPS32EL:#define __SIZEOF_FLOAT__ 4
3387// MIPS32EL:#define __SIZEOF_INT__ 4
3388// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
3389// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
3390// MIPS32EL:#define __SIZEOF_LONG__ 4
3391// MIPS32EL:#define __SIZEOF_POINTER__ 4
3392// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
3393// MIPS32EL:#define __SIZEOF_SHORT__ 2
3394// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
3395// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
3396// MIPS32EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003397// MIPS32EL:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003398// MIPS32EL:#define __SIZE_TYPE__ unsigned int
3399// MIPS32EL:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003400// MIPS32EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003401// MIPS32EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003402// MIPS32EL:#define __UINT16_TYPE__ unsigned short
3403// MIPS32EL:#define __UINT32_C_SUFFIX__ U
3404// MIPS32EL:#define __UINT32_MAX__ 4294967295U
3405// MIPS32EL:#define __UINT32_TYPE__ unsigned int
3406// MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
3407// MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
3408// MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003409// MIPS32EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003410// MIPS32EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003411// MIPS32EL:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003412// MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003413// MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003414// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003415// MIPS32EL:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003416// MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003417// MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003418// MIPS32EL:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003419// MIPS32EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003420// MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
3421// MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
3422// MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
3423// MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3424// MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003425// MIPS32EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003426// MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003427// MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003428// MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
3429// MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
3430// MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
3431// MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3432// MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003433// MIPS32EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003434// MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003435// MIPS32EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003436// MIPS32EL:#define __WCHAR_MAX__ 2147483647
3437// MIPS32EL:#define __WCHAR_TYPE__ int
3438// MIPS32EL:#define __WCHAR_WIDTH__ 32
3439// MIPS32EL:#define __WINT_TYPE__ int
3440// MIPS32EL:#define __WINT_WIDTH__ 32
3441// MIPS32EL:#define __clang__ 1
3442// MIPS32EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003443// MIPS32EL:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003444// MIPS32EL:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003445// MIPS32EL:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003446// MIPS32EL:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003447// MIPS32EL:#define __mips_hard_float 1
3448// MIPS32EL:#define __mips_o32 1
3449// MIPS32EL:#define _mips 1
3450// MIPS32EL:#define mips 1
3451//
Simon Atanasyan495523e42015-01-22 23:16:48 +00003452// RUN: %clang_cc1 -E -dM -ffreestanding \
3453// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
Richard Smith59139022016-09-30 22:41:36 +00003454// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-C %s
3455// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding \
3456// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
3457// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-CXX %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003458//
3459// MIPSN32BE: #define MIPSEB 1
3460// MIPSN32BE: #define _ABIN32 2
3461// MIPSN32BE: #define _ILP32 1
3462// MIPSN32BE: #define _MIPSEB 1
3463// MIPSN32BE: #define _MIPS_ARCH "mips64r2"
3464// MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
3465// MIPSN32BE: #define _MIPS_FPSET 32
3466// MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
3467// MIPSN32BE: #define _MIPS_SIM _ABIN32
3468// MIPSN32BE: #define _MIPS_SZINT 32
3469// MIPSN32BE: #define _MIPS_SZLONG 32
3470// MIPSN32BE: #define _MIPS_SZPTR 32
3471// MIPSN32BE: #define __ATOMIC_ACQUIRE 2
3472// MIPSN32BE: #define __ATOMIC_ACQ_REL 4
3473// MIPSN32BE: #define __ATOMIC_CONSUME 1
3474// MIPSN32BE: #define __ATOMIC_RELAXED 0
3475// MIPSN32BE: #define __ATOMIC_RELEASE 3
3476// MIPSN32BE: #define __ATOMIC_SEQ_CST 5
3477// MIPSN32BE: #define __BIG_ENDIAN__ 1
3478// MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3479// MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
3480// MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
3481// MIPSN32BE: #define __CHAR_BIT__ 8
3482// MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
3483// MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3484// MIPSN32BE: #define __DBL_DIG__ 15
3485// MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
3486// MIPSN32BE: #define __DBL_HAS_DENORM__ 1
3487// MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
3488// MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
3489// MIPSN32BE: #define __DBL_MANT_DIG__ 53
3490// MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
3491// MIPSN32BE: #define __DBL_MAX_EXP__ 1024
3492// MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
3493// MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
3494// MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
3495// MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003496// MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003497// MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
3498// MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3499// MIPSN32BE: #define __FLT_DIG__ 6
3500// MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
3501// MIPSN32BE: #define __FLT_EVAL_METHOD__ 0
3502// MIPSN32BE: #define __FLT_HAS_DENORM__ 1
3503// MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
3504// MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
3505// MIPSN32BE: #define __FLT_MANT_DIG__ 24
3506// MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
3507// MIPSN32BE: #define __FLT_MAX_EXP__ 128
3508// MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
3509// MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
3510// MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
3511// MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
3512// MIPSN32BE: #define __FLT_RADIX__ 2
3513// MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3514// MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3515// MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3516// MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3517// MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3518// MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3519// MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3520// MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3521// MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3522// MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3523// MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3524// MIPSN32BE: #define __GNUC_MINOR__ 2
3525// MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
Richard Smith59139022016-09-30 22:41:36 +00003526// MIPSN32BE-C: #define __GNUC_STDC_INLINE__ 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003527// MIPSN32BE: #define __GNUC__ 4
3528// MIPSN32BE: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003529// MIPSN32BE: #define __ILP32__ 1
3530// MIPSN32BE: #define __INT16_C_SUFFIX__
3531// MIPSN32BE: #define __INT16_FMTd__ "hd"
3532// MIPSN32BE: #define __INT16_FMTi__ "hi"
3533// MIPSN32BE: #define __INT16_MAX__ 32767
3534// MIPSN32BE: #define __INT16_TYPE__ short
3535// MIPSN32BE: #define __INT32_C_SUFFIX__
3536// MIPSN32BE: #define __INT32_FMTd__ "d"
3537// MIPSN32BE: #define __INT32_FMTi__ "i"
3538// MIPSN32BE: #define __INT32_MAX__ 2147483647
3539// MIPSN32BE: #define __INT32_TYPE__ int
3540// MIPSN32BE: #define __INT64_C_SUFFIX__ LL
3541// MIPSN32BE: #define __INT64_FMTd__ "lld"
3542// MIPSN32BE: #define __INT64_FMTi__ "lli"
3543// MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
3544// MIPSN32BE: #define __INT64_TYPE__ long long int
3545// MIPSN32BE: #define __INT8_C_SUFFIX__
3546// MIPSN32BE: #define __INT8_FMTd__ "hhd"
3547// MIPSN32BE: #define __INT8_FMTi__ "hhi"
3548// MIPSN32BE: #define __INT8_MAX__ 127
3549// MIPSN32BE: #define __INT8_TYPE__ signed char
3550// MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
3551// MIPSN32BE: #define __INTMAX_FMTd__ "lld"
3552// MIPSN32BE: #define __INTMAX_FMTi__ "lli"
3553// MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
3554// MIPSN32BE: #define __INTMAX_TYPE__ long long int
3555// MIPSN32BE: #define __INTMAX_WIDTH__ 64
3556// MIPSN32BE: #define __INTPTR_FMTd__ "ld"
3557// MIPSN32BE: #define __INTPTR_FMTi__ "li"
3558// MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
3559// MIPSN32BE: #define __INTPTR_TYPE__ long int
3560// MIPSN32BE: #define __INTPTR_WIDTH__ 32
3561// MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
3562// MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
3563// MIPSN32BE: #define __INT_FAST16_MAX__ 32767
3564// MIPSN32BE: #define __INT_FAST16_TYPE__ short
3565// MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
3566// MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
3567// MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
3568// MIPSN32BE: #define __INT_FAST32_TYPE__ int
3569// MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
3570// MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
3571// MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
3572// MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
3573// MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
3574// MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
3575// MIPSN32BE: #define __INT_FAST8_MAX__ 127
3576// MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
3577// MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
3578// MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
3579// MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
3580// MIPSN32BE: #define __INT_LEAST16_TYPE__ short
3581// MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
3582// MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
3583// MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
3584// MIPSN32BE: #define __INT_LEAST32_TYPE__ int
3585// MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
3586// MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
3587// MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3588// MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
3589// MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
3590// MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
3591// MIPSN32BE: #define __INT_LEAST8_MAX__ 127
3592// MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
3593// MIPSN32BE: #define __INT_MAX__ 2147483647
3594// MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3595// MIPSN32BE: #define __LDBL_DIG__ 33
3596// MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3597// MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
3598// MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
3599// MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
3600// MIPSN32BE: #define __LDBL_MANT_DIG__ 113
3601// MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
3602// MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
3603// MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3604// MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
3605// MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
3606// MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3607// MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
3608// MIPSN32BE: #define __LONG_MAX__ 2147483647L
3609// MIPSN32BE: #define __MIPSEB 1
3610// MIPSN32BE: #define __MIPSEB__ 1
3611// MIPSN32BE: #define __NO_INLINE__ 1
3612// MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
3613// MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
3614// MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
3615// MIPSN32BE: #define __POINTER_WIDTH__ 32
3616// MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
3617// MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
3618// MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
3619// MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
3620// MIPSN32BE: #define __PTRDIFF_TYPE__ int
3621// MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
3622// MIPSN32BE: #define __REGISTER_PREFIX__
3623// MIPSN32BE: #define __SCHAR_MAX__ 127
3624// MIPSN32BE: #define __SHRT_MAX__ 32767
3625// MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
3626// MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
3627// MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
3628// MIPSN32BE: #define __SIZEOF_FLOAT__ 4
3629// MIPSN32BE: #define __SIZEOF_INT__ 4
3630// MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
3631// MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
3632// MIPSN32BE: #define __SIZEOF_LONG__ 4
3633// MIPSN32BE: #define __SIZEOF_POINTER__ 4
3634// MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
3635// MIPSN32BE: #define __SIZEOF_SHORT__ 2
3636// MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
3637// MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
3638// MIPSN32BE: #define __SIZEOF_WINT_T__ 4
3639// MIPSN32BE: #define __SIZE_FMTX__ "X"
3640// MIPSN32BE: #define __SIZE_FMTo__ "o"
3641// MIPSN32BE: #define __SIZE_FMTu__ "u"
3642// MIPSN32BE: #define __SIZE_FMTx__ "x"
3643// MIPSN32BE: #define __SIZE_MAX__ 4294967295U
3644// MIPSN32BE: #define __SIZE_TYPE__ unsigned int
3645// MIPSN32BE: #define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003646// MIPSN32BE-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
Simon Atanasyan495523e42015-01-22 23:16:48 +00003647// MIPSN32BE: #define __STDC_HOSTED__ 0
3648// MIPSN32BE: #define __STDC_UTF_16__ 1
3649// MIPSN32BE: #define __STDC_UTF_32__ 1
Richard Smith59139022016-09-30 22:41:36 +00003650// MIPSN32BE-C: #define __STDC_VERSION__ 201112L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003651// MIPSN32BE: #define __STDC__ 1
3652// MIPSN32BE: #define __UINT16_C_SUFFIX__
3653// MIPSN32BE: #define __UINT16_FMTX__ "hX"
3654// MIPSN32BE: #define __UINT16_FMTo__ "ho"
3655// MIPSN32BE: #define __UINT16_FMTu__ "hu"
3656// MIPSN32BE: #define __UINT16_FMTx__ "hx"
3657// MIPSN32BE: #define __UINT16_MAX__ 65535
3658// MIPSN32BE: #define __UINT16_TYPE__ unsigned short
3659// MIPSN32BE: #define __UINT32_C_SUFFIX__ U
3660// MIPSN32BE: #define __UINT32_FMTX__ "X"
3661// MIPSN32BE: #define __UINT32_FMTo__ "o"
3662// MIPSN32BE: #define __UINT32_FMTu__ "u"
3663// MIPSN32BE: #define __UINT32_FMTx__ "x"
3664// MIPSN32BE: #define __UINT32_MAX__ 4294967295U
3665// MIPSN32BE: #define __UINT32_TYPE__ unsigned int
3666// MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
3667// MIPSN32BE: #define __UINT64_FMTX__ "llX"
3668// MIPSN32BE: #define __UINT64_FMTo__ "llo"
3669// MIPSN32BE: #define __UINT64_FMTu__ "llu"
3670// MIPSN32BE: #define __UINT64_FMTx__ "llx"
3671// MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
3672// MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
3673// MIPSN32BE: #define __UINT8_C_SUFFIX__
3674// MIPSN32BE: #define __UINT8_FMTX__ "hhX"
3675// MIPSN32BE: #define __UINT8_FMTo__ "hho"
3676// MIPSN32BE: #define __UINT8_FMTu__ "hhu"
3677// MIPSN32BE: #define __UINT8_FMTx__ "hhx"
3678// MIPSN32BE: #define __UINT8_MAX__ 255
3679// MIPSN32BE: #define __UINT8_TYPE__ unsigned char
3680// MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
3681// MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
3682// MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
3683// MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
3684// MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
3685// MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
3686// MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
3687// MIPSN32BE: #define __UINTMAX_WIDTH__ 64
3688// MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
3689// MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
3690// MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
3691// MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
3692// MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
3693// MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
3694// MIPSN32BE: #define __UINTPTR_WIDTH__ 32
3695// MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
3696// MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
3697// MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
3698// MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
3699// MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
3700// MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
3701// MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
3702// MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
3703// MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
3704// MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
3705// MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
3706// MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
3707// MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
3708// MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
3709// MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
3710// MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
3711// MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3712// MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
3713// MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
3714// MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
3715// MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
3716// MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
3717// MIPSN32BE: #define __UINT_FAST8_MAX__ 255
3718// MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
3719// MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
3720// MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
3721// MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
3722// MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
3723// MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
3724// MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
3725// MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
3726// MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
3727// MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
3728// MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
3729// MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
3730// MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
3731// MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
3732// MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
3733// MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
3734// MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
3735// MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3736// MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
3737// MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
3738// MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
3739// MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
3740// MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
3741// MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
3742// MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003743// MIPSN32BE: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003744// MIPSN32BE: #define __WCHAR_MAX__ 2147483647
3745// MIPSN32BE: #define __WCHAR_TYPE__ int
3746// MIPSN32BE: #define __WCHAR_WIDTH__ 32
3747// MIPSN32BE: #define __WINT_TYPE__ int
3748// MIPSN32BE: #define __WINT_WIDTH__ 32
3749// MIPSN32BE: #define __clang__ 1
3750// MIPSN32BE: #define __llvm__ 1
3751// MIPSN32BE: #define __mips 64
3752// MIPSN32BE: #define __mips64 1
3753// MIPSN32BE: #define __mips64__ 1
3754// MIPSN32BE: #define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003755// MIPSN32BE: #define __mips_abicalls 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003756// MIPSN32BE: #define __mips_fpr 64
3757// MIPSN32BE: #define __mips_hard_float 1
3758// MIPSN32BE: #define __mips_isa_rev 2
3759// MIPSN32BE: #define __mips_n32 1
3760// MIPSN32BE: #define _mips 1
3761// MIPSN32BE: #define mips 1
3762//
3763// RUN: %clang_cc1 -E -dM -ffreestanding \
3764// RUN: -triple=mips64el-none-none -target-abi n32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00003765// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003766//
3767// MIPSN32EL: #define MIPSEL 1
3768// MIPSN32EL: #define _ABIN32 2
3769// MIPSN32EL: #define _ILP32 1
3770// MIPSN32EL: #define _MIPSEL 1
3771// MIPSN32EL: #define _MIPS_ARCH "mips64r2"
3772// MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
3773// MIPSN32EL: #define _MIPS_FPSET 32
3774// MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
3775// MIPSN32EL: #define _MIPS_SIM _ABIN32
3776// MIPSN32EL: #define _MIPS_SZINT 32
3777// MIPSN32EL: #define _MIPS_SZLONG 32
3778// MIPSN32EL: #define _MIPS_SZPTR 32
3779// MIPSN32EL: #define __ATOMIC_ACQUIRE 2
3780// MIPSN32EL: #define __ATOMIC_ACQ_REL 4
3781// MIPSN32EL: #define __ATOMIC_CONSUME 1
3782// MIPSN32EL: #define __ATOMIC_RELAXED 0
3783// MIPSN32EL: #define __ATOMIC_RELEASE 3
3784// MIPSN32EL: #define __ATOMIC_SEQ_CST 5
3785// MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3786// MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
3787// MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
3788// MIPSN32EL: #define __CHAR_BIT__ 8
3789// MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
3790// MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3791// MIPSN32EL: #define __DBL_DIG__ 15
3792// MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
3793// MIPSN32EL: #define __DBL_HAS_DENORM__ 1
3794// MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
3795// MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
3796// MIPSN32EL: #define __DBL_MANT_DIG__ 53
3797// MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
3798// MIPSN32EL: #define __DBL_MAX_EXP__ 1024
3799// MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
3800// MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
3801// MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
3802// MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003803// MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003804// MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
3805// MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3806// MIPSN32EL: #define __FLT_DIG__ 6
3807// MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
3808// MIPSN32EL: #define __FLT_EVAL_METHOD__ 0
3809// MIPSN32EL: #define __FLT_HAS_DENORM__ 1
3810// MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
3811// MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
3812// MIPSN32EL: #define __FLT_MANT_DIG__ 24
3813// MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
3814// MIPSN32EL: #define __FLT_MAX_EXP__ 128
3815// MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
3816// MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
3817// MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
3818// MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
3819// MIPSN32EL: #define __FLT_RADIX__ 2
3820// MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3821// MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3822// MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3823// MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3824// MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3825// MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3826// MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3827// MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3828// MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3829// MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3830// MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3831// MIPSN32EL: #define __GNUC_MINOR__ 2
3832// MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
3833// MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
3834// MIPSN32EL: #define __GNUC__ 4
3835// MIPSN32EL: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003836// MIPSN32EL: #define __ILP32__ 1
3837// MIPSN32EL: #define __INT16_C_SUFFIX__
3838// MIPSN32EL: #define __INT16_FMTd__ "hd"
3839// MIPSN32EL: #define __INT16_FMTi__ "hi"
3840// MIPSN32EL: #define __INT16_MAX__ 32767
3841// MIPSN32EL: #define __INT16_TYPE__ short
3842// MIPSN32EL: #define __INT32_C_SUFFIX__
3843// MIPSN32EL: #define __INT32_FMTd__ "d"
3844// MIPSN32EL: #define __INT32_FMTi__ "i"
3845// MIPSN32EL: #define __INT32_MAX__ 2147483647
3846// MIPSN32EL: #define __INT32_TYPE__ int
3847// MIPSN32EL: #define __INT64_C_SUFFIX__ LL
3848// MIPSN32EL: #define __INT64_FMTd__ "lld"
3849// MIPSN32EL: #define __INT64_FMTi__ "lli"
3850// MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
3851// MIPSN32EL: #define __INT64_TYPE__ long long int
3852// MIPSN32EL: #define __INT8_C_SUFFIX__
3853// MIPSN32EL: #define __INT8_FMTd__ "hhd"
3854// MIPSN32EL: #define __INT8_FMTi__ "hhi"
3855// MIPSN32EL: #define __INT8_MAX__ 127
3856// MIPSN32EL: #define __INT8_TYPE__ signed char
3857// MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
3858// MIPSN32EL: #define __INTMAX_FMTd__ "lld"
3859// MIPSN32EL: #define __INTMAX_FMTi__ "lli"
3860// MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
3861// MIPSN32EL: #define __INTMAX_TYPE__ long long int
3862// MIPSN32EL: #define __INTMAX_WIDTH__ 64
3863// MIPSN32EL: #define __INTPTR_FMTd__ "ld"
3864// MIPSN32EL: #define __INTPTR_FMTi__ "li"
3865// MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
3866// MIPSN32EL: #define __INTPTR_TYPE__ long int
3867// MIPSN32EL: #define __INTPTR_WIDTH__ 32
3868// MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
3869// MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
3870// MIPSN32EL: #define __INT_FAST16_MAX__ 32767
3871// MIPSN32EL: #define __INT_FAST16_TYPE__ short
3872// MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
3873// MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
3874// MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
3875// MIPSN32EL: #define __INT_FAST32_TYPE__ int
3876// MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
3877// MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
3878// MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
3879// MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
3880// MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
3881// MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
3882// MIPSN32EL: #define __INT_FAST8_MAX__ 127
3883// MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
3884// MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
3885// MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
3886// MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
3887// MIPSN32EL: #define __INT_LEAST16_TYPE__ short
3888// MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
3889// MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
3890// MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
3891// MIPSN32EL: #define __INT_LEAST32_TYPE__ int
3892// MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
3893// MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
3894// MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3895// MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
3896// MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
3897// MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
3898// MIPSN32EL: #define __INT_LEAST8_MAX__ 127
3899// MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
3900// MIPSN32EL: #define __INT_MAX__ 2147483647
3901// MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3902// MIPSN32EL: #define __LDBL_DIG__ 33
3903// MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3904// MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
3905// MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
3906// MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
3907// MIPSN32EL: #define __LDBL_MANT_DIG__ 113
3908// MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
3909// MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
3910// MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3911// MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
3912// MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
3913// MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3914// MIPSN32EL: #define __LITTLE_ENDIAN__ 1
3915// MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
3916// MIPSN32EL: #define __LONG_MAX__ 2147483647L
3917// MIPSN32EL: #define __MIPSEL 1
3918// MIPSN32EL: #define __MIPSEL__ 1
3919// MIPSN32EL: #define __NO_INLINE__ 1
3920// MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
3921// MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
3922// MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
3923// MIPSN32EL: #define __POINTER_WIDTH__ 32
3924// MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
3925// MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
3926// MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
3927// MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
3928// MIPSN32EL: #define __PTRDIFF_TYPE__ int
3929// MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
3930// MIPSN32EL: #define __REGISTER_PREFIX__
3931// MIPSN32EL: #define __SCHAR_MAX__ 127
3932// MIPSN32EL: #define __SHRT_MAX__ 32767
3933// MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
3934// MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
3935// MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
3936// MIPSN32EL: #define __SIZEOF_FLOAT__ 4
3937// MIPSN32EL: #define __SIZEOF_INT__ 4
3938// MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
3939// MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
3940// MIPSN32EL: #define __SIZEOF_LONG__ 4
3941// MIPSN32EL: #define __SIZEOF_POINTER__ 4
3942// MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
3943// MIPSN32EL: #define __SIZEOF_SHORT__ 2
3944// MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
3945// MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
3946// MIPSN32EL: #define __SIZEOF_WINT_T__ 4
3947// MIPSN32EL: #define __SIZE_FMTX__ "X"
3948// MIPSN32EL: #define __SIZE_FMTo__ "o"
3949// MIPSN32EL: #define __SIZE_FMTu__ "u"
3950// MIPSN32EL: #define __SIZE_FMTx__ "x"
3951// MIPSN32EL: #define __SIZE_MAX__ 4294967295U
3952// MIPSN32EL: #define __SIZE_TYPE__ unsigned int
3953// MIPSN32EL: #define __SIZE_WIDTH__ 32
3954// MIPSN32EL: #define __STDC_HOSTED__ 0
3955// MIPSN32EL: #define __STDC_UTF_16__ 1
3956// MIPSN32EL: #define __STDC_UTF_32__ 1
3957// MIPSN32EL: #define __STDC_VERSION__ 201112L
3958// MIPSN32EL: #define __STDC__ 1
3959// MIPSN32EL: #define __UINT16_C_SUFFIX__
3960// MIPSN32EL: #define __UINT16_FMTX__ "hX"
3961// MIPSN32EL: #define __UINT16_FMTo__ "ho"
3962// MIPSN32EL: #define __UINT16_FMTu__ "hu"
3963// MIPSN32EL: #define __UINT16_FMTx__ "hx"
3964// MIPSN32EL: #define __UINT16_MAX__ 65535
3965// MIPSN32EL: #define __UINT16_TYPE__ unsigned short
3966// MIPSN32EL: #define __UINT32_C_SUFFIX__ U
3967// MIPSN32EL: #define __UINT32_FMTX__ "X"
3968// MIPSN32EL: #define __UINT32_FMTo__ "o"
3969// MIPSN32EL: #define __UINT32_FMTu__ "u"
3970// MIPSN32EL: #define __UINT32_FMTx__ "x"
3971// MIPSN32EL: #define __UINT32_MAX__ 4294967295U
3972// MIPSN32EL: #define __UINT32_TYPE__ unsigned int
3973// MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
3974// MIPSN32EL: #define __UINT64_FMTX__ "llX"
3975// MIPSN32EL: #define __UINT64_FMTo__ "llo"
3976// MIPSN32EL: #define __UINT64_FMTu__ "llu"
3977// MIPSN32EL: #define __UINT64_FMTx__ "llx"
3978// MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
3979// MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
3980// MIPSN32EL: #define __UINT8_C_SUFFIX__
3981// MIPSN32EL: #define __UINT8_FMTX__ "hhX"
3982// MIPSN32EL: #define __UINT8_FMTo__ "hho"
3983// MIPSN32EL: #define __UINT8_FMTu__ "hhu"
3984// MIPSN32EL: #define __UINT8_FMTx__ "hhx"
3985// MIPSN32EL: #define __UINT8_MAX__ 255
3986// MIPSN32EL: #define __UINT8_TYPE__ unsigned char
3987// MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
3988// MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
3989// MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
3990// MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
3991// MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
3992// MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
3993// MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
3994// MIPSN32EL: #define __UINTMAX_WIDTH__ 64
3995// MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
3996// MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
3997// MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
3998// MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
3999// MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
4000// MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
4001// MIPSN32EL: #define __UINTPTR_WIDTH__ 32
4002// MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
4003// MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
4004// MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
4005// MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
4006// MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
4007// MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
4008// MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
4009// MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
4010// MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
4011// MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
4012// MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
4013// MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
4014// MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
4015// MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
4016// MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
4017// MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
4018// MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
4019// MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
4020// MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
4021// MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
4022// MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
4023// MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
4024// MIPSN32EL: #define __UINT_FAST8_MAX__ 255
4025// MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
4026// MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
4027// MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
4028// MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
4029// MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
4030// MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
4031// MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
4032// MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
4033// MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
4034// MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
4035// MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
4036// MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
4037// MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
4038// MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
4039// MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
4040// MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
4041// MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
4042// MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4043// MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
4044// MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
4045// MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
4046// MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
4047// MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
4048// MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
4049// MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004050// MIPSN32EL: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00004051// MIPSN32EL: #define __WCHAR_MAX__ 2147483647
4052// MIPSN32EL: #define __WCHAR_TYPE__ int
4053// MIPSN32EL: #define __WCHAR_WIDTH__ 32
4054// MIPSN32EL: #define __WINT_TYPE__ int
4055// MIPSN32EL: #define __WINT_WIDTH__ 32
4056// MIPSN32EL: #define __clang__ 1
4057// MIPSN32EL: #define __llvm__ 1
4058// MIPSN32EL: #define __mips 64
4059// MIPSN32EL: #define __mips64 1
4060// MIPSN32EL: #define __mips64__ 1
4061// MIPSN32EL: #define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004062// MIPSN32EL: #define __mips_abicalls 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00004063// MIPSN32EL: #define __mips_fpr 64
4064// MIPSN32EL: #define __mips_hard_float 1
4065// MIPSN32EL: #define __mips_isa_rev 2
4066// MIPSN32EL: #define __mips_n32 1
4067// MIPSN32EL: #define _mips 1
4068// MIPSN32EL: #define mips 1
4069//
James Y Knightc97efa42016-02-11 16:51:29 +00004070// 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 +00004071// 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 +00004072//
4073// MIPS64BE:#define MIPSEB 1
4074// MIPS64BE:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004075// MIPS64BE:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004076// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004077// MIPS64BE:#define _MIPS_ARCH "mips64r2"
4078// MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004079// MIPS64BE:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004080// MIPS64BE:#define _MIPS_SIM _ABI64
4081// MIPS64BE:#define _MIPS_SZINT 32
4082// MIPS64BE:#define _MIPS_SZLONG 64
4083// MIPS64BE:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004084// MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
Robert Lytton2c942c62014-03-10 12:06:29 +00004085// MIPS64BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004086// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004087// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
4088// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
4089// MIPS64BE:#define __CHAR_BIT__ 8
4090// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
4091// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4092// MIPS64BE:#define __DBL_DIG__ 15
4093// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
4094// MIPS64BE:#define __DBL_HAS_DENORM__ 1
4095// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
4096// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
4097// MIPS64BE:#define __DBL_MANT_DIG__ 53
4098// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
4099// MIPS64BE:#define __DBL_MAX_EXP__ 1024
4100// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
4101// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
4102// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
4103// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004104// MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004105// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4106// MIPS64BE:#define __FLT_DIG__ 6
4107// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
4108// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
4109// MIPS64BE:#define __FLT_HAS_DENORM__ 1
4110// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
4111// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
4112// MIPS64BE:#define __FLT_MANT_DIG__ 24
4113// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
4114// MIPS64BE:#define __FLT_MAX_EXP__ 128
4115// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
4116// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
4117// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
4118// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
4119// MIPS64BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004120// MIPS64BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004121// MIPS64BE:#define __INT16_FMTd__ "hd"
4122// MIPS64BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004123// MIPS64BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004124// MIPS64BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004125// MIPS64BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004126// MIPS64BE:#define __INT32_FMTd__ "d"
4127// MIPS64BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004128// MIPS64BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004129// MIPS64BE:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004130// MIPS64BE:#define __INT64_C_SUFFIX__ L
4131// MIPS64BE:#define __INT64_FMTd__ "ld"
4132// MIPS64BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004133// MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004134// MIPS64BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004135// MIPS64BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004136// MIPS64BE:#define __INT8_FMTd__ "hhd"
4137// MIPS64BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004138// MIPS64BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004139// MIPS64BE:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004140// MIPS64BE:#define __INTMAX_C_SUFFIX__ L
4141// MIPS64BE:#define __INTMAX_FMTd__ "ld"
4142// MIPS64BE:#define __INTMAX_FMTi__ "li"
4143// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
4144// MIPS64BE:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004145// MIPS64BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004146// MIPS64BE:#define __INTPTR_FMTd__ "ld"
4147// MIPS64BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004148// MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004149// MIPS64BE:#define __INTPTR_TYPE__ long int
4150// MIPS64BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004151// MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
4152// MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004153// MIPS64BE:#define __INT_FAST16_MAX__ 32767
4154// MIPS64BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004155// MIPS64BE:#define __INT_FAST32_FMTd__ "d"
4156// MIPS64BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004157// MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
4158// MIPS64BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004159// MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
4160// MIPS64BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004161// MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
4162// MIPS64BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004163// MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
4164// MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004165// MIPS64BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004166// MIPS64BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004167// MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
4168// MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004169// MIPS64BE:#define __INT_LEAST16_MAX__ 32767
4170// MIPS64BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004171// MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
4172// MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004173// MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
4174// MIPS64BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004175// MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
4176// MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004177// MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
4178// MIPS64BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004179// MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
4180// MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004181// MIPS64BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004182// MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004183// MIPS64BE:#define __INT_MAX__ 2147483647
4184// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4185// MIPS64BE:#define __LDBL_DIG__ 33
4186// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4187// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
4188// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
4189// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
4190// MIPS64BE:#define __LDBL_MANT_DIG__ 113
4191// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
4192// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
4193// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4194// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
4195// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
4196// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4197// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
4198// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004199// MIPS64BE:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004200// MIPS64BE:#define __MIPSEB 1
4201// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004202// MIPS64BE:#define __POINTER_WIDTH__ 64
4203// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
4204// MIPS64BE:#define __PTRDIFF_TYPE__ long int
4205// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004206// MIPS64BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004207// MIPS64BE:#define __SCHAR_MAX__ 127
4208// MIPS64BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004209// MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004210// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
4211// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
4212// MIPS64BE:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004213// MIPS64BE:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004214// MIPS64BE:#define __SIZEOF_INT__ 4
4215// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
4216// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
4217// MIPS64BE:#define __SIZEOF_LONG__ 8
4218// MIPS64BE:#define __SIZEOF_POINTER__ 8
4219// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
4220// MIPS64BE:#define __SIZEOF_SHORT__ 2
4221// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
4222// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
4223// MIPS64BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004224// MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004225// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
4226// MIPS64BE:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00004227// MIPS64BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00004228// MIPS64BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004229// MIPS64BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004230// MIPS64BE:#define __UINT16_TYPE__ unsigned short
4231// MIPS64BE:#define __UINT32_C_SUFFIX__ U
4232// MIPS64BE:#define __UINT32_MAX__ 4294967295U
4233// MIPS64BE:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004234// MIPS64BE:#define __UINT64_C_SUFFIX__ UL
4235// MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
4236// MIPS64BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004237// MIPS64BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004238// MIPS64BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004239// MIPS64BE:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004240// MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
4241// MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
4242// MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004243// MIPS64BE:#define __UINTMAX_WIDTH__ 64
4244// MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
4245// MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
4246// MIPS64BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004247// MIPS64BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004248// MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
4249// MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
4250// MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
4251// MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4252// MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004253// MIPS64BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004254// MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004255// MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004256// MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
4257// MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
4258// MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
4259// MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4260// MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004261// MIPS64BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004262// MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004263// MIPS64BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004264// MIPS64BE:#define __WCHAR_MAX__ 2147483647
4265// MIPS64BE:#define __WCHAR_TYPE__ int
4266// MIPS64BE:#define __WCHAR_WIDTH__ 32
4267// MIPS64BE:#define __WINT_TYPE__ int
4268// MIPS64BE:#define __WINT_WIDTH__ 32
4269// MIPS64BE:#define __clang__ 1
4270// MIPS64BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004271// MIPS64BE:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004272// MIPS64BE:#define __mips64 1
4273// MIPS64BE:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004274// MIPS64BE:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004275// MIPS64BE:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004276// MIPS64BE:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004277// MIPS64BE:#define __mips_hard_float 1
4278// MIPS64BE:#define __mips_n64 1
4279// MIPS64BE:#define _mips 1
4280// MIPS64BE:#define mips 1
4281//
James Y Knightc97efa42016-02-11 16:51:29 +00004282// 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 +00004283//
4284// MIPS64EL:#define MIPSEL 1
4285// MIPS64EL:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004286// MIPS64EL:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004287// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004288// MIPS64EL:#define _MIPS_ARCH "mips64r2"
4289// MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004290// MIPS64EL:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004291// MIPS64EL:#define _MIPS_SIM _ABI64
4292// MIPS64EL:#define _MIPS_SZINT 32
4293// MIPS64EL:#define _MIPS_SZLONG 64
4294// MIPS64EL:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004295// MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004296// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004297// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
4298// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
4299// MIPS64EL:#define __CHAR_BIT__ 8
4300// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
4301// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4302// MIPS64EL:#define __DBL_DIG__ 15
4303// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
4304// MIPS64EL:#define __DBL_HAS_DENORM__ 1
4305// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
4306// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
4307// MIPS64EL:#define __DBL_MANT_DIG__ 53
4308// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
4309// MIPS64EL:#define __DBL_MAX_EXP__ 1024
4310// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
4311// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
4312// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
4313// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004314// MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004315// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4316// MIPS64EL:#define __FLT_DIG__ 6
4317// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
4318// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
4319// MIPS64EL:#define __FLT_HAS_DENORM__ 1
4320// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
4321// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
4322// MIPS64EL:#define __FLT_MANT_DIG__ 24
4323// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
4324// MIPS64EL:#define __FLT_MAX_EXP__ 128
4325// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
4326// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
4327// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
4328// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
4329// MIPS64EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004330// MIPS64EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004331// MIPS64EL:#define __INT16_FMTd__ "hd"
4332// MIPS64EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004333// MIPS64EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004334// MIPS64EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004335// MIPS64EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004336// MIPS64EL:#define __INT32_FMTd__ "d"
4337// MIPS64EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004338// MIPS64EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004339// MIPS64EL:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004340// MIPS64EL:#define __INT64_C_SUFFIX__ L
4341// MIPS64EL:#define __INT64_FMTd__ "ld"
4342// MIPS64EL:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004343// MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004344// MIPS64EL:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004345// MIPS64EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004346// MIPS64EL:#define __INT8_FMTd__ "hhd"
4347// MIPS64EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004348// MIPS64EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004349// MIPS64EL:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004350// MIPS64EL:#define __INTMAX_C_SUFFIX__ L
4351// MIPS64EL:#define __INTMAX_FMTd__ "ld"
4352// MIPS64EL:#define __INTMAX_FMTi__ "li"
4353// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
4354// MIPS64EL:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004355// MIPS64EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004356// MIPS64EL:#define __INTPTR_FMTd__ "ld"
4357// MIPS64EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004358// MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004359// MIPS64EL:#define __INTPTR_TYPE__ long int
4360// MIPS64EL:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004361// MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
4362// MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004363// MIPS64EL:#define __INT_FAST16_MAX__ 32767
4364// MIPS64EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004365// MIPS64EL:#define __INT_FAST32_FMTd__ "d"
4366// MIPS64EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004367// MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
4368// MIPS64EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004369// MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
4370// MIPS64EL:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004371// MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
4372// MIPS64EL:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004373// MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
4374// MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004375// MIPS64EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004376// MIPS64EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004377// MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
4378// MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004379// MIPS64EL:#define __INT_LEAST16_MAX__ 32767
4380// MIPS64EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004381// MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
4382// MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004383// MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
4384// MIPS64EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004385// MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
4386// MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004387// MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
4388// MIPS64EL:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004389// MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
4390// MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004391// MIPS64EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004392// MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004393// MIPS64EL:#define __INT_MAX__ 2147483647
4394// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4395// MIPS64EL:#define __LDBL_DIG__ 33
4396// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4397// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
4398// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
4399// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
4400// MIPS64EL:#define __LDBL_MANT_DIG__ 113
4401// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
4402// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
4403// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4404// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
4405// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
4406// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
Robert Lytton2c942c62014-03-10 12:06:29 +00004407// MIPS64EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004408// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
4409// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004410// MIPS64EL:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004411// MIPS64EL:#define __MIPSEL 1
4412// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004413// MIPS64EL:#define __POINTER_WIDTH__ 64
4414// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
4415// MIPS64EL:#define __PTRDIFF_TYPE__ long int
4416// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004417// MIPS64EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004418// MIPS64EL:#define __SCHAR_MAX__ 127
4419// MIPS64EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004420// MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004421// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
4422// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
4423// MIPS64EL:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004424// MIPS64EL:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004425// MIPS64EL:#define __SIZEOF_INT__ 4
4426// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
4427// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
4428// MIPS64EL:#define __SIZEOF_LONG__ 8
4429// MIPS64EL:#define __SIZEOF_POINTER__ 8
4430// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
4431// MIPS64EL:#define __SIZEOF_SHORT__ 2
4432// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
4433// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
4434// MIPS64EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004435// MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004436// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
4437// MIPS64EL:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004438// MIPS64EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004439// MIPS64EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004440// MIPS64EL:#define __UINT16_TYPE__ unsigned short
4441// MIPS64EL:#define __UINT32_C_SUFFIX__ U
4442// MIPS64EL:#define __UINT32_MAX__ 4294967295U
4443// MIPS64EL:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004444// MIPS64EL:#define __UINT64_C_SUFFIX__ UL
4445// MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
4446// MIPS64EL:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004447// MIPS64EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004448// MIPS64EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004449// MIPS64EL:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004450// MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
4451// MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
4452// MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004453// MIPS64EL:#define __UINTMAX_WIDTH__ 64
4454// MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
4455// MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
4456// MIPS64EL:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004457// MIPS64EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004458// MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
4459// MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
4460// MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
4461// MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4462// MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004463// MIPS64EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004464// MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004465// MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004466// MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
4467// MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
4468// MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
4469// MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4470// MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004471// MIPS64EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004472// MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004473// MIPS64EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004474// MIPS64EL:#define __WCHAR_MAX__ 2147483647
4475// MIPS64EL:#define __WCHAR_TYPE__ int
4476// MIPS64EL:#define __WCHAR_WIDTH__ 32
4477// MIPS64EL:#define __WINT_TYPE__ int
4478// MIPS64EL:#define __WINT_WIDTH__ 32
4479// MIPS64EL:#define __clang__ 1
4480// MIPS64EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004481// MIPS64EL:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004482// MIPS64EL:#define __mips64 1
4483// MIPS64EL:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004484// MIPS64EL:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004485// MIPS64EL:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004486// MIPS64EL:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004487// MIPS64EL:#define __mips_hard_float 1
4488// MIPS64EL:#define __mips_n64 1
4489// MIPS64EL:#define _mips 1
4490// MIPS64EL:#define mips 1
4491//
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004492// Check MIPS arch and isa macros
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004493//
4494// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4495// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004496// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004497//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004498// MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
4499// MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004500// MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4501// MIPS-ARCH-DEF32:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004502//
4503// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
4504// RUN: -target-cpu mips32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004505// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004506//
4507// MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
4508// MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004509// MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4510// MIPS-ARCH-32:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004511//
4512// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4513// RUN: -target-cpu mips32r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004514// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004515//
4516// MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
4517// MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004518// MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
4519// MIPS-ARCH-32R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004520//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004521// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004522// RUN: -target-cpu mips32r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004523// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004524//
4525// MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
4526// MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
4527// MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
4528// MIPS-ARCH-32R3:#define __mips_isa_rev 3
4529//
4530// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4531// RUN: -target-cpu mips32r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004532// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004533//
4534// MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
4535// MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
4536// MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
4537// MIPS-ARCH-32R5:#define __mips_isa_rev 5
4538//
4539// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004540// RUN: -target-cpu mips32r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004541// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004542//
4543// MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
4544// MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
4545// MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
4546// MIPS-ARCH-32R6:#define __mips_isa_rev 6
4547//
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004548// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4549// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004550// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004551//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004552// MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
4553// MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004554// MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4555// MIPS-ARCH-DEF64:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004556//
4557// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4558// RUN: -target-cpu mips64 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004559// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004560//
4561// MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
4562// MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004563// MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4564// MIPS-ARCH-64:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004565//
4566// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4567// RUN: -target-cpu mips64r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004568// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004569//
4570// MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
4571// MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004572// MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
4573// MIPS-ARCH-64R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004574//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004575// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004576// RUN: -target-cpu mips64r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004577// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004578//
4579// MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
4580// MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
4581// MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
4582// MIPS-ARCH-64R3:#define __mips_isa_rev 3
4583//
4584// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4585// RUN: -target-cpu mips64r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004586// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004587//
4588// MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
4589// MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
4590// MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
4591// MIPS-ARCH-64R5:#define __mips_isa_rev 5
4592//
4593// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004594// RUN: -target-cpu mips64r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004595// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004596//
4597// MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
4598// MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
4599// MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
4600// MIPS-ARCH-64R6:#define __mips_isa_rev 6
4601//
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004602// Check MIPS float ABI macros
4603//
4604// RUN: %clang_cc1 -E -dM -ffreestanding \
4605// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004606// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004607// MIPS-FABI-HARD:#define __mips_hard_float 1
4608//
4609// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
4610// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004611// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004612// MIPS-FABI-SOFT:#define __mips_soft_float 1
4613//
4614// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
4615// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004616// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyand3d173d2012-06-05 13:06:56 +00004617// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004618// MIPS-FABI-SINGLE:#define __mips_single_float 1
4619//
Simon Atanasyan16071912013-04-14 14:07:30 +00004620// RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
4621// RUN: -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004622// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
Simon Atanasyan16071912013-04-14 14:07:30 +00004623// MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
4624// MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
4625//
Simon Atanasyan72244b62012-07-05 16:06:06 +00004626// Check MIPS features macros
4627//
4628// RUN: %clang_cc1 -target-feature +mips16 \
4629// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004630// RUN: | FileCheck -match-full-lines -check-prefix MIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004631// MIPS16:#define __mips16 1
4632//
4633// RUN: %clang_cc1 -target-feature -mips16 \
4634// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004635// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004636// NOMIPS16-NOT:#define __mips16 1
4637//
Simon Atanasyan60777612013-04-14 14:07:51 +00004638// RUN: %clang_cc1 -target-feature +micromips \
4639// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004640// RUN: | FileCheck -match-full-lines -check-prefix MICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004641// MICROMIPS:#define __mips_micromips 1
4642//
4643// RUN: %clang_cc1 -target-feature -micromips \
4644// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004645// RUN: | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004646// NOMICROMIPS-NOT:#define __mips_micromips 1
4647//
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004648// RUN: %clang_cc1 -target-feature +dsp \
4649// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004650// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004651// MIPS-DSP:#define __mips_dsp 1
4652// MIPS-DSP:#define __mips_dsp_rev 1
4653// MIPS-DSP-NOT:#define __mips_dspr2 1
4654//
4655// RUN: %clang_cc1 -target-feature +dspr2 \
4656// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004657// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004658// MIPS-DSPR2:#define __mips_dsp 1
4659// MIPS-DSPR2:#define __mips_dsp_rev 2
4660// MIPS-DSPR2:#define __mips_dspr2 1
4661//
Jack Carter44ff1e52013-08-12 17:20:29 +00004662// RUN: %clang_cc1 -target-feature +msa \
4663// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004664// RUN: | FileCheck -match-full-lines -check-prefix MIPS-MSA %s
Jack Carter44ff1e52013-08-12 17:20:29 +00004665// MIPS-MSA:#define __mips_msa 1
4666//
Petar Jovanovic9b5d3b62017-06-07 23:51:52 +00004667// RUN: %clang_cc1 -target-feature +nomadd4 \
4668// RUN: -E -dM -triple=mips-none-none < /dev/null \
4669// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NOMADD4 %s
4670// MIPS-NOMADD4:#define __mips_no_madd4 1
4671//
4672// RUN: %clang_cc1 \
4673// RUN: -E -dM -triple=mips-none-none < /dev/null \
4674// RUN: | FileCheck -match-full-lines -check-prefix MIPS-MADD4 %s
4675// MIPS-MADD4-NOT:#define __mips_no_madd4 1
4676//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004677// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004678// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004679// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004680// MIPS-NAN2008:#define __mips_nan2008 1
4681//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004682// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
4683// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004684// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS-NAN2008 %s
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004685// NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
4686//
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004687// RUN: %clang_cc1 -target-feature -fp64 \
4688// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004689// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004690// MIPS32-MFP32:#define _MIPS_FPSET 16
4691// MIPS32-MFP32:#define __mips_fpr 32
4692//
4693// RUN: %clang_cc1 -target-feature +fp64 \
4694// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004695// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004696// MIPS32-MFP64:#define _MIPS_FPSET 32
4697// MIPS32-MFP64:#define __mips_fpr 64
4698//
4699// RUN: %clang_cc1 -target-feature +single-float \
4700// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004701// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004702// MIPS32-MFP32SF:#define _MIPS_FPSET 32
4703// MIPS32-MFP32SF:#define __mips_fpr 32
4704//
4705// RUN: %clang_cc1 -target-feature +fp64 \
4706// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004707// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004708// MIPS64-MFP64:#define _MIPS_FPSET 32
4709// MIPS64-MFP64:#define __mips_fpr 64
4710//
4711// RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
4712// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004713// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004714// MIPS64-NOMFP64:#define _MIPS_FPSET 32
4715// MIPS64-NOMFP64:#define __mips_fpr 32
4716//
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004717// RUN: %clang_cc1 -target-cpu mips32r6 \
4718// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004719// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004720// RUN: %clang_cc1 -target-cpu mips64r6 \
4721// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004722// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004723// MIPS-XXR6:#define _MIPS_FPSET 32
4724// MIPS-XXR6:#define __mips_fpr 64
4725// MIPS-XXR6:#define __mips_nan2008 1
4726//
Simon Dardisdf827a72017-02-21 16:01:00 +00004727// RUN: %clang_cc1 -target-cpu mips32 \
4728// RUN: -E -dM -triple=mips-unknown-netbsd -mrelocation-model pic < /dev/null \
4729// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-NETBSD %s
4730// MIPS-ABICALLS-NETBSD-NOT: #define __ABICALLS__ 1
4731// MIPS-ABICALLS-NETBSD: #define __mips_abicalls 1
4732//
4733// RUN: %clang_cc1 -target-cpu mips64 \
4734// RUN: -E -dM -triple=mips64-unknown-netbsd -mrelocation-model pic < \
4735// RUN: /dev/null | FileCheck -match-full-lines \
4736// RUN: -check-prefix MIPS-ABICALLS-NETBSD64 %s
4737// MIPS-ABICALLS-NETBSD64-NOT: #define __ABICALLS__ 1
4738// MIPS-ABICALLS-NETBSD64: #define __mips_abicalls 1
4739//
4740// RUN: %clang_cc1 -target-cpu mips32 \
4741// RUN: -E -dM -triple=mips-unknown-freebsd -mrelocation-model pic < /dev/null \
4742// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-FREEBSD %s
4743// MIPS-ABICALLS-FREEBSD: #define __ABICALLS__ 1
4744// MIPS-ABICALLS-FREEBSD: #define __mips_abicalls 1
4745//
4746// RUN: %clang_cc1 -target-cpu mips64 \
4747// RUN: -E -dM -triple=mips64-unknown-freebsd -mrelocation-model pic < \
4748// RUN: /dev/null | FileCheck -match-full-lines \
4749// RUN: -check-prefix MIPS-ABICALLS-FREEBSD64 %s
4750// MIPS-ABICALLS-FREEBSD64: #define __ABICALLS__ 1
4751// MIPS-ABICALLS-FREEBSD64: #define __mips_abicalls 1
4752//
4753// RUN: %clang_cc1 -target-cpu mips32 \
4754// RUN: -E -dM -triple=mips-unknown-openbsd -mrelocation-model pic < /dev/null \
4755// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-OPENBSD %s
4756// MIPS-ABICALLS-OPENBSD: #define __ABICALLS__ 1
4757// MIPS-ABICALLS-OPENBSD: #define __mips_abicalls 1
4758//
4759// RUN: %clang_cc1 -target-cpu mips64 \
4760// RUN: -E -dM -triple=mips64-unknown-openbsd -mrelocation-model pic < \
4761// RUN: /dev/null | FileCheck -match-full-lines \
4762// RUN: -check-prefix MIPS-ABICALLS-OPENBSD64 %s
4763// MIPS-ABICALLS-OPENBSD64: #define __ABICALLS__ 1
4764// MIPS-ABICALLS-OPENBSD64: #define __mips_abicalls 1
4765//
James Y Knightc97efa42016-02-11 16:51:29 +00004766// 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 +00004767// 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 +00004768//
4769// MSP430:#define MSP430 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004770// MSP430-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004771// MSP430:#define __BIGGEST_ALIGNMENT__ 2
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004772// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00004773// MSP430:#define __CHAR16_TYPE__ unsigned short
4774// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00004775// MSP430:#define __CHAR_BIT__ 8
4776// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4777// MSP430:#define __DBL_DIG__ 15
4778// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
4779// MSP430:#define __DBL_HAS_DENORM__ 1
4780// MSP430:#define __DBL_HAS_INFINITY__ 1
4781// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
4782// MSP430:#define __DBL_MANT_DIG__ 53
4783// MSP430:#define __DBL_MAX_10_EXP__ 308
4784// MSP430:#define __DBL_MAX_EXP__ 1024
4785// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
4786// MSP430:#define __DBL_MIN_10_EXP__ (-307)
4787// MSP430:#define __DBL_MIN_EXP__ (-1021)
4788// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004789// MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00004790// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4791// MSP430:#define __FLT_DIG__ 6
4792// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
4793// MSP430:#define __FLT_EVAL_METHOD__ 0
4794// MSP430:#define __FLT_HAS_DENORM__ 1
4795// MSP430:#define __FLT_HAS_INFINITY__ 1
4796// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
4797// MSP430:#define __FLT_MANT_DIG__ 24
4798// MSP430:#define __FLT_MAX_10_EXP__ 38
4799// MSP430:#define __FLT_MAX_EXP__ 128
4800// MSP430:#define __FLT_MAX__ 3.40282347e+38F
4801// MSP430:#define __FLT_MIN_10_EXP__ (-37)
4802// MSP430:#define __FLT_MIN_EXP__ (-125)
4803// MSP430:#define __FLT_MIN__ 1.17549435e-38F
4804// MSP430:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004805// MSP430:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004806// MSP430:#define __INT16_FMTd__ "hd"
4807// MSP430:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004808// MSP430:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004809// MSP430:#define __INT16_TYPE__ short
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00004810// MSP430:#define __INT32_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004811// MSP430:#define __INT32_FMTd__ "ld"
4812// MSP430:#define __INT32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004813// MSP430:#define __INT32_MAX__ 2147483647L
Chris Lattner55c98772009-11-12 08:08:27 +00004814// MSP430:#define __INT32_TYPE__ long int
JF Bastienab8d0a02014-06-25 01:31:33 +00004815// MSP430:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004816// MSP430:#define __INT64_FMTd__ "lld"
4817// MSP430:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004818// MSP430:#define __INT64_MAX__ 9223372036854775807LL
4819// MSP430:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004820// MSP430:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004821// MSP430:#define __INT8_FMTd__ "hhd"
4822// MSP430:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004823// MSP430:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004824// MSP430:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004825// MSP430:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004826// MSP430:#define __INTMAX_FMTd__ "lld"
4827// MSP430:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikovef412902013-07-01 19:42:40 +00004828// MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
4829// MSP430:#define __INTMAX_TYPE__ long long int
4830// MSP430:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004831// MSP430:#define __INTPTR_FMTd__ "d"
4832// MSP430:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004833// MSP430:#define __INTPTR_MAX__ 32767
Anton Korobeynikovef412902013-07-01 19:42:40 +00004834// MSP430:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00004835// MSP430:#define __INTPTR_WIDTH__ 16
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004836// MSP430:#define __INT_FAST16_FMTd__ "hd"
4837// MSP430:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004838// MSP430:#define __INT_FAST16_MAX__ 32767
4839// MSP430:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004840// MSP430:#define __INT_FAST32_FMTd__ "ld"
4841// MSP430:#define __INT_FAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004842// MSP430:#define __INT_FAST32_MAX__ 2147483647L
4843// MSP430:#define __INT_FAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004844// MSP430:#define __INT_FAST64_FMTd__ "lld"
4845// MSP430:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004846// MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
4847// MSP430:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004848// MSP430:#define __INT_FAST8_FMTd__ "hhd"
4849// MSP430:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004850// MSP430:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004851// MSP430:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004852// MSP430:#define __INT_LEAST16_FMTd__ "hd"
4853// MSP430:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004854// MSP430:#define __INT_LEAST16_MAX__ 32767
4855// MSP430:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004856// MSP430:#define __INT_LEAST32_FMTd__ "ld"
4857// MSP430:#define __INT_LEAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004858// MSP430:#define __INT_LEAST32_MAX__ 2147483647L
4859// MSP430:#define __INT_LEAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004860// MSP430:#define __INT_LEAST64_FMTd__ "lld"
4861// MSP430:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004862// MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
4863// MSP430:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004864// MSP430:#define __INT_LEAST8_FMTd__ "hhd"
4865// MSP430:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004866// MSP430:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004867// MSP430:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00004868// MSP430:#define __INT_MAX__ 32767
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004869// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00004870// MSP430:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004871// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00004872// MSP430:#define __LDBL_HAS_DENORM__ 1
4873// MSP430:#define __LDBL_HAS_INFINITY__ 1
4874// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
4875// MSP430:#define __LDBL_MANT_DIG__ 53
4876// MSP430:#define __LDBL_MAX_10_EXP__ 308
4877// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004878// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00004879// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
4880// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004881// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004882// MSP430:#define __LITTLE_ENDIAN__ 1
Anton Korobeynikov485810e2010-01-14 21:36:52 +00004883// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00004884// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004885// MSP430-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00004886// MSP430:#define __MSP430__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00004887// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck9b25f782009-11-19 13:18:59 +00004888// MSP430:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00004889// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004890// MSP430:#define __SCHAR_MAX__ 127
4891// MSP430:#define __SHRT_MAX__ 32767
James Y Knightc97efa42016-02-11 16:51:29 +00004892// MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
Ken Dyckadc85112009-11-22 15:41:04 +00004893// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00004894// MSP430:#define __SIZEOF_DOUBLE__ 8
4895// MSP430:#define __SIZEOF_FLOAT__ 4
4896// MSP430:#define __SIZEOF_INT__ 2
4897// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
4898// MSP430:#define __SIZEOF_LONG_LONG__ 8
4899// MSP430:#define __SIZEOF_LONG__ 4
4900// MSP430:#define __SIZEOF_POINTER__ 2
4901// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
4902// MSP430:#define __SIZEOF_SHORT__ 2
4903// MSP430:#define __SIZEOF_SIZE_T__ 2
4904// MSP430:#define __SIZEOF_WCHAR_T__ 2
4905// MSP430:#define __SIZEOF_WINT_T__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004906// MSP430:#define __SIZE_MAX__ 65535U
Chris Lattnere963d092009-10-29 04:55:36 +00004907// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00004908// MSP430:#define __SIZE_WIDTH__ 16
Richard Smith59139022016-09-30 22:41:36 +00004909// MSP430-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
JF Bastienab8d0a02014-06-25 01:31:33 +00004910// MSP430:#define __UINT16_C_SUFFIX__ U
James Y Knightc97efa42016-02-11 16:51:29 +00004911// MSP430:#define __UINT16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004912// MSP430:#define __UINT16_TYPE__ unsigned short
4913// MSP430:#define __UINT32_C_SUFFIX__ UL
4914// MSP430:#define __UINT32_MAX__ 4294967295UL
4915// MSP430:#define __UINT32_TYPE__ long unsigned int
4916// MSP430:#define __UINT64_C_SUFFIX__ ULL
4917// MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
4918// MSP430:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004919// MSP430:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004920// MSP430:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004921// MSP430:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004922// MSP430:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00004923// MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikovef412902013-07-01 19:42:40 +00004924// MSP430:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004925// MSP430:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004926// MSP430:#define __UINTPTR_MAX__ 65535U
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00004927// MSP430:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004928// MSP430:#define __UINTPTR_WIDTH__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00004929// MSP430:#define __UINT_FAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004930// MSP430:#define __UINT_FAST16_TYPE__ unsigned short
4931// MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
4932// MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
4933// MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
4934// MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004935// MSP430:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004936// MSP430:#define __UINT_FAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00004937// MSP430:#define __UINT_LEAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004938// MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
4939// MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
4940// MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
4941// MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4942// MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004943// MSP430:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004944// MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004945// MSP430:#define __USER_LABEL_PREFIX__
Chris Lattner0fb5bbd2009-11-12 08:04:33 +00004946// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004947// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00004948// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004949// MSP430:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00004950// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004951// MSP430:#define __clang__ 1
4952//
James Y Knightc97efa42016-02-11 16:51:29 +00004953// 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 +00004954// 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 +00004955//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004956// NVPTX32-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004957// NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004958// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004959// NVPTX32:#define __CHAR16_TYPE__ unsigned short
4960// NVPTX32:#define __CHAR32_TYPE__ unsigned int
4961// NVPTX32:#define __CHAR_BIT__ 8
4962// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
4963// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4964// NVPTX32:#define __DBL_DIG__ 15
4965// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
4966// NVPTX32:#define __DBL_HAS_DENORM__ 1
4967// NVPTX32:#define __DBL_HAS_INFINITY__ 1
4968// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
4969// NVPTX32:#define __DBL_MANT_DIG__ 53
4970// NVPTX32:#define __DBL_MAX_10_EXP__ 308
4971// NVPTX32:#define __DBL_MAX_EXP__ 1024
4972// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
4973// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
4974// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
4975// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004976// NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004977// NVPTX32:#define __FINITE_MATH_ONLY__ 0
4978// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4979// NVPTX32:#define __FLT_DIG__ 6
4980// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
4981// NVPTX32:#define __FLT_EVAL_METHOD__ 0
4982// NVPTX32:#define __FLT_HAS_DENORM__ 1
4983// NVPTX32:#define __FLT_HAS_INFINITY__ 1
4984// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
4985// NVPTX32:#define __FLT_MANT_DIG__ 24
4986// NVPTX32:#define __FLT_MAX_10_EXP__ 38
4987// NVPTX32:#define __FLT_MAX_EXP__ 128
4988// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
4989// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
4990// NVPTX32:#define __FLT_MIN_EXP__ (-125)
4991// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
4992// NVPTX32:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004993// NVPTX32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004994// NVPTX32:#define __INT16_FMTd__ "hd"
4995// NVPTX32:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004996// NVPTX32:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004997// NVPTX32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004998// NVPTX32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004999// NVPTX32:#define __INT32_FMTd__ "d"
5000// NVPTX32:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005001// NVPTX32:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005002// NVPTX32:#define __INT32_TYPE__ int
5003// NVPTX32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005004// NVPTX32:#define __INT64_FMTd__ "lld"
5005// NVPTX32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005006// NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005007// NVPTX32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005008// NVPTX32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005009// NVPTX32:#define __INT8_FMTd__ "hhd"
5010// NVPTX32:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005011// NVPTX32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005012// NVPTX32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005013// NVPTX32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005014// NVPTX32:#define __INTMAX_FMTd__ "lld"
5015// NVPTX32:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005016// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
5017// NVPTX32:#define __INTMAX_TYPE__ long long int
5018// NVPTX32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005019// NVPTX32:#define __INTPTR_FMTd__ "d"
5020// NVPTX32:#define __INTPTR_FMTi__ "i"
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005021// NVPTX32:#define __INTPTR_MAX__ 2147483647
5022// NVPTX32:#define __INTPTR_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005023// NVPTX32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005024// NVPTX32:#define __INT_FAST16_FMTd__ "hd"
5025// NVPTX32:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005026// NVPTX32:#define __INT_FAST16_MAX__ 32767
5027// NVPTX32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005028// NVPTX32:#define __INT_FAST32_FMTd__ "d"
5029// NVPTX32:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005030// NVPTX32:#define __INT_FAST32_MAX__ 2147483647
5031// NVPTX32:#define __INT_FAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00005032// NVPTX32:#define __INT_FAST64_FMTd__ "lld"
5033// NVPTX32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005034// NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005035// NVPTX32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005036// NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
5037// NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005038// NVPTX32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005039// NVPTX32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005040// NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
5041// NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005042// NVPTX32:#define __INT_LEAST16_MAX__ 32767
5043// NVPTX32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005044// NVPTX32:#define __INT_LEAST32_FMTd__ "d"
5045// NVPTX32:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005046// NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
5047// NVPTX32:#define __INT_LEAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00005048// NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
5049// NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005050// NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005051// NVPTX32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005052// NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
5053// NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005054// NVPTX32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005055// NVPTX32:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005056// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005057// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005058// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005059// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005060// NVPTX32:#define __LDBL_HAS_DENORM__ 1
5061// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
5062// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
5063// NVPTX32:#define __LDBL_MANT_DIG__ 53
5064// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
5065// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005066// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005067// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
5068// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005069// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005070// NVPTX32:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005071// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005072// NVPTX32:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005073// NVPTX32-NOT:#define __LP64__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005074// NVPTX32:#define __NVPTX__ 1
5075// NVPTX32:#define __POINTER_WIDTH__ 32
5076// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005077// NVPTX32:#define __PTRDIFF_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005078// NVPTX32:#define __PTRDIFF_WIDTH__ 32
5079// NVPTX32:#define __PTX__ 1
5080// NVPTX32:#define __SCHAR_MAX__ 127
5081// NVPTX32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005082// NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005083// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
5084// NVPTX32:#define __SIZEOF_DOUBLE__ 8
5085// NVPTX32:#define __SIZEOF_FLOAT__ 4
5086// NVPTX32:#define __SIZEOF_INT__ 4
5087// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
5088// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
Artem Belevich236cfdc2015-09-28 22:54:08 +00005089// NVPTX32:#define __SIZEOF_LONG__ 4
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005090// NVPTX32:#define __SIZEOF_POINTER__ 4
5091// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
5092// NVPTX32:#define __SIZEOF_SHORT__ 2
5093// NVPTX32:#define __SIZEOF_SIZE_T__ 4
5094// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
5095// NVPTX32:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005096// NVPTX32:#define __SIZE_MAX__ 4294967295U
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005097// NVPTX32:#define __SIZE_TYPE__ unsigned int
5098// NVPTX32:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005099// NVPTX32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00005100// NVPTX32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005101// NVPTX32:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005102// NVPTX32:#define __UINT16_TYPE__ unsigned short
5103// NVPTX32:#define __UINT32_C_SUFFIX__ U
5104// NVPTX32:#define __UINT32_MAX__ 4294967295U
5105// NVPTX32:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005106// NVPTX32:#define __UINT64_C_SUFFIX__ ULL
5107// NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
5108// NVPTX32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005109// NVPTX32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005110// NVPTX32:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005111// NVPTX32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005112// NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005113// NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005114// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005115// NVPTX32:#define __UINTMAX_WIDTH__ 64
5116// NVPTX32:#define __UINTPTR_MAX__ 4294967295U
5117// NVPTX32:#define __UINTPTR_TYPE__ unsigned int
5118// NVPTX32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005119// NVPTX32:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005120// NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
5121// NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
5122// NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005123// NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005124// NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005125// NVPTX32:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005126// NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005127// NVPTX32:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005128// NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
5129// NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
5130// NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005131// NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005132// NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005133// NVPTX32:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005134// NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005135// NVPTX32:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005136// NVPTX32:#define __WCHAR_MAX__ 2147483647
5137// NVPTX32:#define __WCHAR_TYPE__ int
5138// NVPTX32:#define __WCHAR_WIDTH__ 32
5139// NVPTX32:#define __WINT_TYPE__ int
5140// NVPTX32:#define __WINT_WIDTH__ 32
5141//
James Y Knightc97efa42016-02-11 16:51:29 +00005142// 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 +00005143// 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 +00005144//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005145// NVPTX64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005146// NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005147// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005148// NVPTX64:#define __CHAR16_TYPE__ unsigned short
5149// NVPTX64:#define __CHAR32_TYPE__ unsigned int
5150// NVPTX64:#define __CHAR_BIT__ 8
5151// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
5152// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5153// NVPTX64:#define __DBL_DIG__ 15
5154// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5155// NVPTX64:#define __DBL_HAS_DENORM__ 1
5156// NVPTX64:#define __DBL_HAS_INFINITY__ 1
5157// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
5158// NVPTX64:#define __DBL_MANT_DIG__ 53
5159// NVPTX64:#define __DBL_MAX_10_EXP__ 308
5160// NVPTX64:#define __DBL_MAX_EXP__ 1024
5161// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
5162// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
5163// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
5164// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005165// NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005166// NVPTX64:#define __FINITE_MATH_ONLY__ 0
5167// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5168// NVPTX64:#define __FLT_DIG__ 6
5169// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
5170// NVPTX64:#define __FLT_EVAL_METHOD__ 0
5171// NVPTX64:#define __FLT_HAS_DENORM__ 1
5172// NVPTX64:#define __FLT_HAS_INFINITY__ 1
5173// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
5174// NVPTX64:#define __FLT_MANT_DIG__ 24
5175// NVPTX64:#define __FLT_MAX_10_EXP__ 38
5176// NVPTX64:#define __FLT_MAX_EXP__ 128
5177// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
5178// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
5179// NVPTX64:#define __FLT_MIN_EXP__ (-125)
5180// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
5181// NVPTX64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005182// NVPTX64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005183// NVPTX64:#define __INT16_FMTd__ "hd"
5184// NVPTX64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005185// NVPTX64:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005186// NVPTX64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005187// NVPTX64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005188// NVPTX64:#define __INT32_FMTd__ "d"
5189// NVPTX64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005190// NVPTX64:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005191// NVPTX64:#define __INT32_TYPE__ int
5192// NVPTX64:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005193// NVPTX64:#define __INT64_FMTd__ "lld"
5194// NVPTX64:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005195// NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005196// NVPTX64:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005197// NVPTX64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005198// NVPTX64:#define __INT8_FMTd__ "hhd"
5199// NVPTX64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005200// NVPTX64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005201// NVPTX64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005202// NVPTX64:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005203// NVPTX64:#define __INTMAX_FMTd__ "lld"
5204// NVPTX64:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005205// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
5206// NVPTX64:#define __INTMAX_TYPE__ long long int
5207// NVPTX64:#define __INTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005208// NVPTX64:#define __INTPTR_FMTd__ "ld"
5209// NVPTX64:#define __INTPTR_FMTi__ "li"
5210// NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
5211// NVPTX64:#define __INTPTR_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005212// NVPTX64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005213// NVPTX64:#define __INT_FAST16_FMTd__ "hd"
5214// NVPTX64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005215// NVPTX64:#define __INT_FAST16_MAX__ 32767
5216// NVPTX64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005217// NVPTX64:#define __INT_FAST32_FMTd__ "d"
5218// NVPTX64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005219// NVPTX64:#define __INT_FAST32_MAX__ 2147483647
5220// NVPTX64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005221// NVPTX64:#define __INT_FAST64_FMTd__ "ld"
5222// NVPTX64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005223// NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
5224// NVPTX64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005225// NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
5226// NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005227// NVPTX64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005228// NVPTX64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005229// NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
5230// NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005231// NVPTX64:#define __INT_LEAST16_MAX__ 32767
5232// NVPTX64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005233// NVPTX64:#define __INT_LEAST32_FMTd__ "d"
5234// NVPTX64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005235// NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
5236// NVPTX64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005237// NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
5238// NVPTX64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005239// NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5240// NVPTX64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005241// NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
5242// NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005243// NVPTX64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005244// NVPTX64:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005245// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005246// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005247// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005248// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005249// NVPTX64:#define __LDBL_HAS_DENORM__ 1
5250// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
5251// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
5252// NVPTX64:#define __LDBL_MANT_DIG__ 53
5253// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
5254// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005255// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005256// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
5257// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005258// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005259// NVPTX64:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005260// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5261// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005262// NVPTX64:#define __LP64__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005263// NVPTX64:#define __NVPTX__ 1
5264// NVPTX64:#define __POINTER_WIDTH__ 64
5265// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005266// NVPTX64:#define __PTRDIFF_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005267// NVPTX64:#define __PTRDIFF_WIDTH__ 64
5268// NVPTX64:#define __PTX__ 1
5269// NVPTX64:#define __SCHAR_MAX__ 127
5270// NVPTX64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005271// NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005272// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
5273// NVPTX64:#define __SIZEOF_DOUBLE__ 8
5274// NVPTX64:#define __SIZEOF_FLOAT__ 4
5275// NVPTX64:#define __SIZEOF_INT__ 4
5276// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
5277// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
5278// NVPTX64:#define __SIZEOF_LONG__ 8
5279// NVPTX64:#define __SIZEOF_POINTER__ 8
5280// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
5281// NVPTX64:#define __SIZEOF_SHORT__ 2
5282// NVPTX64:#define __SIZEOF_SIZE_T__ 8
5283// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
5284// NVPTX64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005285// NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
Eli Bendersky15f63422015-04-01 18:29:27 +00005286// NVPTX64:#define __SIZE_TYPE__ long unsigned int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005287// NVPTX64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005288// NVPTX64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00005289// NVPTX64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005290// NVPTX64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005291// NVPTX64:#define __UINT16_TYPE__ unsigned short
5292// NVPTX64:#define __UINT32_C_SUFFIX__ U
5293// NVPTX64:#define __UINT32_MAX__ 4294967295U
5294// NVPTX64:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005295// NVPTX64:#define __UINT64_C_SUFFIX__ ULL
5296// NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
5297// NVPTX64:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005298// NVPTX64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005299// NVPTX64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005300// NVPTX64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005301// NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005302// NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005303// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005304// NVPTX64:#define __UINTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005305// NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
5306// NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005307// NVPTX64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005308// NVPTX64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005309// NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
5310// NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
5311// NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
5312// NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5313// NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005314// NVPTX64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005315// NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005316// NVPTX64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005317// NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
5318// NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
5319// NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
5320// NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5321// NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005322// NVPTX64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005323// NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005324// NVPTX64:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005325// NVPTX64:#define __WCHAR_MAX__ 2147483647
5326// NVPTX64:#define __WCHAR_TYPE__ int
5327// NVPTX64:#define __WCHAR_WIDTH__ 32
5328// NVPTX64:#define __WINT_TYPE__ int
5329// NVPTX64:#define __WINT_WIDTH__ 32
5330//
James Y Knightc97efa42016-02-11 16:51:29 +00005331// 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 +00005332// 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 +00005333//
5334// PPC603E:#define _ARCH_603 1
5335// PPC603E:#define _ARCH_603E 1
5336// PPC603E:#define _ARCH_PPC 1
5337// PPC603E:#define _ARCH_PPCGR 1
5338// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005339// PPC603E-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00005340// PPC603E:#define __BIGGEST_ALIGNMENT__ 16
Hal Finkel6b984f02012-07-03 16:51:04 +00005341// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005342// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel6b984f02012-07-03 16:51:04 +00005343// PPC603E:#define __CHAR16_TYPE__ unsigned short
5344// PPC603E:#define __CHAR32_TYPE__ unsigned int
5345// PPC603E:#define __CHAR_BIT__ 8
5346// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5347// PPC603E:#define __DBL_DIG__ 15
5348// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
5349// PPC603E:#define __DBL_HAS_DENORM__ 1
5350// PPC603E:#define __DBL_HAS_INFINITY__ 1
5351// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
5352// PPC603E:#define __DBL_MANT_DIG__ 53
5353// PPC603E:#define __DBL_MAX_10_EXP__ 308
5354// PPC603E:#define __DBL_MAX_EXP__ 1024
5355// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
5356// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
5357// PPC603E:#define __DBL_MIN_EXP__ (-1021)
5358// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005359// PPC603E:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Hal Finkel6b984f02012-07-03 16:51:04 +00005360// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5361// PPC603E:#define __FLT_DIG__ 6
5362// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
5363// PPC603E:#define __FLT_EVAL_METHOD__ 0
5364// PPC603E:#define __FLT_HAS_DENORM__ 1
5365// PPC603E:#define __FLT_HAS_INFINITY__ 1
5366// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
5367// PPC603E:#define __FLT_MANT_DIG__ 24
5368// PPC603E:#define __FLT_MAX_10_EXP__ 38
5369// PPC603E:#define __FLT_MAX_EXP__ 128
5370// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
5371// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
5372// PPC603E:#define __FLT_MIN_EXP__ (-125)
5373// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
5374// PPC603E:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005375// PPC603E:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005376// PPC603E:#define __INT16_FMTd__ "hd"
5377// PPC603E:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005378// PPC603E:#define __INT16_MAX__ 32767
Hal Finkel6b984f02012-07-03 16:51:04 +00005379// PPC603E:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005380// PPC603E:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005381// PPC603E:#define __INT32_FMTd__ "d"
5382// PPC603E:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005383// PPC603E:#define __INT32_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005384// PPC603E:#define __INT32_TYPE__ int
5385// PPC603E:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005386// PPC603E:#define __INT64_FMTd__ "lld"
5387// PPC603E:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005388// PPC603E:#define __INT64_MAX__ 9223372036854775807LL
Hal Finkel6b984f02012-07-03 16:51:04 +00005389// PPC603E:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005390// PPC603E:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005391// PPC603E:#define __INT8_FMTd__ "hhd"
5392// PPC603E:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005393// PPC603E:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005394// PPC603E:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005395// PPC603E:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005396// PPC603E:#define __INTMAX_FMTd__ "lld"
5397// PPC603E:#define __INTMAX_FMTi__ "lli"
Hal Finkel6b984f02012-07-03 16:51:04 +00005398// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
5399// PPC603E:#define __INTMAX_TYPE__ long long int
5400// PPC603E:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005401// PPC603E:#define __INTPTR_FMTd__ "ld"
5402// PPC603E:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005403// PPC603E:#define __INTPTR_MAX__ 2147483647L
Hal Finkel6b984f02012-07-03 16:51:04 +00005404// PPC603E:#define __INTPTR_TYPE__ long int
5405// PPC603E:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005406// PPC603E:#define __INT_FAST16_FMTd__ "hd"
5407// PPC603E:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005408// PPC603E:#define __INT_FAST16_MAX__ 32767
5409// PPC603E:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005410// PPC603E:#define __INT_FAST32_FMTd__ "d"
5411// PPC603E:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005412// PPC603E:#define __INT_FAST32_MAX__ 2147483647
5413// PPC603E:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005414// PPC603E:#define __INT_FAST64_FMTd__ "lld"
5415// PPC603E:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005416// PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
5417// PPC603E:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005418// PPC603E:#define __INT_FAST8_FMTd__ "hhd"
5419// PPC603E:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005420// PPC603E:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005421// PPC603E:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005422// PPC603E:#define __INT_LEAST16_FMTd__ "hd"
5423// PPC603E:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005424// PPC603E:#define __INT_LEAST16_MAX__ 32767
5425// PPC603E:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005426// PPC603E:#define __INT_LEAST32_FMTd__ "d"
5427// PPC603E:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005428// PPC603E:#define __INT_LEAST32_MAX__ 2147483647
5429// PPC603E:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005430// PPC603E:#define __INT_LEAST64_FMTd__ "lld"
5431// PPC603E:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005432// PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5433// PPC603E:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005434// PPC603E:#define __INT_LEAST8_FMTd__ "hhd"
5435// PPC603E:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005436// PPC603E:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005437// PPC603E:#define __INT_LEAST8_TYPE__ signed char
Hal Finkel6b984f02012-07-03 16:51:04 +00005438// PPC603E:#define __INT_MAX__ 2147483647
5439// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5440// PPC603E:#define __LDBL_DIG__ 31
5441// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5442// PPC603E:#define __LDBL_HAS_DENORM__ 1
5443// PPC603E:#define __LDBL_HAS_INFINITY__ 1
5444// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
5445// PPC603E:#define __LDBL_MANT_DIG__ 106
5446// PPC603E:#define __LDBL_MAX_10_EXP__ 308
5447// PPC603E:#define __LDBL_MAX_EXP__ 1024
5448// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5449// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
5450// PPC603E:#define __LDBL_MIN_EXP__ (-968)
5451// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00005452// PPC603E:#define __LONGDOUBLE128 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005453// PPC603E:#define __LONG_DOUBLE_128__ 1
5454// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
5455// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005456// PPC603E-NOT:#define __LP64__
Hal Finkel6b984f02012-07-03 16:51:04 +00005457// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005458// PPC603E:#define __POINTER_WIDTH__ 32
5459// PPC603E:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005460// PPC603E:#define __PPC__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005461// PPC603E:#define __PTRDIFF_TYPE__ long int
5462// PPC603E:#define __PTRDIFF_WIDTH__ 32
5463// PPC603E:#define __REGISTER_PREFIX__
5464// PPC603E:#define __SCHAR_MAX__ 127
5465// PPC603E:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005466// PPC603E:#define __SIG_ATOMIC_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005467// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
5468// PPC603E:#define __SIZEOF_DOUBLE__ 8
5469// PPC603E:#define __SIZEOF_FLOAT__ 4
5470// PPC603E:#define __SIZEOF_INT__ 4
5471// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
5472// PPC603E:#define __SIZEOF_LONG_LONG__ 8
5473// PPC603E:#define __SIZEOF_LONG__ 4
5474// PPC603E:#define __SIZEOF_POINTER__ 4
5475// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
5476// PPC603E:#define __SIZEOF_SHORT__ 2
5477// PPC603E:#define __SIZEOF_SIZE_T__ 4
5478// PPC603E:#define __SIZEOF_WCHAR_T__ 4
5479// PPC603E:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00005480// PPC603E:#define __SIZE_MAX__ 4294967295UL
Hal Finkel6b984f02012-07-03 16:51:04 +00005481// PPC603E:#define __SIZE_TYPE__ long unsigned int
5482// PPC603E:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005483// PPC603E-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005484// PPC603E:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005485// PPC603E:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005486// PPC603E:#define __UINT16_TYPE__ unsigned short
5487// PPC603E:#define __UINT32_C_SUFFIX__ U
5488// PPC603E:#define __UINT32_MAX__ 4294967295U
5489// PPC603E:#define __UINT32_TYPE__ unsigned int
5490// PPC603E:#define __UINT64_C_SUFFIX__ ULL
5491// PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
5492// PPC603E:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005493// PPC603E:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005494// PPC603E:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005495// PPC603E:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005496// PPC603E:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005497// PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
Hal Finkel6b984f02012-07-03 16:51:04 +00005498// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005499// PPC603E:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005500// PPC603E:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005501// PPC603E:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005502// PPC603E:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005503// PPC603E:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005504// PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
5505// PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
5506// PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
5507// PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5508// PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005509// PPC603E:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005510// PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005511// PPC603E:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005512// PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
5513// PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
5514// PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
5515// PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5516// PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005517// PPC603E:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005518// PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005519// PPC603E:#define __USER_LABEL_PREFIX__
Hal Finkel6b984f02012-07-03 16:51:04 +00005520// PPC603E:#define __WCHAR_MAX__ 2147483647
5521// PPC603E:#define __WCHAR_TYPE__ int
5522// PPC603E:#define __WCHAR_WIDTH__ 32
5523// PPC603E:#define __WINT_TYPE__ int
5524// PPC603E:#define __WINT_WIDTH__ 32
5525// PPC603E:#define __powerpc__ 1
5526// PPC603E:#define __ppc__ 1
5527//
James Y Knightc97efa42016-02-11 16:51:29 +00005528// 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 +00005529// 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 +00005530//
5531// PPC64:#define _ARCH_PPC 1
5532// PPC64:#define _ARCH_PPC64 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005533// PPC64:#define _ARCH_PPCGR 1
5534// PPC64:#define _ARCH_PPCSQ 1
5535// PPC64:#define _ARCH_PWR4 1
5536// PPC64:#define _ARCH_PWR5 1
5537// PPC64:#define _ARCH_PWR6 1
Hal Finkel8eb59282012-06-11 22:35:19 +00005538// PPC64:#define _ARCH_PWR7 1
Chris Lattnere963d092009-10-29 04:55:36 +00005539// PPC64:#define _BIG_ENDIAN 1
5540// PPC64:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00005541// PPC64:#define __BIGGEST_ALIGNMENT__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005542// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005543// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00005544// PPC64:#define __CHAR16_TYPE__ unsigned short
5545// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00005546// PPC64:#define __CHAR_BIT__ 8
5547// PPC64:#define __CHAR_UNSIGNED__ 1
5548// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5549// PPC64:#define __DBL_DIG__ 15
5550// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5551// PPC64:#define __DBL_HAS_DENORM__ 1
5552// PPC64:#define __DBL_HAS_INFINITY__ 1
5553// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
5554// PPC64:#define __DBL_MANT_DIG__ 53
5555// PPC64:#define __DBL_MAX_10_EXP__ 308
5556// PPC64:#define __DBL_MAX_EXP__ 1024
5557// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
5558// PPC64:#define __DBL_MIN_10_EXP__ (-307)
5559// PPC64:#define __DBL_MIN_EXP__ (-1021)
5560// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005561// PPC64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00005562// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5563// PPC64:#define __FLT_DIG__ 6
5564// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
5565// PPC64:#define __FLT_EVAL_METHOD__ 0
5566// PPC64:#define __FLT_HAS_DENORM__ 1
5567// PPC64:#define __FLT_HAS_INFINITY__ 1
5568// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
5569// PPC64:#define __FLT_MANT_DIG__ 24
5570// PPC64:#define __FLT_MAX_10_EXP__ 38
5571// PPC64:#define __FLT_MAX_EXP__ 128
5572// PPC64:#define __FLT_MAX__ 3.40282347e+38F
5573// PPC64:#define __FLT_MIN_10_EXP__ (-37)
5574// PPC64:#define __FLT_MIN_EXP__ (-125)
5575// PPC64:#define __FLT_MIN__ 1.17549435e-38F
5576// PPC64:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00005577// PPC64:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00005578// PPC64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005579// PPC64:#define __INT16_FMTd__ "hd"
5580// PPC64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005581// PPC64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005582// PPC64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005583// PPC64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005584// PPC64:#define __INT32_FMTd__ "d"
5585// PPC64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005586// PPC64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00005587// PPC64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00005588// PPC64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005589// PPC64:#define __INT64_FMTd__ "ld"
5590// PPC64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005591// PPC64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00005592// PPC64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005593// PPC64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005594// PPC64:#define __INT8_FMTd__ "hhd"
5595// PPC64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005596// PPC64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005597// PPC64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005598// PPC64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005599// PPC64:#define __INTMAX_FMTd__ "ld"
5600// PPC64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00005601// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005602// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00005603// PPC64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005604// PPC64:#define __INTPTR_FMTd__ "ld"
5605// PPC64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005606// PPC64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005607// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005608// PPC64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005609// PPC64:#define __INT_FAST16_FMTd__ "hd"
5610// PPC64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005611// PPC64:#define __INT_FAST16_MAX__ 32767
5612// PPC64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005613// PPC64:#define __INT_FAST32_FMTd__ "d"
5614// PPC64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005615// PPC64:#define __INT_FAST32_MAX__ 2147483647
5616// PPC64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005617// PPC64:#define __INT_FAST64_FMTd__ "ld"
5618// PPC64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005619// PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
5620// PPC64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005621// PPC64:#define __INT_FAST8_FMTd__ "hhd"
5622// PPC64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005623// PPC64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005624// PPC64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005625// PPC64:#define __INT_LEAST16_FMTd__ "hd"
5626// PPC64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005627// PPC64:#define __INT_LEAST16_MAX__ 32767
5628// PPC64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005629// PPC64:#define __INT_LEAST32_FMTd__ "d"
5630// PPC64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005631// PPC64:#define __INT_LEAST32_MAX__ 2147483647
5632// PPC64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005633// PPC64:#define __INT_LEAST64_FMTd__ "ld"
5634// PPC64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005635// PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5636// PPC64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005637// PPC64:#define __INT_LEAST8_FMTd__ "hhd"
5638// PPC64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005639// PPC64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005640// PPC64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005641// PPC64:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005642// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5643// PPC64:#define __LDBL_DIG__ 31
5644// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005645// PPC64:#define __LDBL_HAS_DENORM__ 1
5646// PPC64:#define __LDBL_HAS_INFINITY__ 1
5647// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005648// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00005649// PPC64:#define __LDBL_MAX_10_EXP__ 308
5650// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00005651// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5652// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
5653// PPC64:#define __LDBL_MIN_EXP__ (-968)
5654// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00005655// PPC64:#define __LONGDOUBLE128 1
Chris Lattnere963d092009-10-29 04:55:36 +00005656// PPC64:#define __LONG_DOUBLE_128__ 1
5657// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5658// PPC64:#define __LONG_MAX__ 9223372036854775807L
5659// PPC64:#define __LP64__ 1
5660// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005661// PPC64:#define __POINTER_WIDTH__ 64
5662// PPC64:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005663// PPC64:#define __PPC64__ 1
5664// PPC64:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00005665// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00005666// PPC64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005667// PPC64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005668// PPC64:#define __SCHAR_MAX__ 127
5669// PPC64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005670// PPC64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00005671// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005672// PPC64:#define __SIZEOF_DOUBLE__ 8
5673// PPC64:#define __SIZEOF_FLOAT__ 4
5674// PPC64:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00005675// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00005676// PPC64:#define __SIZEOF_LONG_LONG__ 8
5677// PPC64:#define __SIZEOF_LONG__ 8
5678// PPC64:#define __SIZEOF_POINTER__ 8
5679// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
5680// PPC64:#define __SIZEOF_SHORT__ 2
5681// PPC64:#define __SIZEOF_SIZE_T__ 8
5682// PPC64:#define __SIZEOF_WCHAR_T__ 4
5683// PPC64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005684// PPC64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00005685// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005686// PPC64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005687// PPC64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005688// PPC64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005689// PPC64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005690// PPC64:#define __UINT16_TYPE__ unsigned short
5691// PPC64:#define __UINT32_C_SUFFIX__ U
5692// PPC64:#define __UINT32_MAX__ 4294967295U
5693// PPC64:#define __UINT32_TYPE__ unsigned int
5694// PPC64:#define __UINT64_C_SUFFIX__ UL
5695// PPC64:#define __UINT64_MAX__ 18446744073709551615UL
5696// PPC64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005697// PPC64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005698// PPC64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005699// PPC64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005700// PPC64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005701// PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00005702// PPC64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005703// PPC64:#define __UINTMAX_WIDTH__ 64
5704// PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
5705// PPC64:#define __UINTPTR_TYPE__ long unsigned int
5706// PPC64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005707// PPC64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005708// PPC64:#define __UINT_FAST16_TYPE__ unsigned short
5709// PPC64:#define __UINT_FAST32_MAX__ 4294967295U
5710// PPC64:#define __UINT_FAST32_TYPE__ unsigned int
5711// PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5712// PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005713// PPC64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005714// PPC64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005715// PPC64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005716// PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
5717// PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
5718// PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
5719// PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5720// PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005721// PPC64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005722// PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005723// PPC64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005724// PPC64:#define __WCHAR_MAX__ 2147483647
5725// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005726// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005727// PPC64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005728// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005729// PPC64:#define __ppc64__ 1
5730// PPC64:#define __ppc__ 1
5731//
James Y Knightc97efa42016-02-11 16:51:29 +00005732// 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 +00005733//
5734// PPC64LE:#define _ARCH_PPC 1
5735// PPC64LE:#define _ARCH_PPC64 1
5736// PPC64LE:#define _ARCH_PPCGR 1
5737// PPC64LE:#define _ARCH_PPCSQ 1
5738// PPC64LE:#define _ARCH_PWR4 1
5739// PPC64LE:#define _ARCH_PWR5 1
5740// PPC64LE:#define _ARCH_PWR5X 1
5741// PPC64LE:#define _ARCH_PWR6 1
5742// PPC64LE:#define _ARCH_PWR6X 1
5743// PPC64LE:#define _ARCH_PWR7 1
Will Schmidt5fa50f3c2014-03-24 21:09:16 +00005744// PPC64LE:#define _CALL_ELF 2
Bill Schmidt778d3872013-07-26 01:36:11 +00005745// PPC64LE:#define _LITTLE_ENDIAN 1
5746// PPC64LE:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00005747// PPC64LE:#define __BIGGEST_ALIGNMENT__ 16
Bill Schmidt778d3872013-07-26 01:36:11 +00005748// PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5749// PPC64LE:#define __CHAR16_TYPE__ unsigned short
5750// PPC64LE:#define __CHAR32_TYPE__ unsigned int
5751// PPC64LE:#define __CHAR_BIT__ 8
5752// PPC64LE:#define __CHAR_UNSIGNED__ 1
5753// PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5754// PPC64LE:#define __DBL_DIG__ 15
5755// PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
5756// PPC64LE:#define __DBL_HAS_DENORM__ 1
5757// PPC64LE:#define __DBL_HAS_INFINITY__ 1
5758// PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
5759// PPC64LE:#define __DBL_MANT_DIG__ 53
5760// PPC64LE:#define __DBL_MAX_10_EXP__ 308
5761// PPC64LE:#define __DBL_MAX_EXP__ 1024
5762// PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
5763// PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
5764// PPC64LE:#define __DBL_MIN_EXP__ (-1021)
5765// PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005766// PPC64LE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Bill Schmidt778d3872013-07-26 01:36:11 +00005767// PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5768// PPC64LE:#define __FLT_DIG__ 6
5769// PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
5770// PPC64LE:#define __FLT_EVAL_METHOD__ 0
5771// PPC64LE:#define __FLT_HAS_DENORM__ 1
5772// PPC64LE:#define __FLT_HAS_INFINITY__ 1
5773// PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
5774// PPC64LE:#define __FLT_MANT_DIG__ 24
5775// PPC64LE:#define __FLT_MAX_10_EXP__ 38
5776// PPC64LE:#define __FLT_MAX_EXP__ 128
5777// PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
5778// PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
5779// PPC64LE:#define __FLT_MIN_EXP__ (-125)
5780// PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
5781// PPC64LE:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00005782// PPC64LE:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00005783// PPC64LE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005784// PPC64LE:#define __INT16_FMTd__ "hd"
5785// PPC64LE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005786// PPC64LE:#define __INT16_MAX__ 32767
Bill Schmidt778d3872013-07-26 01:36:11 +00005787// PPC64LE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005788// PPC64LE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005789// PPC64LE:#define __INT32_FMTd__ "d"
5790// PPC64LE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005791// PPC64LE:#define __INT32_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005792// PPC64LE:#define __INT32_TYPE__ int
5793// PPC64LE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005794// PPC64LE:#define __INT64_FMTd__ "ld"
5795// PPC64LE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005796// PPC64LE:#define __INT64_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005797// PPC64LE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005798// PPC64LE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005799// PPC64LE:#define __INT8_FMTd__ "hhd"
5800// PPC64LE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005801// PPC64LE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005802// PPC64LE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005803// PPC64LE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005804// PPC64LE:#define __INTMAX_FMTd__ "ld"
5805// PPC64LE:#define __INTMAX_FMTi__ "li"
Bill Schmidt778d3872013-07-26 01:36:11 +00005806// PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
5807// PPC64LE:#define __INTMAX_TYPE__ long int
5808// PPC64LE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005809// PPC64LE:#define __INTPTR_FMTd__ "ld"
5810// PPC64LE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005811// PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005812// PPC64LE:#define __INTPTR_TYPE__ long int
5813// PPC64LE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005814// PPC64LE:#define __INT_FAST16_FMTd__ "hd"
5815// PPC64LE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005816// PPC64LE:#define __INT_FAST16_MAX__ 32767
5817// PPC64LE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005818// PPC64LE:#define __INT_FAST32_FMTd__ "d"
5819// PPC64LE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005820// PPC64LE:#define __INT_FAST32_MAX__ 2147483647
5821// PPC64LE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005822// PPC64LE:#define __INT_FAST64_FMTd__ "ld"
5823// PPC64LE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005824// PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
5825// PPC64LE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005826// PPC64LE:#define __INT_FAST8_FMTd__ "hhd"
5827// PPC64LE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005828// PPC64LE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005829// PPC64LE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005830// PPC64LE:#define __INT_LEAST16_FMTd__ "hd"
5831// PPC64LE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005832// PPC64LE:#define __INT_LEAST16_MAX__ 32767
5833// PPC64LE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005834// PPC64LE:#define __INT_LEAST32_FMTd__ "d"
5835// PPC64LE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005836// PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
5837// PPC64LE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005838// PPC64LE:#define __INT_LEAST64_FMTd__ "ld"
5839// PPC64LE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005840// PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
5841// PPC64LE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005842// PPC64LE:#define __INT_LEAST8_FMTd__ "hhd"
5843// PPC64LE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005844// PPC64LE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005845// PPC64LE:#define __INT_LEAST8_TYPE__ signed char
Bill Schmidt778d3872013-07-26 01:36:11 +00005846// PPC64LE:#define __INT_MAX__ 2147483647
5847// PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5848// PPC64LE:#define __LDBL_DIG__ 31
5849// PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5850// PPC64LE:#define __LDBL_HAS_DENORM__ 1
5851// PPC64LE:#define __LDBL_HAS_INFINITY__ 1
5852// PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
5853// PPC64LE:#define __LDBL_MANT_DIG__ 106
5854// PPC64LE:#define __LDBL_MAX_10_EXP__ 308
5855// PPC64LE:#define __LDBL_MAX_EXP__ 1024
5856// PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5857// PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
5858// PPC64LE:#define __LDBL_MIN_EXP__ (-968)
5859// PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5860// PPC64LE:#define __LITTLE_ENDIAN__ 1
Eric Christopheree214102017-03-25 06:37:23 +00005861// PPC64LE:#define __LONGDOUBLE128 1
Bill Schmidt778d3872013-07-26 01:36:11 +00005862// PPC64LE:#define __LONG_DOUBLE_128__ 1
5863// PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
5864// PPC64LE:#define __LONG_MAX__ 9223372036854775807L
5865// PPC64LE:#define __LP64__ 1
5866// PPC64LE:#define __NATURAL_ALIGNMENT__ 1
5867// PPC64LE:#define __POINTER_WIDTH__ 64
5868// PPC64LE:#define __POWERPC__ 1
5869// PPC64LE:#define __PPC64__ 1
5870// PPC64LE:#define __PPC__ 1
5871// PPC64LE:#define __PTRDIFF_TYPE__ long int
5872// PPC64LE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005873// PPC64LE:#define __REGISTER_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005874// PPC64LE:#define __SCHAR_MAX__ 127
5875// PPC64LE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005876// PPC64LE:#define __SIG_ATOMIC_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005877// PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
5878// PPC64LE:#define __SIZEOF_DOUBLE__ 8
5879// PPC64LE:#define __SIZEOF_FLOAT__ 4
5880// PPC64LE:#define __SIZEOF_INT__ 4
5881// PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
5882// PPC64LE:#define __SIZEOF_LONG_LONG__ 8
5883// PPC64LE:#define __SIZEOF_LONG__ 8
5884// PPC64LE:#define __SIZEOF_POINTER__ 8
5885// PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
5886// PPC64LE:#define __SIZEOF_SHORT__ 2
5887// PPC64LE:#define __SIZEOF_SIZE_T__ 8
5888// PPC64LE:#define __SIZEOF_WCHAR_T__ 4
5889// PPC64LE:#define __SIZEOF_WINT_T__ 4
5890// PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
5891// PPC64LE:#define __SIZE_TYPE__ long unsigned int
5892// PPC64LE:#define __SIZE_WIDTH__ 64
Eric Christopher32ac5e42017-02-15 07:50:11 +00005893// PPC64LE:#define __STRUCT_PARM_ALIGN__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00005894// PPC64LE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005895// PPC64LE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005896// PPC64LE:#define __UINT16_TYPE__ unsigned short
5897// PPC64LE:#define __UINT32_C_SUFFIX__ U
5898// PPC64LE:#define __UINT32_MAX__ 4294967295U
5899// PPC64LE:#define __UINT32_TYPE__ unsigned int
5900// PPC64LE:#define __UINT64_C_SUFFIX__ UL
5901// PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
5902// PPC64LE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005903// PPC64LE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005904// PPC64LE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005905// PPC64LE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005906// PPC64LE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005907// PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
Bill Schmidt778d3872013-07-26 01:36:11 +00005908// PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005909// PPC64LE:#define __UINTMAX_WIDTH__ 64
5910// PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
5911// PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
5912// PPC64LE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005913// PPC64LE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005914// PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
5915// PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
5916// PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
5917// PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5918// PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005919// PPC64LE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005920// PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005921// PPC64LE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005922// PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
5923// PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
5924// PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
5925// PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5926// PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005927// PPC64LE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005928// PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005929// PPC64LE:#define __USER_LABEL_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005930// PPC64LE:#define __WCHAR_MAX__ 2147483647
5931// PPC64LE:#define __WCHAR_TYPE__ int
5932// PPC64LE:#define __WCHAR_WIDTH__ 32
5933// PPC64LE:#define __WINT_TYPE__ int
5934// PPC64LE:#define __WINT_WIDTH__ 32
5935// PPC64LE:#define __ppc64__ 1
5936// PPC64LE:#define __ppc__ 1
5937//
James Y Knightc97efa42016-02-11 16:51:29 +00005938// 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 +00005939//
5940// PPCA2Q:#define _ARCH_A2 1
5941// PPCA2Q:#define _ARCH_A2Q 1
5942// PPCA2Q:#define _ARCH_PPC 1
5943// PPCA2Q:#define _ARCH_PPC64 1
5944// PPCA2Q:#define _ARCH_QP 1
5945//
James Y Knightc97efa42016-02-11 16:51:29 +00005946// 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 +00005947//
5948// PPCBGQ:#define __THW_BLUEGENE__ 1
5949// PPCBGQ:#define __TOS_BGQ__ 1
5950// PPCBGQ:#define __bg__ 1
5951// PPCBGQ:#define __bgq__ 1
5952//
James Y Knightc97efa42016-02-11 16:51:29 +00005953// 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 +00005954//
5955// PPC630:#define _ARCH_630 1
5956// PPC630:#define _ARCH_PPC 1
5957// PPC630:#define _ARCH_PPC64 1
5958// PPC630:#define _ARCH_PPCGR 1
5959//
James Y Knightc97efa42016-02-11 16:51:29 +00005960// 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 +00005961//
5962// PPCPWR3:#define _ARCH_PPC 1
5963// PPCPWR3:#define _ARCH_PPC64 1
5964// PPCPWR3:#define _ARCH_PPCGR 1
5965//
James Y Knightc97efa42016-02-11 16:51:29 +00005966// 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 +00005967//
5968// PPCPOWER3:#define _ARCH_PPC 1
5969// PPCPOWER3:#define _ARCH_PPC64 1
5970// PPCPOWER3:#define _ARCH_PPCGR 1
5971//
James Y Knightc97efa42016-02-11 16:51:29 +00005972// 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 +00005973//
5974// PPCPWR4:#define _ARCH_PPC 1
5975// PPCPWR4:#define _ARCH_PPC64 1
5976// PPCPWR4:#define _ARCH_PPCGR 1
5977// PPCPWR4:#define _ARCH_PPCSQ 1
5978// PPCPWR4:#define _ARCH_PWR4 1
5979//
James Y Knightc97efa42016-02-11 16:51:29 +00005980// 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 +00005981//
5982// PPCPOWER4:#define _ARCH_PPC 1
5983// PPCPOWER4:#define _ARCH_PPC64 1
5984// PPCPOWER4:#define _ARCH_PPCGR 1
5985// PPCPOWER4:#define _ARCH_PPCSQ 1
5986// PPCPOWER4:#define _ARCH_PWR4 1
5987//
James Y Knightc97efa42016-02-11 16:51:29 +00005988// 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 +00005989//
5990// PPCPWR5:#define _ARCH_PPC 1
5991// PPCPWR5:#define _ARCH_PPC64 1
5992// PPCPWR5:#define _ARCH_PPCGR 1
5993// PPCPWR5:#define _ARCH_PPCSQ 1
5994// PPCPWR5:#define _ARCH_PWR4 1
5995// PPCPWR5:#define _ARCH_PWR5 1
5996//
James Y Knightc97efa42016-02-11 16:51:29 +00005997// 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 +00005998//
5999// PPCPOWER5:#define _ARCH_PPC 1
6000// PPCPOWER5:#define _ARCH_PPC64 1
6001// PPCPOWER5:#define _ARCH_PPCGR 1
6002// PPCPOWER5:#define _ARCH_PPCSQ 1
6003// PPCPOWER5:#define _ARCH_PWR4 1
6004// PPCPOWER5:#define _ARCH_PWR5 1
6005//
James Y Knightc97efa42016-02-11 16:51:29 +00006006// 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 +00006007//
6008// PPCPWR5X:#define _ARCH_PPC 1
6009// PPCPWR5X:#define _ARCH_PPC64 1
6010// PPCPWR5X:#define _ARCH_PPCGR 1
6011// PPCPWR5X:#define _ARCH_PPCSQ 1
6012// PPCPWR5X:#define _ARCH_PWR4 1
6013// PPCPWR5X:#define _ARCH_PWR5 1
6014// PPCPWR5X:#define _ARCH_PWR5X 1
6015//
James Y Knightc97efa42016-02-11 16:51:29 +00006016// 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 +00006017//
6018// PPCPOWER5X:#define _ARCH_PPC 1
6019// PPCPOWER5X:#define _ARCH_PPC64 1
6020// PPCPOWER5X:#define _ARCH_PPCGR 1
6021// PPCPOWER5X:#define _ARCH_PPCSQ 1
6022// PPCPOWER5X:#define _ARCH_PWR4 1
6023// PPCPOWER5X:#define _ARCH_PWR5 1
6024// PPCPOWER5X:#define _ARCH_PWR5X 1
6025//
James Y Knightc97efa42016-02-11 16:51:29 +00006026// 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 +00006027//
6028// PPCPWR6:#define _ARCH_PPC 1
6029// PPCPWR6:#define _ARCH_PPC64 1
6030// PPCPWR6:#define _ARCH_PPCGR 1
6031// PPCPWR6:#define _ARCH_PPCSQ 1
6032// PPCPWR6:#define _ARCH_PWR4 1
6033// PPCPWR6:#define _ARCH_PWR5 1
6034// PPCPWR6:#define _ARCH_PWR5X 1
6035// PPCPWR6:#define _ARCH_PWR6 1
6036//
James Y Knightc97efa42016-02-11 16:51:29 +00006037// 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 +00006038//
6039// PPCPOWER6:#define _ARCH_PPC 1
6040// PPCPOWER6:#define _ARCH_PPC64 1
6041// PPCPOWER6:#define _ARCH_PPCGR 1
6042// PPCPOWER6:#define _ARCH_PPCSQ 1
6043// PPCPOWER6:#define _ARCH_PWR4 1
6044// PPCPOWER6:#define _ARCH_PWR5 1
6045// PPCPOWER6:#define _ARCH_PWR5X 1
6046// PPCPOWER6:#define _ARCH_PWR6 1
6047//
James Y Knightc97efa42016-02-11 16:51:29 +00006048// 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 +00006049//
6050// PPCPWR6X:#define _ARCH_PPC 1
6051// PPCPWR6X:#define _ARCH_PPC64 1
6052// PPCPWR6X:#define _ARCH_PPCGR 1
6053// PPCPWR6X:#define _ARCH_PPCSQ 1
6054// PPCPWR6X:#define _ARCH_PWR4 1
6055// PPCPWR6X:#define _ARCH_PWR5 1
6056// PPCPWR6X:#define _ARCH_PWR5X 1
6057// PPCPWR6X:#define _ARCH_PWR6 1
6058// PPCPWR6X:#define _ARCH_PWR6X 1
6059//
James Y Knightc97efa42016-02-11 16:51:29 +00006060// 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 +00006061//
6062// PPCPOWER6X:#define _ARCH_PPC 1
6063// PPCPOWER6X:#define _ARCH_PPC64 1
6064// PPCPOWER6X:#define _ARCH_PPCGR 1
6065// PPCPOWER6X:#define _ARCH_PPCSQ 1
6066// PPCPOWER6X:#define _ARCH_PWR4 1
6067// PPCPOWER6X:#define _ARCH_PWR5 1
6068// PPCPOWER6X:#define _ARCH_PWR5X 1
6069// PPCPOWER6X:#define _ARCH_PWR6 1
6070// PPCPOWER6X:#define _ARCH_PWR6X 1
6071//
James Y Knightc97efa42016-02-11 16:51:29 +00006072// 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 +00006073//
6074// PPCPWR7:#define _ARCH_PPC 1
6075// PPCPWR7:#define _ARCH_PPC64 1
6076// PPCPWR7:#define _ARCH_PPCGR 1
6077// PPCPWR7:#define _ARCH_PPCSQ 1
6078// PPCPWR7:#define _ARCH_PWR4 1
6079// PPCPWR7:#define _ARCH_PWR5 1
6080// PPCPWR7:#define _ARCH_PWR5X 1
6081// PPCPWR7:#define _ARCH_PWR6 1
6082// PPCPWR7:#define _ARCH_PWR6X 1
6083// PPCPWR7:#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 power7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER7 %s
Bill Schmidt38378a02013-02-01 20:23:10 +00006086//
6087// PPCPOWER7:#define _ARCH_PPC 1
6088// PPCPOWER7:#define _ARCH_PPC64 1
6089// PPCPOWER7:#define _ARCH_PPCGR 1
6090// PPCPOWER7:#define _ARCH_PPCSQ 1
6091// PPCPOWER7:#define _ARCH_PWR4 1
6092// PPCPOWER7:#define _ARCH_PWR5 1
6093// PPCPOWER7:#define _ARCH_PWR5X 1
6094// PPCPOWER7:#define _ARCH_PWR6 1
6095// PPCPOWER7:#define _ARCH_PWR6X 1
6096// PPCPOWER7:#define _ARCH_PWR7 1
6097//
James Y Knightc97efa42016-02-11 16:51:29 +00006098// 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 +00006099//
6100// PPCPWR8:#define _ARCH_PPC 1
6101// PPCPWR8:#define _ARCH_PPC64 1
6102// PPCPWR8:#define _ARCH_PPCGR 1
6103// PPCPWR8:#define _ARCH_PPCSQ 1
6104// PPCPWR8:#define _ARCH_PWR4 1
6105// PPCPWR8:#define _ARCH_PWR5 1
6106// PPCPWR8:#define _ARCH_PWR5X 1
6107// PPCPWR8:#define _ARCH_PWR6 1
6108// PPCPWR8:#define _ARCH_PWR6X 1
6109// PPCPWR8:#define _ARCH_PWR7 1
6110// PPCPWR8:#define _ARCH_PWR8 1
6111//
James Y Knightc97efa42016-02-11 16:51:29 +00006112// 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 +00006113//
Eric Christopherb70819e2017-03-25 02:29:18 +00006114// ppc64le also defaults to power8.
6115// 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
6116//
Will Schmidtf0487512014-06-26 13:34:10 +00006117// PPCPOWER8:#define _ARCH_PPC 1
6118// PPCPOWER8:#define _ARCH_PPC64 1
6119// PPCPOWER8:#define _ARCH_PPCGR 1
6120// PPCPOWER8:#define _ARCH_PPCSQ 1
6121// PPCPOWER8:#define _ARCH_PWR4 1
6122// PPCPOWER8:#define _ARCH_PWR5 1
6123// PPCPOWER8:#define _ARCH_PWR5X 1
6124// PPCPOWER8:#define _ARCH_PWR6 1
6125// PPCPOWER8:#define _ARCH_PWR6X 1
6126// PPCPOWER8:#define _ARCH_PWR7 1
6127// PPCPOWER8:#define _ARCH_PWR8 1
6128//
Nemanja Ivanovicd99f21b2016-05-09 18:58:02 +00006129// 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
6130//
6131// PPCPWR9:#define _ARCH_PPC 1
6132// PPCPWR9:#define _ARCH_PPC64 1
6133// PPCPWR9:#define _ARCH_PPCGR 1
6134// PPCPWR9:#define _ARCH_PPCSQ 1
6135// PPCPWR9:#define _ARCH_PWR4 1
6136// PPCPWR9:#define _ARCH_PWR5 1
6137// PPCPWR9:#define _ARCH_PWR5X 1
6138// PPCPWR9:#define _ARCH_PWR6 1
6139// PPCPWR9:#define _ARCH_PWR6X 1
6140// PPCPWR9:#define _ARCH_PWR7 1
6141// PPCPWR9:#define _ARCH_PWR9 1
6142//
6143// 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
6144//
6145// PPCPOWER9:#define _ARCH_PPC 1
6146// PPCPOWER9:#define _ARCH_PPC64 1
6147// PPCPOWER9:#define _ARCH_PPCGR 1
6148// PPCPOWER9:#define _ARCH_PPCSQ 1
6149// PPCPOWER9:#define _ARCH_PWR4 1
6150// PPCPOWER9:#define _ARCH_PWR5 1
6151// PPCPOWER9:#define _ARCH_PWR5X 1
6152// PPCPOWER9:#define _ARCH_PWR6 1
6153// PPCPOWER9:#define _ARCH_PWR6X 1
6154// PPCPOWER9:#define _ARCH_PWR7 1
6155// PPCPOWER9:#define _ARCH_PWR9 1
6156//
Nemanja Ivanovicbb1ea2d2016-05-09 08:52:33 +00006157// 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
6158// PPC-FLOAT128:#define __FLOAT128__ 1
6159//
James Y Knightc97efa42016-02-11 16:51:29 +00006160// 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 +00006161//
6162// PPC64-LINUX:#define _ARCH_PPC 1
6163// PPC64-LINUX:#define _ARCH_PPC64 1
6164// PPC64-LINUX:#define _BIG_ENDIAN 1
Eric Christopher2fd2eda2017-03-25 03:33:59 +00006165// PPC64-LINUX:#define _CALL_LINUX 1
Nico Weber3435ede2012-01-31 02:07:33 +00006166// PPC64-LINUX:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00006167// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Nico Weber3435ede2012-01-31 02:07:33 +00006168// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006169// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006170// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
6171// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
6172// PPC64-LINUX:#define __CHAR_BIT__ 8
6173// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
6174// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6175// PPC64-LINUX:#define __DBL_DIG__ 15
6176// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6177// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
6178// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
6179// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6180// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
6181// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
6182// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
6183// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6184// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6185// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
6186// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006187// PPC64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006188// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6189// PPC64-LINUX:#define __FLT_DIG__ 6
6190// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6191// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
6192// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
6193// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
6194// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6195// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
6196// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
6197// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
6198// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6199// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6200// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
6201// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6202// PPC64-LINUX:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006203// PPC64-LINUX:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006204// PPC64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006205// PPC64-LINUX:#define __INT16_FMTd__ "hd"
6206// PPC64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006207// PPC64-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006208// PPC64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006209// PPC64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006210// PPC64-LINUX:#define __INT32_FMTd__ "d"
6211// PPC64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006212// PPC64-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006213// PPC64-LINUX:#define __INT32_TYPE__ int
6214// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006215// PPC64-LINUX:#define __INT64_FMTd__ "ld"
6216// PPC64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006217// PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00006218// PPC64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00006219// PPC64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006220// PPC64-LINUX:#define __INT8_FMTd__ "hhd"
6221// PPC64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006222// PPC64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006223// PPC64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006224// PPC64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006225// PPC64-LINUX:#define __INTMAX_FMTd__ "ld"
6226// PPC64-LINUX:#define __INTMAX_FMTi__ "li"
Nico Weber3435ede2012-01-31 02:07:33 +00006227// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
6228// PPC64-LINUX:#define __INTMAX_TYPE__ long int
6229// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006230// PPC64-LINUX:#define __INTPTR_FMTd__ "ld"
6231// PPC64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006232// PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00006233// PPC64-LINUX:#define __INTPTR_TYPE__ long int
6234// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006235// PPC64-LINUX:#define __INT_FAST16_FMTd__ "hd"
6236// PPC64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006237// PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
6238// PPC64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006239// PPC64-LINUX:#define __INT_FAST32_FMTd__ "d"
6240// PPC64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006241// PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
6242// PPC64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006243// PPC64-LINUX:#define __INT_FAST64_FMTd__ "ld"
6244// PPC64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006245// PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
6246// PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006247// PPC64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6248// PPC64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006249// PPC64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006250// PPC64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006251// PPC64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6252// PPC64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006253// PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
6254// PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006255// PPC64-LINUX:#define __INT_LEAST32_FMTd__ "d"
6256// PPC64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006257// PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6258// PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006259// PPC64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
6260// PPC64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006261// PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
6262// PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006263// PPC64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6264// PPC64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006265// PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006266// PPC64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006267// PPC64-LINUX:#define __INT_MAX__ 2147483647
6268// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6269// PPC64-LINUX:#define __LDBL_DIG__ 31
6270// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6271// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
6272// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
6273// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6274// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
6275// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
6276// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
6277// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6278// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6279// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
6280// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006281// PPC64-LINUX:#define __LONGDOUBLE128 1
Nico Weber3435ede2012-01-31 02:07:33 +00006282// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
6283// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6284// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
6285// PPC64-LINUX:#define __LP64__ 1
6286// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006287// PPC64-LINUX:#define __POINTER_WIDTH__ 64
6288// PPC64-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006289// PPC64-LINUX:#define __PPC64__ 1
6290// PPC64-LINUX:#define __PPC__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006291// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
6292// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
6293// PPC64-LINUX:#define __REGISTER_PREFIX__
6294// PPC64-LINUX:#define __SCHAR_MAX__ 127
6295// PPC64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006296// PPC64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006297// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6298// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
6299// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
6300// PPC64-LINUX:#define __SIZEOF_INT__ 4
6301// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6302// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
6303// PPC64-LINUX:#define __SIZEOF_LONG__ 8
6304// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
6305// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
6306// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
6307// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
6308// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
6309// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006310// PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006311// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
6312// PPC64-LINUX:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006313// PPC64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006314// PPC64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006315// PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
6316// PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
6317// PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
6318// PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
6319// PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
6320// PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
6321// PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006322// PPC64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006323// PPC64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006324// PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006325// PPC64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00006326// PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006327// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006328// PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
6329// PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
6330// PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
6331// PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006332// PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006333// PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6334// PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6335// PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6336// PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6337// PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006338// PPC64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006339// PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006340// PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006341// PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6342// PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6343// PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6344// PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6345// PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006346// PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006347// PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006348// PPC64-LINUX:#define __USER_LABEL_PREFIX__
6349// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
6350// PPC64-LINUX:#define __WCHAR_TYPE__ int
6351// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
6352// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
6353// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
6354// PPC64-LINUX:#define __WINT_WIDTH__ 32
6355// PPC64-LINUX:#define __powerpc64__ 1
6356// PPC64-LINUX:#define __powerpc__ 1
6357// PPC64-LINUX:#define __ppc64__ 1
6358// PPC64-LINUX:#define __ppc__ 1
Ulrich Weigand8afad612014-07-28 13:17:52 +00006359
James Y Knightc97efa42016-02-11 16:51:29 +00006360// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6361// 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
6362// 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
6363// 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
6364// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6365// 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
6366// 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 +00006367// PPC64-ELFv1:#define _CALL_ELF 1
6368// PPC64-ELFv2:#define _CALL_ELF 2
Nico Weber3435ede2012-01-31 02:07:33 +00006369//
Eric Christopher2fd2eda2017-03-25 03:33:59 +00006370// Most of this is encompassed in other places.
6371// 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
6372//
6373// PPC64LE-LINUX:#define _CALL_LINUX 1
6374//
James Y Knightc97efa42016-02-11 16:51:29 +00006375// 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 +00006376//
6377// PPC:#define _ARCH_PPC 1
6378// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006379// PPC-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00006380// PPC:#define __BIGGEST_ALIGNMENT__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00006381// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006382// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006383// PPC:#define __CHAR16_TYPE__ unsigned short
6384// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006385// PPC:#define __CHAR_BIT__ 8
6386// PPC:#define __CHAR_UNSIGNED__ 1
6387// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6388// PPC:#define __DBL_DIG__ 15
6389// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6390// PPC:#define __DBL_HAS_DENORM__ 1
6391// PPC:#define __DBL_HAS_INFINITY__ 1
6392// PPC:#define __DBL_HAS_QUIET_NAN__ 1
6393// PPC:#define __DBL_MANT_DIG__ 53
6394// PPC:#define __DBL_MAX_10_EXP__ 308
6395// PPC:#define __DBL_MAX_EXP__ 1024
6396// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
6397// PPC:#define __DBL_MIN_10_EXP__ (-307)
6398// PPC:#define __DBL_MIN_EXP__ (-1021)
6399// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006400// PPC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006401// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6402// PPC:#define __FLT_DIG__ 6
6403// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
6404// PPC:#define __FLT_EVAL_METHOD__ 0
6405// PPC:#define __FLT_HAS_DENORM__ 1
6406// PPC:#define __FLT_HAS_INFINITY__ 1
6407// PPC:#define __FLT_HAS_QUIET_NAN__ 1
6408// PPC:#define __FLT_MANT_DIG__ 24
6409// PPC:#define __FLT_MAX_10_EXP__ 38
6410// PPC:#define __FLT_MAX_EXP__ 128
6411// PPC:#define __FLT_MAX__ 3.40282347e+38F
6412// PPC:#define __FLT_MIN_10_EXP__ (-37)
6413// PPC:#define __FLT_MIN_EXP__ (-125)
6414// PPC:#define __FLT_MIN__ 1.17549435e-38F
6415// PPC:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006416// PPC:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006417// PPC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006418// PPC:#define __INT16_FMTd__ "hd"
6419// PPC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006420// PPC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006421// PPC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006422// PPC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006423// PPC:#define __INT32_FMTd__ "d"
6424// PPC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006425// PPC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006426// PPC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006427// PPC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006428// PPC:#define __INT64_FMTd__ "lld"
6429// PPC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006430// PPC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006431// PPC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006432// PPC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006433// PPC:#define __INT8_FMTd__ "hhd"
6434// PPC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006435// PPC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006436// PPC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006437// PPC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006438// PPC:#define __INTMAX_FMTd__ "lld"
6439// PPC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006440// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006441// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006442// PPC:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006443// PPC:#define __INTPTR_FMTd__ "ld"
6444// PPC:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006445// PPC:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00006446// PPC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006447// PPC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006448// PPC:#define __INT_FAST16_FMTd__ "hd"
6449// PPC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006450// PPC:#define __INT_FAST16_MAX__ 32767
6451// PPC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006452// PPC:#define __INT_FAST32_FMTd__ "d"
6453// PPC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006454// PPC:#define __INT_FAST32_MAX__ 2147483647
6455// PPC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006456// PPC:#define __INT_FAST64_FMTd__ "lld"
6457// PPC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006458// PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6459// PPC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006460// PPC:#define __INT_FAST8_FMTd__ "hhd"
6461// PPC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006462// PPC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006463// PPC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006464// PPC:#define __INT_LEAST16_FMTd__ "hd"
6465// PPC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006466// PPC:#define __INT_LEAST16_MAX__ 32767
6467// PPC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006468// PPC:#define __INT_LEAST32_FMTd__ "d"
6469// PPC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006470// PPC:#define __INT_LEAST32_MAX__ 2147483647
6471// PPC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006472// PPC:#define __INT_LEAST64_FMTd__ "lld"
6473// PPC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006474// PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6475// PPC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006476// PPC:#define __INT_LEAST8_FMTd__ "hhd"
6477// PPC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006478// PPC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006479// PPC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006480// PPC:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006481// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6482// PPC:#define __LDBL_DIG__ 31
6483// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006484// PPC:#define __LDBL_HAS_DENORM__ 1
6485// PPC:#define __LDBL_HAS_INFINITY__ 1
6486// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006487// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00006488// PPC:#define __LDBL_MAX_10_EXP__ 308
6489// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00006490// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6491// PPC:#define __LDBL_MIN_10_EXP__ (-291)
6492// PPC:#define __LDBL_MIN_EXP__ (-968)
6493// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006494// PPC:#define __LONGDOUBLE128 1
Chris Lattnere963d092009-10-29 04:55:36 +00006495// PPC:#define __LONG_DOUBLE_128__ 1
6496// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6497// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006498// PPC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00006499// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00006500// PPC:#define __POINTER_WIDTH__ 32
6501// PPC:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006502// PPC:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00006503// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00006504// PPC:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006505// PPC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006506// PPC:#define __SCHAR_MAX__ 127
6507// PPC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006508// PPC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00006509// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00006510// PPC:#define __SIZEOF_DOUBLE__ 8
6511// PPC:#define __SIZEOF_FLOAT__ 4
6512// PPC:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00006513// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00006514// PPC:#define __SIZEOF_LONG_LONG__ 8
6515// PPC:#define __SIZEOF_LONG__ 4
6516// PPC:#define __SIZEOF_POINTER__ 4
6517// PPC:#define __SIZEOF_PTRDIFF_T__ 4
6518// PPC:#define __SIZEOF_SHORT__ 2
6519// PPC:#define __SIZEOF_SIZE_T__ 4
6520// PPC:#define __SIZEOF_WCHAR_T__ 4
6521// PPC:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00006522// PPC:#define __SIZE_MAX__ 4294967295UL
Chris Lattnere963d092009-10-29 04:55:36 +00006523// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00006524// PPC:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006525// PPC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006526// PPC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006527// PPC:#define __UINT16_TYPE__ unsigned short
6528// PPC:#define __UINT32_C_SUFFIX__ U
6529// PPC:#define __UINT32_MAX__ 4294967295U
6530// PPC:#define __UINT32_TYPE__ unsigned int
6531// PPC:#define __UINT64_C_SUFFIX__ ULL
6532// PPC:#define __UINT64_MAX__ 18446744073709551615ULL
6533// PPC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006534// PPC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006535// PPC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006536// PPC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006537// PPC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006538// PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00006539// PPC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006540// PPC:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006541// PPC:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006542// PPC:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006543// PPC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006544// PPC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006545// PPC:#define __UINT_FAST16_TYPE__ unsigned short
6546// PPC:#define __UINT_FAST32_MAX__ 4294967295U
6547// PPC:#define __UINT_FAST32_TYPE__ unsigned int
6548// PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6549// PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006550// PPC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006551// PPC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006552// PPC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006553// PPC:#define __UINT_LEAST16_TYPE__ unsigned short
6554// PPC:#define __UINT_LEAST32_MAX__ 4294967295U
6555// PPC:#define __UINT_LEAST32_TYPE__ unsigned int
6556// PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6557// PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006558// PPC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006559// PPC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006560// PPC:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006561// PPC:#define __WCHAR_MAX__ 2147483647
6562// PPC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00006563// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006564// PPC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00006565// PPC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006566// PPC:#define __ppc__ 1
6567//
James Y Knightc97efa42016-02-11 16:51:29 +00006568// 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 +00006569//
6570// PPC-LINUX:#define _ARCH_PPC 1
6571// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006572// PPC-LINUX-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00006573// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Nico Weber3435ede2012-01-31 02:07:33 +00006574// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006575// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006576// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
6577// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
6578// PPC-LINUX:#define __CHAR_BIT__ 8
6579// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
6580// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6581// PPC-LINUX:#define __DBL_DIG__ 15
6582// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6583// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
6584// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
6585// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6586// PPC-LINUX:#define __DBL_MANT_DIG__ 53
6587// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
6588// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
6589// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6590// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6591// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
6592// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006593// PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006594// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6595// PPC-LINUX:#define __FLT_DIG__ 6
6596// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6597// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
6598// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
6599// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
6600// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6601// PPC-LINUX:#define __FLT_MANT_DIG__ 24
6602// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
6603// PPC-LINUX:#define __FLT_MAX_EXP__ 128
6604// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6605// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6606// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
6607// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6608// PPC-LINUX:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006609// PPC-LINUX:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006610// PPC-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006611// PPC-LINUX:#define __INT16_FMTd__ "hd"
6612// PPC-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006613// PPC-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006614// PPC-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006615// PPC-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006616// PPC-LINUX:#define __INT32_FMTd__ "d"
6617// PPC-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006618// PPC-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006619// PPC-LINUX:#define __INT32_TYPE__ int
6620// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006621// PPC-LINUX:#define __INT64_FMTd__ "lld"
6622// PPC-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006623// PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Nico Weber3435ede2012-01-31 02:07:33 +00006624// PPC-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006625// PPC-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006626// PPC-LINUX:#define __INT8_FMTd__ "hhd"
6627// PPC-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006628// PPC-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006629// PPC-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006630// PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006631// PPC-LINUX:#define __INTMAX_FMTd__ "lld"
6632// PPC-LINUX:#define __INTMAX_FMTi__ "lli"
Nico Weber3435ede2012-01-31 02:07:33 +00006633// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
6634// PPC-LINUX:#define __INTMAX_TYPE__ long long int
6635// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006636// PPC-LINUX:#define __INTPTR_FMTd__ "d"
6637// PPC-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006638// PPC-LINUX:#define __INTPTR_MAX__ 2147483647
Hal Finkel26908382012-03-02 20:54:36 +00006639// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006640// PPC-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006641// PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
6642// PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006643// PPC-LINUX:#define __INT_FAST16_MAX__ 32767
6644// PPC-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006645// PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
6646// PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006647// PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
6648// PPC-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006649// PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
6650// PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006651// PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
6652// PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006653// PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6654// PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006655// PPC-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006656// PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006657// PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6658// PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006659// PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
6660// PPC-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006661// PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
6662// PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006663// PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6664// PPC-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006665// PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
6666// PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006667// PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6668// PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006669// PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6670// PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006671// PPC-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006672// PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006673// PPC-LINUX:#define __INT_MAX__ 2147483647
6674// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6675// PPC-LINUX:#define __LDBL_DIG__ 31
6676// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6677// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
6678// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
6679// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6680// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
6681// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
6682// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
6683// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6684// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6685// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
6686// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006687// PPC-LINUX:#define __LONGDOUBLE128 1
Nico Weber3435ede2012-01-31 02:07:33 +00006688// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
6689// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6690// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006691// PPC-LINUX-NOT:#define __LP64__
Nico Weber3435ede2012-01-31 02:07:33 +00006692// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006693// PPC-LINUX:#define __POINTER_WIDTH__ 32
6694// PPC-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006695// PPC-LINUX:#define __PPC__ 1
Hal Finkel26908382012-03-02 20:54:36 +00006696// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006697// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
6698// PPC-LINUX:#define __REGISTER_PREFIX__
6699// PPC-LINUX:#define __SCHAR_MAX__ 127
6700// PPC-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006701// PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006702// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6703// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
6704// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
6705// PPC-LINUX:#define __SIZEOF_INT__ 4
6706// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6707// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
6708// PPC-LINUX:#define __SIZEOF_LONG__ 4
6709// PPC-LINUX:#define __SIZEOF_POINTER__ 4
6710// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
6711// PPC-LINUX:#define __SIZEOF_SHORT__ 2
6712// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
6713// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
6714// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006715// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
Nico Weber3435ede2012-01-31 02:07:33 +00006716// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
6717// PPC-LINUX:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006718// PPC-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006719// PPC-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006720// PPC-LINUX:#define __UINT16_TYPE__ unsigned short
6721// PPC-LINUX:#define __UINT32_C_SUFFIX__ U
6722// PPC-LINUX:#define __UINT32_MAX__ 4294967295U
6723// PPC-LINUX:#define __UINT32_TYPE__ unsigned int
6724// PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
6725// PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
6726// PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006727// PPC-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006728// PPC-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006729// PPC-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006730// PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006731// PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Nico Weber3435ede2012-01-31 02:07:33 +00006732// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006733// PPC-LINUX:#define __UINTMAX_WIDTH__ 64
6734// PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
6735// PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
6736// PPC-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006737// PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006738// PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6739// PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6740// PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6741// PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6742// PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006743// PPC-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006744// PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006745// PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006746// PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6747// PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6748// PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6749// PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6750// PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006751// PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006752// PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006753// PPC-LINUX:#define __USER_LABEL_PREFIX__
6754// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
6755// PPC-LINUX:#define __WCHAR_TYPE__ int
6756// PPC-LINUX:#define __WCHAR_WIDTH__ 32
6757// PPC-LINUX:#define __WINT_TYPE__ unsigned int
6758// PPC-LINUX:#define __WINT_UNSIGNED__ 1
6759// PPC-LINUX:#define __WINT_WIDTH__ 32
6760// PPC-LINUX:#define __powerpc__ 1
6761// PPC-LINUX:#define __ppc__ 1
6762//
Eric Christopher1e6fedb2017-03-25 19:26:04 +00006763// 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
6764//
6765// PPC32-LINUX-NOT: _CALL_LINUX
6766//
James Y Knightc97efa42016-02-11 16:51:29 +00006767// 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 +00006768//
6769// PPC-DARWIN:#define _ARCH_PPC 1
6770// PPC-DARWIN:#define _BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00006771// PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
David Fang072d47b2013-05-16 17:51:48 +00006772// PPC-DARWIN:#define __BIG_ENDIAN__ 1
6773// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6774// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
6775// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
6776// PPC-DARWIN:#define __CHAR_BIT__ 8
6777// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6778// PPC-DARWIN:#define __DBL_DIG__ 15
6779// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
6780// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
6781// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
6782// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
6783// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
6784// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
6785// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
6786// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
6787// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
6788// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
6789// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006790// PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
David Fang072d47b2013-05-16 17:51:48 +00006791// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6792// PPC-DARWIN:#define __FLT_DIG__ 6
6793// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
6794// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
6795// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
6796// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
6797// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
6798// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
6799// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
6800// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
6801// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
6802// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
6803// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
6804// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
6805// PPC-DARWIN:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006806// PPC-DARWIN:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006807// PPC-DARWIN:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006808// PPC-DARWIN:#define __INT16_FMTd__ "hd"
6809// PPC-DARWIN:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006810// PPC-DARWIN:#define __INT16_MAX__ 32767
David Fang072d47b2013-05-16 17:51:48 +00006811// PPC-DARWIN:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006812// PPC-DARWIN:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006813// PPC-DARWIN:#define __INT32_FMTd__ "d"
6814// PPC-DARWIN:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006815// PPC-DARWIN:#define __INT32_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006816// PPC-DARWIN:#define __INT32_TYPE__ int
6817// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006818// PPC-DARWIN:#define __INT64_FMTd__ "lld"
6819// PPC-DARWIN:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006820// PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
David Fang072d47b2013-05-16 17:51:48 +00006821// PPC-DARWIN:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006822// PPC-DARWIN:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006823// PPC-DARWIN:#define __INT8_FMTd__ "hhd"
6824// PPC-DARWIN:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006825// PPC-DARWIN:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006826// PPC-DARWIN:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006827// PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006828// PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
6829// PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
David Fang072d47b2013-05-16 17:51:48 +00006830// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
6831// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
6832// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006833// PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
6834// PPC-DARWIN:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006835// PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
David Fang072d47b2013-05-16 17:51:48 +00006836// PPC-DARWIN:#define __INTPTR_TYPE__ long int
6837// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006838// PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
6839// PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006840// PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
6841// PPC-DARWIN:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006842// PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
6843// PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006844// PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
6845// PPC-DARWIN:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006846// PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
6847// PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006848// PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
6849// PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006850// PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
6851// PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006852// PPC-DARWIN:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006853// PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006854// PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
6855// PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006856// PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
6857// PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006858// PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
6859// PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006860// PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
6861// PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006862// PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
6863// PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006864// PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6865// PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006866// PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
6867// PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006868// PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006869// PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
David Fang072d47b2013-05-16 17:51:48 +00006870// PPC-DARWIN:#define __INT_MAX__ 2147483647
6871// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6872// PPC-DARWIN:#define __LDBL_DIG__ 31
6873// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6874// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
6875// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
6876// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
6877// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
6878// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
6879// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
6880// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6881// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
6882// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
6883// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006884// PPC-DARWIN:#define __LONGDOUBLE128 1
David Fang072d47b2013-05-16 17:51:48 +00006885// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
6886// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
6887// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
6888// PPC-DARWIN:#define __MACH__ 1
6889// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
6890// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
6891// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
6892// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
6893// PPC-DARWIN:#define __POINTER_WIDTH__ 32
6894// PPC-DARWIN:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006895// PPC-DARWIN:#define __PPC__ 1
David Fang072d47b2013-05-16 17:51:48 +00006896// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
6897// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006898// PPC-DARWIN:#define __REGISTER_PREFIX__
David Fang072d47b2013-05-16 17:51:48 +00006899// PPC-DARWIN:#define __SCHAR_MAX__ 127
6900// PPC-DARWIN:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006901// PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006902// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
6903// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
6904// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
6905// PPC-DARWIN:#define __SIZEOF_INT__ 4
6906// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
6907// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
6908// PPC-DARWIN:#define __SIZEOF_LONG__ 4
6909// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
6910// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
6911// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
6912// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
6913// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
6914// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
6915// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
6916// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
6917// PPC-DARWIN:#define __SIZE_WIDTH__ 32
6918// PPC-DARWIN:#define __STDC_HOSTED__ 0
Richard Smithab506ad2014-10-20 23:26:58 +00006919// PPC-DARWIN:#define __STDC_VERSION__ 201112L
David Fang072d47b2013-05-16 17:51:48 +00006920// PPC-DARWIN:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006921// PPC-DARWIN:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006922// PPC-DARWIN:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006923// PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
6924// PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
6925// PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
6926// PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
6927// PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
6928// PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
6929// PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006930// PPC-DARWIN:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006931// PPC-DARWIN:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006932// PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006933// PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006934// PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
David Fang072d47b2013-05-16 17:51:48 +00006935// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006936// PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006937// PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006938// PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006939// PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006940// PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006941// PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
6942// PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
6943// PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
6944// PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6945// PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006946// PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006947// PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006948// PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006949// PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
6950// PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
6951// PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
6952// PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6953// PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006954// PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006955// PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
David Fang072d47b2013-05-16 17:51:48 +00006956// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
6957// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
6958// PPC-DARWIN:#define __WCHAR_TYPE__ int
6959// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
6960// PPC-DARWIN:#define __WINT_TYPE__ int
6961// PPC-DARWIN:#define __WINT_WIDTH__ 32
6962// PPC-DARWIN:#define __powerpc__ 1
6963// PPC-DARWIN:#define __ppc__ 1
Eric Christopherdec1b922017-03-16 22:31:07 +00006964
6965// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-DARWIN %s
6966// PPC64-DARWIN:#define __STRUCT_PARM_ALIGN__ 16
6967
James Y Knightc97efa42016-02-11 16:51:29 +00006968// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
6969// 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 +00006970//
Matt Arsenaultf333de32016-09-07 07:08:02 +00006971// AMDGPU:#define __ENDIAN_LITTLE__ 1
Tom Stellard22041372015-07-17 13:16:52 +00006972// AMDGPU:#define cl_khr_byte_addressable_store 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006973// AMDGCN:#define cl_khr_fp64 1
Tom Stellard22041372015-07-17 13:16:52 +00006974// AMDGPU:#define cl_khr_global_int32_base_atomics 1
6975// AMDGPU:#define cl_khr_global_int32_extended_atomics 1
6976// AMDGPU:#define cl_khr_local_int32_base_atomics 1
6977// AMDGPU:#define cl_khr_local_int32_extended_atomics 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006978
James Y Knightc97efa42016-02-11 16:51:29 +00006979// 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 +00006980// 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 +00006981//
Tim Northovera6a19f12015-02-06 01:25:07 +00006982// S390X:#define __BIGGEST_ALIGNMENT__ 8
Ulrich Weigand47445072013-05-06 16:26:41 +00006983// S390X:#define __CHAR16_TYPE__ unsigned short
6984// S390X:#define __CHAR32_TYPE__ unsigned int
6985// S390X:#define __CHAR_BIT__ 8
6986// S390X:#define __CHAR_UNSIGNED__ 1
6987// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6988// S390X:#define __DBL_DIG__ 15
6989// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
6990// S390X:#define __DBL_HAS_DENORM__ 1
6991// S390X:#define __DBL_HAS_INFINITY__ 1
6992// S390X:#define __DBL_HAS_QUIET_NAN__ 1
6993// S390X:#define __DBL_MANT_DIG__ 53
6994// S390X:#define __DBL_MAX_10_EXP__ 308
6995// S390X:#define __DBL_MAX_EXP__ 1024
6996// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
6997// S390X:#define __DBL_MIN_10_EXP__ (-307)
6998// S390X:#define __DBL_MIN_EXP__ (-1021)
6999// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007000// S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ulrich Weigand47445072013-05-06 16:26:41 +00007001// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7002// S390X:#define __FLT_DIG__ 6
7003// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
7004// S390X:#define __FLT_EVAL_METHOD__ 0
7005// S390X:#define __FLT_HAS_DENORM__ 1
7006// S390X:#define __FLT_HAS_INFINITY__ 1
7007// S390X:#define __FLT_HAS_QUIET_NAN__ 1
7008// S390X:#define __FLT_MANT_DIG__ 24
7009// S390X:#define __FLT_MAX_10_EXP__ 38
7010// S390X:#define __FLT_MAX_EXP__ 128
7011// S390X:#define __FLT_MAX__ 3.40282347e+38F
7012// S390X:#define __FLT_MIN_10_EXP__ (-37)
7013// S390X:#define __FLT_MIN_EXP__ (-125)
7014// S390X:#define __FLT_MIN__ 1.17549435e-38F
7015// S390X:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007016// S390X:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007017// S390X:#define __INT16_FMTd__ "hd"
7018// S390X:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007019// S390X:#define __INT16_MAX__ 32767
Ulrich Weigand47445072013-05-06 16:26:41 +00007020// S390X:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007021// S390X:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007022// S390X:#define __INT32_FMTd__ "d"
7023// S390X:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007024// S390X:#define __INT32_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00007025// S390X:#define __INT32_TYPE__ int
Ulrich Weigand881497a2015-03-30 13:50:21 +00007026// S390X:#define __INT64_C_SUFFIX__ L
7027// S390X:#define __INT64_FMTd__ "ld"
7028// S390X:#define __INT64_FMTi__ "li"
7029// S390X:#define __INT64_MAX__ 9223372036854775807L
7030// S390X:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007031// S390X:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007032// S390X:#define __INT8_FMTd__ "hhd"
7033// S390X:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007034// S390X:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007035// S390X:#define __INT8_TYPE__ signed char
Ulrich Weigand881497a2015-03-30 13:50:21 +00007036// S390X:#define __INTMAX_C_SUFFIX__ L
7037// S390X:#define __INTMAX_FMTd__ "ld"
7038// S390X:#define __INTMAX_FMTi__ "li"
7039// S390X:#define __INTMAX_MAX__ 9223372036854775807L
7040// S390X:#define __INTMAX_TYPE__ long int
Ulrich Weigand47445072013-05-06 16:26:41 +00007041// S390X:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007042// S390X:#define __INTPTR_FMTd__ "ld"
7043// S390X:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007044// S390X:#define __INTPTR_MAX__ 9223372036854775807L
Ulrich Weigand47445072013-05-06 16:26:41 +00007045// S390X:#define __INTPTR_TYPE__ long int
7046// S390X:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007047// S390X:#define __INT_FAST16_FMTd__ "hd"
7048// S390X:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007049// S390X:#define __INT_FAST16_MAX__ 32767
7050// S390X:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007051// S390X:#define __INT_FAST32_FMTd__ "d"
7052// S390X:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007053// S390X:#define __INT_FAST32_MAX__ 2147483647
7054// S390X:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007055// S390X:#define __INT_FAST64_FMTd__ "ld"
7056// S390X:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007057// S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
7058// S390X:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007059// S390X:#define __INT_FAST8_FMTd__ "hhd"
7060// S390X:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007061// S390X:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007062// S390X:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007063// S390X:#define __INT_LEAST16_FMTd__ "hd"
7064// S390X:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007065// S390X:#define __INT_LEAST16_MAX__ 32767
7066// S390X:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007067// S390X:#define __INT_LEAST32_FMTd__ "d"
7068// S390X:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007069// S390X:#define __INT_LEAST32_MAX__ 2147483647
7070// S390X:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007071// S390X:#define __INT_LEAST64_FMTd__ "ld"
7072// S390X:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007073// S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
7074// S390X:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007075// S390X:#define __INT_LEAST8_FMTd__ "hhd"
7076// S390X:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007077// S390X:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007078// S390X:#define __INT_LEAST8_TYPE__ signed char
Ulrich Weigand47445072013-05-06 16:26:41 +00007079// S390X:#define __INT_MAX__ 2147483647
7080// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
7081// S390X:#define __LDBL_DIG__ 33
7082// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
7083// S390X:#define __LDBL_HAS_DENORM__ 1
7084// S390X:#define __LDBL_HAS_INFINITY__ 1
7085// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
7086// S390X:#define __LDBL_MANT_DIG__ 113
7087// S390X:#define __LDBL_MAX_10_EXP__ 4932
7088// S390X:#define __LDBL_MAX_EXP__ 16384
7089// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
7090// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
7091// S390X:#define __LDBL_MIN_EXP__ (-16381)
7092// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
7093// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
7094// S390X:#define __LONG_MAX__ 9223372036854775807L
7095// S390X:#define __NO_INLINE__ 1
7096// S390X:#define __POINTER_WIDTH__ 64
7097// S390X:#define __PTRDIFF_TYPE__ long int
7098// S390X:#define __PTRDIFF_WIDTH__ 64
7099// S390X:#define __SCHAR_MAX__ 127
7100// S390X:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007101// S390X:#define __SIG_ATOMIC_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00007102// S390X:#define __SIG_ATOMIC_WIDTH__ 32
7103// S390X:#define __SIZEOF_DOUBLE__ 8
7104// S390X:#define __SIZEOF_FLOAT__ 4
7105// S390X:#define __SIZEOF_INT__ 4
7106// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
7107// S390X:#define __SIZEOF_LONG_LONG__ 8
7108// S390X:#define __SIZEOF_LONG__ 8
7109// S390X:#define __SIZEOF_POINTER__ 8
7110// S390X:#define __SIZEOF_PTRDIFF_T__ 8
7111// S390X:#define __SIZEOF_SHORT__ 2
7112// S390X:#define __SIZEOF_SIZE_T__ 8
7113// S390X:#define __SIZEOF_WCHAR_T__ 4
7114// S390X:#define __SIZEOF_WINT_T__ 4
7115// S390X:#define __SIZE_TYPE__ long unsigned int
7116// S390X:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00007117// S390X-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007118// S390X:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007119// S390X:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007120// S390X:#define __UINT16_TYPE__ unsigned short
7121// S390X:#define __UINT32_C_SUFFIX__ U
7122// S390X:#define __UINT32_MAX__ 4294967295U
7123// S390X:#define __UINT32_TYPE__ unsigned int
Ulrich Weigand881497a2015-03-30 13:50:21 +00007124// S390X:#define __UINT64_C_SUFFIX__ UL
7125// S390X:#define __UINT64_MAX__ 18446744073709551615UL
7126// S390X:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007127// S390X:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007128// S390X:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007129// S390X:#define __UINT8_TYPE__ unsigned char
Ulrich Weigand881497a2015-03-30 13:50:21 +00007130// S390X:#define __UINTMAX_C_SUFFIX__ UL
7131// S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
7132// S390X:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007133// S390X:#define __UINTMAX_WIDTH__ 64
7134// S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
7135// S390X:#define __UINTPTR_TYPE__ long unsigned int
7136// S390X:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007137// S390X:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007138// S390X:#define __UINT_FAST16_TYPE__ unsigned short
7139// S390X:#define __UINT_FAST32_MAX__ 4294967295U
7140// S390X:#define __UINT_FAST32_TYPE__ unsigned int
7141// S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7142// S390X:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007143// S390X:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007144// S390X:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007145// S390X:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007146// S390X:#define __UINT_LEAST16_TYPE__ unsigned short
7147// S390X:#define __UINT_LEAST32_MAX__ 4294967295U
7148// S390X:#define __UINT_LEAST32_TYPE__ unsigned int
7149// S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7150// S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007151// S390X:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007152// S390X:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007153// S390X:#define __USER_LABEL_PREFIX__
Ulrich Weigand47445072013-05-06 16:26:41 +00007154// S390X:#define __WCHAR_MAX__ 2147483647
7155// S390X:#define __WCHAR_TYPE__ int
7156// S390X:#define __WCHAR_WIDTH__ 32
7157// S390X:#define __WINT_TYPE__ int
7158// S390X:#define __WINT_WIDTH__ 32
7159// S390X:#define __s390__ 1
7160// S390X:#define __s390x__ 1
7161//
James Y Knightb214cbc2016-03-04 19:00:41 +00007162// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7163// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7164// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
7165// 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 +00007166// 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
7167// 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 +00007168//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007169// SPARC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007170// SPARC:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00007171// SPARC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007172// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007173// SPARC:#define __CHAR16_TYPE__ unsigned short
7174// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007175// SPARC:#define __CHAR_BIT__ 8
7176// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7177// SPARC:#define __DBL_DIG__ 15
7178// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
7179// SPARC:#define __DBL_HAS_DENORM__ 1
7180// SPARC:#define __DBL_HAS_INFINITY__ 1
7181// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
7182// SPARC:#define __DBL_MANT_DIG__ 53
7183// SPARC:#define __DBL_MAX_10_EXP__ 308
7184// SPARC:#define __DBL_MAX_EXP__ 1024
7185// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
7186// SPARC:#define __DBL_MIN_10_EXP__ (-307)
7187// SPARC:#define __DBL_MIN_EXP__ (-1021)
7188// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007189// SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007190// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7191// SPARC:#define __FLT_DIG__ 6
7192// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
7193// SPARC:#define __FLT_EVAL_METHOD__ 0
7194// SPARC:#define __FLT_HAS_DENORM__ 1
7195// SPARC:#define __FLT_HAS_INFINITY__ 1
7196// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
7197// SPARC:#define __FLT_MANT_DIG__ 24
7198// SPARC:#define __FLT_MAX_10_EXP__ 38
7199// SPARC:#define __FLT_MAX_EXP__ 128
7200// SPARC:#define __FLT_MAX__ 3.40282347e+38F
7201// SPARC:#define __FLT_MIN_10_EXP__ (-37)
7202// SPARC:#define __FLT_MIN_EXP__ (-125)
7203// SPARC:#define __FLT_MIN__ 1.17549435e-38F
7204// SPARC:#define __FLT_RADIX__ 2
Douglas Katzman13f4a912016-11-09 15:43:51 +00007205// SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
James Y Knightc97efa42016-02-11 16:51:29 +00007206// SPARC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007207// SPARC:#define __INT16_FMTd__ "hd"
7208// SPARC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007209// SPARC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007210// SPARC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007211// SPARC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007212// SPARC:#define __INT32_FMTd__ "d"
7213// SPARC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007214// SPARC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007215// SPARC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007216// SPARC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007217// SPARC:#define __INT64_FMTd__ "lld"
7218// SPARC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007219// SPARC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00007220// SPARC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007221// SPARC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007222// SPARC:#define __INT8_FMTd__ "hhd"
7223// SPARC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007224// SPARC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007225// SPARC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007226// SPARC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007227// SPARC:#define __INTMAX_FMTd__ "lld"
7228// SPARC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00007229// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00007230// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007231// SPARC:#define __INTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007232// SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
7233// SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
7234// SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
7235// SPARC-DEFAULT:#define __INTPTR_TYPE__ int
7236// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
7237// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
7238// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
7239// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007240// SPARC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007241// SPARC:#define __INT_FAST16_FMTd__ "hd"
7242// SPARC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007243// SPARC:#define __INT_FAST16_MAX__ 32767
7244// SPARC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007245// SPARC:#define __INT_FAST32_FMTd__ "d"
7246// SPARC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007247// SPARC:#define __INT_FAST32_MAX__ 2147483647
7248// SPARC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007249// SPARC:#define __INT_FAST64_FMTd__ "lld"
7250// SPARC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007251// SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
7252// SPARC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007253// SPARC:#define __INT_FAST8_FMTd__ "hhd"
7254// SPARC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007255// SPARC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007256// SPARC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007257// SPARC:#define __INT_LEAST16_FMTd__ "hd"
7258// SPARC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007259// SPARC:#define __INT_LEAST16_MAX__ 32767
7260// SPARC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007261// SPARC:#define __INT_LEAST32_FMTd__ "d"
7262// SPARC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007263// SPARC:#define __INT_LEAST32_MAX__ 2147483647
7264// SPARC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007265// SPARC:#define __INT_LEAST64_FMTd__ "lld"
7266// SPARC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007267// SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7268// SPARC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007269// SPARC:#define __INT_LEAST8_FMTd__ "hhd"
7270// SPARC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007271// SPARC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007272// SPARC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007273// SPARC:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007274// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00007275// SPARC:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007276// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00007277// SPARC:#define __LDBL_HAS_DENORM__ 1
7278// SPARC:#define __LDBL_HAS_INFINITY__ 1
7279// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
7280// SPARC:#define __LDBL_MANT_DIG__ 53
7281// SPARC:#define __LDBL_MAX_10_EXP__ 308
7282// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007283// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00007284// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
7285// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007286// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00007287// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
7288// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007289// SPARC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007290// SPARC:#define __POINTER_WIDTH__ 32
James Y Knightb214cbc2016-03-04 19:00:41 +00007291// SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
7292// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007293// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00007294// SPARC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007295// SPARC:#define __SCHAR_MAX__ 127
7296// SPARC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007297// SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007298// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007299// SPARC:#define __SIZEOF_DOUBLE__ 8
7300// SPARC:#define __SIZEOF_FLOAT__ 4
7301// SPARC:#define __SIZEOF_INT__ 4
7302// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
7303// SPARC:#define __SIZEOF_LONG_LONG__ 8
7304// SPARC:#define __SIZEOF_LONG__ 4
7305// SPARC:#define __SIZEOF_POINTER__ 4
7306// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
7307// SPARC:#define __SIZEOF_SHORT__ 2
7308// SPARC:#define __SIZEOF_SIZE_T__ 4
7309// SPARC:#define __SIZEOF_WCHAR_T__ 4
7310// SPARC:#define __SIZEOF_WINT_T__ 4
James Y Knightb214cbc2016-03-04 19:00:41 +00007311// SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
7312// SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
7313// SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
7314// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007315// SPARC:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007316// SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
7317// SPARC-NETOPENBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007318// SPARC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007319// SPARC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007320// SPARC:#define __UINT16_TYPE__ unsigned short
7321// SPARC:#define __UINT32_C_SUFFIX__ U
7322// SPARC:#define __UINT32_MAX__ 4294967295U
7323// SPARC:#define __UINT32_TYPE__ unsigned int
7324// SPARC:#define __UINT64_C_SUFFIX__ ULL
7325// SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
7326// SPARC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007327// SPARC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007328// SPARC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007329// SPARC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007330// SPARC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00007331// SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00007332// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007333// SPARC:#define __UINTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007334// SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
7335// SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
7336// SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
7337// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007338// SPARC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007339// SPARC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007340// SPARC:#define __UINT_FAST16_TYPE__ unsigned short
7341// SPARC:#define __UINT_FAST32_MAX__ 4294967295U
7342// SPARC:#define __UINT_FAST32_TYPE__ unsigned int
7343// SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7344// SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007345// SPARC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007346// SPARC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007347// SPARC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007348// SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
7349// SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
7350// SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
7351// SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7352// SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007353// SPARC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007354// SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007355// SPARC:#define __USER_LABEL_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00007356// SPARC:#define __VERSION__ "4.2.1 Compatible{{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +00007357// SPARC:#define __WCHAR_MAX__ 2147483647
7358// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007359// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007360// SPARC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007361// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007362// SPARC:#define __sparc 1
7363// SPARC:#define __sparc__ 1
7364// SPARC:#define __sparcv8 1
7365// SPARC:#define sparc 1
James Y Knight4b4d19e2015-06-04 15:36:29 +00007366
James Y Knightc97efa42016-02-11 16:51:29 +00007367// 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 +00007368// 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 +00007369//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007370// TCE-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007371// TCE:#define __BIGGEST_ALIGNMENT__ 4
Robert Lytton2c942c62014-03-10 12:06:29 +00007372// TCE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007373// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007374// TCE:#define __CHAR16_TYPE__ unsigned short
7375// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007376// TCE:#define __CHAR_BIT__ 8
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007377// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnere963d092009-10-29 04:55:36 +00007378// TCE:#define __DBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007379// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnere963d092009-10-29 04:55:36 +00007380// TCE:#define __DBL_HAS_DENORM__ 1
7381// TCE:#define __DBL_HAS_INFINITY__ 1
7382// TCE:#define __DBL_HAS_QUIET_NAN__ 1
7383// TCE:#define __DBL_MANT_DIG__ 24
7384// TCE:#define __DBL_MAX_10_EXP__ 38
7385// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007386// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnere963d092009-10-29 04:55:36 +00007387// TCE:#define __DBL_MIN_10_EXP__ (-37)
7388// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007389// TCE:#define __DBL_MIN__ 1.17549435e-38
Ed Schouten49920992015-02-23 09:12:31 +00007390// TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007391// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7392// TCE:#define __FLT_DIG__ 6
7393// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
7394// TCE:#define __FLT_EVAL_METHOD__ 0
7395// TCE:#define __FLT_HAS_DENORM__ 1
7396// TCE:#define __FLT_HAS_INFINITY__ 1
7397// TCE:#define __FLT_HAS_QUIET_NAN__ 1
7398// TCE:#define __FLT_MANT_DIG__ 24
7399// TCE:#define __FLT_MAX_10_EXP__ 38
7400// TCE:#define __FLT_MAX_EXP__ 128
7401// TCE:#define __FLT_MAX__ 3.40282347e+38F
7402// TCE:#define __FLT_MIN_10_EXP__ (-37)
7403// TCE:#define __FLT_MIN_EXP__ (-125)
7404// TCE:#define __FLT_MIN__ 1.17549435e-38F
7405// TCE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007406// TCE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007407// TCE:#define __INT16_FMTd__ "hd"
7408// TCE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007409// TCE:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007410// TCE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007411// TCE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007412// TCE:#define __INT32_FMTd__ "d"
7413// TCE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007414// TCE:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007415// TCE:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007416// TCE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007417// TCE:#define __INT8_FMTd__ "hhd"
7418// TCE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007419// TCE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007420// TCE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007421// TCE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007422// TCE:#define __INTMAX_FMTd__ "ld"
7423// TCE:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007424// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00007425// TCE:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007426// TCE:#define __INTMAX_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007427// TCE:#define __INTPTR_FMTd__ "d"
7428// TCE:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007429// TCE:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00007430// TCE:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007431// TCE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007432// TCE:#define __INT_FAST16_FMTd__ "hd"
7433// TCE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007434// TCE:#define __INT_FAST16_MAX__ 32767
7435// TCE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007436// TCE:#define __INT_FAST32_FMTd__ "d"
7437// TCE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007438// TCE:#define __INT_FAST32_MAX__ 2147483647
7439// TCE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007440// TCE:#define __INT_FAST8_FMTd__ "hhd"
7441// TCE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007442// TCE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007443// TCE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007444// TCE:#define __INT_LEAST16_FMTd__ "hd"
7445// TCE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007446// TCE:#define __INT_LEAST16_MAX__ 32767
7447// TCE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007448// TCE:#define __INT_LEAST32_FMTd__ "d"
7449// TCE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007450// TCE:#define __INT_LEAST32_MAX__ 2147483647
7451// TCE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007452// TCE:#define __INT_LEAST8_FMTd__ "hhd"
7453// TCE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007454// TCE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007455// TCE:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007456// TCE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007457// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnere963d092009-10-29 04:55:36 +00007458// TCE:#define __LDBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007459// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnere963d092009-10-29 04:55:36 +00007460// TCE:#define __LDBL_HAS_DENORM__ 1
7461// TCE:#define __LDBL_HAS_INFINITY__ 1
7462// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
7463// TCE:#define __LDBL_MANT_DIG__ 24
7464// TCE:#define __LDBL_MAX_10_EXP__ 38
7465// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007466// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnere963d092009-10-29 04:55:36 +00007467// TCE:#define __LDBL_MIN_10_EXP__ (-37)
7468// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007469// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnere963d092009-10-29 04:55:36 +00007470// TCE:#define __LONG_LONG_MAX__ 2147483647LL
7471// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007472// TCE-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007473// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00007474// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00007475// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007476// TCE:#define __SCHAR_MAX__ 127
7477// TCE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007478// TCE:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007479// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007480// TCE:#define __SIZEOF_DOUBLE__ 4
7481// TCE:#define __SIZEOF_FLOAT__ 4
7482// TCE:#define __SIZEOF_INT__ 4
7483// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
7484// TCE:#define __SIZEOF_LONG_LONG__ 4
7485// TCE:#define __SIZEOF_LONG__ 4
7486// TCE:#define __SIZEOF_POINTER__ 4
7487// TCE:#define __SIZEOF_PTRDIFF_T__ 4
7488// TCE:#define __SIZEOF_SHORT__ 2
7489// TCE:#define __SIZEOF_SIZE_T__ 4
7490// TCE:#define __SIZEOF_WCHAR_T__ 4
7491// TCE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007492// TCE:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00007493// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007494// TCE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007495// TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
Chris Lattnere963d092009-10-29 04:55:36 +00007496// TCE:#define __TCE_V1__ 1
7497// TCE:#define __TCE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007498// TCE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007499// TCE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007500// TCE:#define __UINT16_TYPE__ unsigned short
7501// TCE:#define __UINT32_C_SUFFIX__ U
7502// TCE:#define __UINT32_MAX__ 4294967295U
7503// TCE:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007504// TCE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007505// TCE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007506// TCE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007507// TCE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007508// TCE:#define __UINTMAX_MAX__ 4294967295UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007509// TCE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007510// TCE:#define __UINTMAX_WIDTH__ 32
7511// TCE:#define __UINTPTR_MAX__ 4294967295U
7512// TCE:#define __UINTPTR_TYPE__ unsigned int
7513// TCE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007514// TCE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007515// TCE:#define __UINT_FAST16_TYPE__ unsigned short
7516// TCE:#define __UINT_FAST32_MAX__ 4294967295U
7517// TCE:#define __UINT_FAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007518// TCE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007519// TCE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007520// TCE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007521// TCE:#define __UINT_LEAST16_TYPE__ unsigned short
7522// TCE:#define __UINT_LEAST32_MAX__ 4294967295U
7523// TCE:#define __UINT_LEAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007524// TCE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007525// TCE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007526// TCE:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007527// TCE:#define __WCHAR_MAX__ 2147483647
7528// TCE:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007529// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007530// TCE:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007531// TCE:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007532// TCE:#define __tce 1
7533// TCE:#define __tce__ 1
7534// TCE:#define tce 1
7535//
James Y Knightc97efa42016-02-11 16:51:29 +00007536// 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 +00007537// 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 +00007538//
7539// X86_64:#define _LP64 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007540// X86_64-NOT:#define _LP32 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007541// X86_64:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007542// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007543// X86_64:#define __CHAR16_TYPE__ unsigned short
7544// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007545// X86_64:#define __CHAR_BIT__ 8
7546// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7547// X86_64:#define __DBL_DIG__ 15
7548// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
7549// X86_64:#define __DBL_HAS_DENORM__ 1
7550// X86_64:#define __DBL_HAS_INFINITY__ 1
7551// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
7552// X86_64:#define __DBL_MANT_DIG__ 53
7553// X86_64:#define __DBL_MAX_10_EXP__ 308
7554// X86_64:#define __DBL_MAX_EXP__ 1024
7555// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
7556// X86_64:#define __DBL_MIN_10_EXP__ (-307)
7557// X86_64:#define __DBL_MIN_EXP__ (-1021)
7558// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007559// X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007560// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7561// X86_64:#define __FLT_DIG__ 6
7562// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
7563// X86_64:#define __FLT_EVAL_METHOD__ 0
7564// X86_64:#define __FLT_HAS_DENORM__ 1
7565// X86_64:#define __FLT_HAS_INFINITY__ 1
7566// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
7567// X86_64:#define __FLT_MANT_DIG__ 24
7568// X86_64:#define __FLT_MAX_10_EXP__ 38
7569// X86_64:#define __FLT_MAX_EXP__ 128
7570// X86_64:#define __FLT_MAX__ 3.40282347e+38F
7571// X86_64:#define __FLT_MIN_10_EXP__ (-37)
7572// X86_64:#define __FLT_MIN_EXP__ (-125)
7573// X86_64:#define __FLT_MIN__ 1.17549435e-38F
7574// X86_64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007575// X86_64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007576// X86_64:#define __INT16_FMTd__ "hd"
7577// X86_64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007578// X86_64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007579// X86_64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007580// X86_64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007581// X86_64:#define __INT32_FMTd__ "d"
7582// X86_64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007583// X86_64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007584// X86_64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007585// X86_64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007586// X86_64:#define __INT64_FMTd__ "ld"
7587// X86_64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007588// X86_64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00007589// X86_64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007590// X86_64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007591// X86_64:#define __INT8_FMTd__ "hhd"
7592// X86_64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007593// X86_64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007594// X86_64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007595// X86_64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007596// X86_64:#define __INTMAX_FMTd__ "ld"
7597// X86_64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007598// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007599// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007600// X86_64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007601// X86_64:#define __INTPTR_FMTd__ "ld"
7602// X86_64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007603// X86_64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007604// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007605// X86_64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007606// X86_64:#define __INT_FAST16_FMTd__ "hd"
7607// X86_64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007608// X86_64:#define __INT_FAST16_MAX__ 32767
7609// X86_64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007610// X86_64:#define __INT_FAST32_FMTd__ "d"
7611// X86_64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007612// X86_64:#define __INT_FAST32_MAX__ 2147483647
7613// X86_64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007614// X86_64:#define __INT_FAST64_FMTd__ "ld"
7615// X86_64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007616// X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
7617// X86_64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007618// X86_64:#define __INT_FAST8_FMTd__ "hhd"
7619// X86_64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007620// X86_64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007621// X86_64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007622// X86_64:#define __INT_LEAST16_FMTd__ "hd"
7623// X86_64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007624// X86_64:#define __INT_LEAST16_MAX__ 32767
7625// X86_64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007626// X86_64:#define __INT_LEAST32_FMTd__ "d"
7627// X86_64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007628// X86_64:#define __INT_LEAST32_MAX__ 2147483647
7629// X86_64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007630// X86_64:#define __INT_LEAST64_FMTd__ "ld"
7631// X86_64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007632// X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
7633// X86_64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007634// X86_64:#define __INT_LEAST8_FMTd__ "hhd"
7635// X86_64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007636// X86_64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007637// X86_64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007638// X86_64:#define __INT_MAX__ 2147483647
7639// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7640// X86_64:#define __LDBL_DIG__ 18
7641// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7642// X86_64:#define __LDBL_HAS_DENORM__ 1
7643// X86_64:#define __LDBL_HAS_INFINITY__ 1
7644// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
7645// X86_64:#define __LDBL_MANT_DIG__ 64
7646// X86_64:#define __LDBL_MAX_10_EXP__ 4932
7647// X86_64:#define __LDBL_MAX_EXP__ 16384
7648// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7649// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
7650// X86_64:#define __LDBL_MIN_EXP__ (-16381)
7651// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7652// X86_64:#define __LITTLE_ENDIAN__ 1
7653// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
7654// X86_64:#define __LONG_MAX__ 9223372036854775807L
7655// X86_64:#define __LP64__ 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007656// X86_64-NOT:#define __ILP32__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007657// X86_64:#define __MMX__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007658// X86_64:#define __NO_MATH_INLINES 1
7659// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00007660// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007661// X86_64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007662// X86_64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007663// X86_64:#define __SCHAR_MAX__ 127
7664// X86_64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007665// X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007666// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007667// X86_64:#define __SIZEOF_DOUBLE__ 8
7668// X86_64:#define __SIZEOF_FLOAT__ 4
7669// X86_64:#define __SIZEOF_INT__ 4
7670// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
7671// X86_64:#define __SIZEOF_LONG_LONG__ 8
7672// X86_64:#define __SIZEOF_LONG__ 8
7673// X86_64:#define __SIZEOF_POINTER__ 8
7674// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
7675// X86_64:#define __SIZEOF_SHORT__ 2
7676// X86_64:#define __SIZEOF_SIZE_T__ 8
7677// X86_64:#define __SIZEOF_WCHAR_T__ 4
7678// X86_64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007679// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00007680// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007681// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00007682// X86_64:#define __SSE2_MATH__ 1
7683// X86_64:#define __SSE2__ 1
7684// X86_64:#define __SSE_MATH__ 1
7685// X86_64:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007686// X86_64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00007687// X86_64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007688// X86_64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007689// X86_64:#define __UINT16_TYPE__ unsigned short
7690// X86_64:#define __UINT32_C_SUFFIX__ U
7691// X86_64:#define __UINT32_MAX__ 4294967295U
7692// X86_64:#define __UINT32_TYPE__ unsigned int
7693// X86_64:#define __UINT64_C_SUFFIX__ UL
7694// X86_64:#define __UINT64_MAX__ 18446744073709551615UL
7695// X86_64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007696// X86_64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007697// X86_64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007698// X86_64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007699// X86_64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007700// X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007701// X86_64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007702// X86_64:#define __UINTMAX_WIDTH__ 64
7703// X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
7704// X86_64:#define __UINTPTR_TYPE__ long unsigned int
7705// X86_64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007706// X86_64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007707// X86_64:#define __UINT_FAST16_TYPE__ unsigned short
7708// X86_64:#define __UINT_FAST32_MAX__ 4294967295U
7709// X86_64:#define __UINT_FAST32_TYPE__ unsigned int
7710// X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7711// X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007712// X86_64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007713// X86_64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007714// X86_64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007715// X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
7716// X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
7717// X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
7718// X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7719// X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007720// X86_64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007721// X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007722// X86_64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007723// X86_64:#define __WCHAR_MAX__ 2147483647
7724// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007725// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007726// X86_64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007727// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007728// X86_64:#define __amd64 1
7729// X86_64:#define __amd64__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007730// X86_64:#define __x86_64 1
7731// X86_64:#define __x86_64__ 1
7732//
James Y Knightc97efa42016-02-11 16:51:29 +00007733// 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 +00007734//
7735// X86_64H:#define __x86_64 1
7736// X86_64H:#define __x86_64__ 1
7737// X86_64H:#define __x86_64h 1
7738// X86_64H:#define __x86_64h__ 1
7739
James Y Knightc97efa42016-02-11 16:51:29 +00007740// 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 +00007741// 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 +00007742//
7743// X32:#define _ILP32 1
7744// X32-NOT:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007745// X32:#define __BIGGEST_ALIGNMENT__ 16
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007746// X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7747// X32:#define __CHAR16_TYPE__ unsigned short
7748// X32:#define __CHAR32_TYPE__ unsigned int
7749// X32:#define __CHAR_BIT__ 8
7750// X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7751// X32:#define __DBL_DIG__ 15
7752// X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
7753// X32:#define __DBL_HAS_DENORM__ 1
7754// X32:#define __DBL_HAS_INFINITY__ 1
7755// X32:#define __DBL_HAS_QUIET_NAN__ 1
7756// X32:#define __DBL_MANT_DIG__ 53
7757// X32:#define __DBL_MAX_10_EXP__ 308
7758// X32:#define __DBL_MAX_EXP__ 1024
7759// X32:#define __DBL_MAX__ 1.7976931348623157e+308
7760// X32:#define __DBL_MIN_10_EXP__ (-307)
7761// X32:#define __DBL_MIN_EXP__ (-1021)
7762// X32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007763// X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007764// X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7765// X32:#define __FLT_DIG__ 6
7766// X32:#define __FLT_EPSILON__ 1.19209290e-7F
7767// X32:#define __FLT_EVAL_METHOD__ 0
7768// X32:#define __FLT_HAS_DENORM__ 1
7769// X32:#define __FLT_HAS_INFINITY__ 1
7770// X32:#define __FLT_HAS_QUIET_NAN__ 1
7771// X32:#define __FLT_MANT_DIG__ 24
7772// X32:#define __FLT_MAX_10_EXP__ 38
7773// X32:#define __FLT_MAX_EXP__ 128
7774// X32:#define __FLT_MAX__ 3.40282347e+38F
7775// X32:#define __FLT_MIN_10_EXP__ (-37)
7776// X32:#define __FLT_MIN_EXP__ (-125)
7777// X32:#define __FLT_MIN__ 1.17549435e-38F
7778// X32:#define __FLT_RADIX__ 2
7779// X32:#define __ILP32__ 1
7780// X32-NOT:#define __LP64__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007781// X32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007782// X32:#define __INT16_FMTd__ "hd"
7783// X32:#define __INT16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007784// X32:#define __INT16_MAX__ 32767
7785// X32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007786// X32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007787// X32:#define __INT32_FMTd__ "d"
7788// X32:#define __INT32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007789// X32:#define __INT32_MAX__ 2147483647
7790// X32:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007791// X32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007792// X32:#define __INT64_FMTd__ "lld"
7793// X32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007794// X32:#define __INT64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007795// X32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007796// X32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007797// X32:#define __INT8_FMTd__ "hhd"
7798// X32:#define __INT8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007799// X32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007800// X32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007801// X32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007802// X32:#define __INTMAX_FMTd__ "lld"
7803// X32:#define __INTMAX_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007804// X32:#define __INTMAX_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007805// X32:#define __INTMAX_TYPE__ long long int
7806// X32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007807// X32:#define __INTPTR_FMTd__ "d"
7808// X32:#define __INTPTR_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007809// X32:#define __INTPTR_MAX__ 2147483647
7810// X32:#define __INTPTR_TYPE__ int
7811// X32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007812// X32:#define __INT_FAST16_FMTd__ "hd"
7813// X32:#define __INT_FAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007814// X32:#define __INT_FAST16_MAX__ 32767
7815// X32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007816// X32:#define __INT_FAST32_FMTd__ "d"
7817// X32:#define __INT_FAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007818// X32:#define __INT_FAST32_MAX__ 2147483647
7819// X32:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007820// X32:#define __INT_FAST64_FMTd__ "lld"
7821// X32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007822// X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007823// X32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007824// X32:#define __INT_FAST8_FMTd__ "hhd"
7825// X32:#define __INT_FAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007826// X32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007827// X32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007828// X32:#define __INT_LEAST16_FMTd__ "hd"
7829// X32:#define __INT_LEAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007830// X32:#define __INT_LEAST16_MAX__ 32767
7831// X32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007832// X32:#define __INT_LEAST32_FMTd__ "d"
7833// X32:#define __INT_LEAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007834// X32:#define __INT_LEAST32_MAX__ 2147483647
7835// X32:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007836// X32:#define __INT_LEAST64_FMTd__ "lld"
7837// X32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007838// X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007839// X32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007840// X32:#define __INT_LEAST8_FMTd__ "hhd"
7841// X32:#define __INT_LEAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007842// X32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007843// X32:#define __INT_LEAST8_TYPE__ signed char
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007844// X32:#define __INT_MAX__ 2147483647
7845// X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7846// X32:#define __LDBL_DIG__ 18
7847// X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7848// X32:#define __LDBL_HAS_DENORM__ 1
7849// X32:#define __LDBL_HAS_INFINITY__ 1
7850// X32:#define __LDBL_HAS_QUIET_NAN__ 1
7851// X32:#define __LDBL_MANT_DIG__ 64
7852// X32:#define __LDBL_MAX_10_EXP__ 4932
7853// X32:#define __LDBL_MAX_EXP__ 16384
7854// X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7855// X32:#define __LDBL_MIN_10_EXP__ (-4931)
7856// X32:#define __LDBL_MIN_EXP__ (-16381)
7857// X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7858// X32:#define __LITTLE_ENDIAN__ 1
7859// X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
7860// X32:#define __LONG_MAX__ 2147483647L
7861// X32:#define __MMX__ 1
7862// X32:#define __NO_MATH_INLINES 1
7863// X32:#define __POINTER_WIDTH__ 32
7864// X32:#define __PTRDIFF_TYPE__ int
7865// X32:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00007866// X32:#define __REGISTER_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007867// X32:#define __SCHAR_MAX__ 127
7868// X32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007869// X32:#define __SIG_ATOMIC_MAX__ 2147483647
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007870// X32:#define __SIG_ATOMIC_WIDTH__ 32
7871// X32:#define __SIZEOF_DOUBLE__ 8
7872// X32:#define __SIZEOF_FLOAT__ 4
7873// X32:#define __SIZEOF_INT__ 4
7874// X32:#define __SIZEOF_LONG_DOUBLE__ 16
7875// X32:#define __SIZEOF_LONG_LONG__ 8
7876// X32:#define __SIZEOF_LONG__ 4
7877// X32:#define __SIZEOF_POINTER__ 4
7878// X32:#define __SIZEOF_PTRDIFF_T__ 4
7879// X32:#define __SIZEOF_SHORT__ 2
7880// X32:#define __SIZEOF_SIZE_T__ 4
7881// X32:#define __SIZEOF_WCHAR_T__ 4
7882// X32:#define __SIZEOF_WINT_T__ 4
7883// X32:#define __SIZE_MAX__ 4294967295U
7884// X32:#define __SIZE_TYPE__ unsigned int
7885// X32:#define __SIZE_WIDTH__ 32
7886// X32:#define __SSE2_MATH__ 1
7887// X32:#define __SSE2__ 1
7888// X32:#define __SSE_MATH__ 1
7889// X32:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007890// X32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
James Y Knightc97efa42016-02-11 16:51:29 +00007891// X32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007892// X32:#define __UINT16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007893// X32:#define __UINT16_TYPE__ unsigned short
7894// X32:#define __UINT32_C_SUFFIX__ U
7895// X32:#define __UINT32_MAX__ 4294967295U
7896// X32:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007897// X32:#define __UINT64_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007898// X32:#define __UINT64_MAX__ 18446744073709551615ULL
7899// X32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007900// X32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007901// X32:#define __UINT8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007902// X32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007903// X32:#define __UINTMAX_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007904// X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
7905// X32:#define __UINTMAX_TYPE__ long long unsigned int
7906// X32:#define __UINTMAX_WIDTH__ 64
7907// X32:#define __UINTPTR_MAX__ 4294967295U
7908// X32:#define __UINTPTR_TYPE__ unsigned int
7909// X32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007910// X32:#define __UINT_FAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007911// X32:#define __UINT_FAST16_TYPE__ unsigned short
7912// X32:#define __UINT_FAST32_MAX__ 4294967295U
7913// X32:#define __UINT_FAST32_TYPE__ unsigned int
7914// X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7915// X32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007916// X32:#define __UINT_FAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007917// X32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007918// X32:#define __UINT_LEAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007919// X32:#define __UINT_LEAST16_TYPE__ unsigned short
7920// X32:#define __UINT_LEAST32_MAX__ 4294967295U
7921// X32:#define __UINT_LEAST32_TYPE__ unsigned int
7922// X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7923// X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007924// X32:#define __UINT_LEAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007925// X32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007926// X32:#define __USER_LABEL_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007927// X32:#define __WCHAR_MAX__ 2147483647
7928// X32:#define __WCHAR_TYPE__ int
7929// X32:#define __WCHAR_WIDTH__ 32
7930// X32:#define __WINT_TYPE__ int
7931// X32:#define __WINT_WIDTH__ 32
7932// X32:#define __amd64 1
7933// X32:#define __amd64__ 1
7934// X32:#define __x86_64 1
7935// X32:#define __x86_64__ 1
7936//
James Y Knightc97efa42016-02-11 16:51:29 +00007937// 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 +00007938//
7939// X86_64-CLOUDABI:#define _LP64 1
7940// X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
7941// X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
7942// X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
7943// X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
7944// X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
7945// X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
7946// X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
7947// X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7948// X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
7949// X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
7950// X86_64-CLOUDABI:#define __CHAR_BIT__ 8
7951// X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
7952// X86_64-CLOUDABI:#define __CloudABI__ 1
7953// X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
7954// X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7955// X86_64-CLOUDABI:#define __DBL_DIG__ 15
7956// X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
7957// X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
7958// X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
7959// X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
7960// X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
7961// X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
7962// X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
7963// X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
7964// X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
7965// X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
7966// X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
7967// X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7968// X86_64-CLOUDABI:#define __ELF__ 1
7969// X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
7970// X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
7971// X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7972// X86_64-CLOUDABI:#define __FLT_DIG__ 6
7973// X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
7974// X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
7975// X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
7976// X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
7977// X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
7978// X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
7979// X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
7980// X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
7981// X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
7982// X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
7983// X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
7984// X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
7985// X86_64-CLOUDABI:#define __FLT_RADIX__ 2
7986// X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
7987// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
7988// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
7989// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
7990// X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
7991// X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
7992// X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
7993// X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
7994// X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
7995// X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
7996// X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
7997// X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
7998// X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
7999// X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
8000// X86_64-CLOUDABI:#define __GNUC__ 4
8001// X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
James Y Knightc97efa42016-02-11 16:51:29 +00008002// X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008003// X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
8004// X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
8005// X86_64-CLOUDABI:#define __INT16_MAX__ 32767
8006// X86_64-CLOUDABI:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008007// X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008008// X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
8009// X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
8010// X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
8011// X86_64-CLOUDABI:#define __INT32_TYPE__ int
8012// X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
8013// X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
8014// X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
8015// X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
8016// X86_64-CLOUDABI:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008017// X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008018// X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
8019// X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
8020// X86_64-CLOUDABI:#define __INT8_MAX__ 127
8021// X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
8022// X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
8023// X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
8024// X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
8025// X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
8026// X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
8027// X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
8028// X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
8029// X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
8030// X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
8031// X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
8032// X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
8033// X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
8034// X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
8035// X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
8036// X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
8037// X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
8038// X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
8039// X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
8040// X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
8041// X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
8042// X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
8043// X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
8044// X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
8045// X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
8046// X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
8047// X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
8048// X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
8049// X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
8050// X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
8051// X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
8052// X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
8053// X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
8054// X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
8055// X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
8056// X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
8057// X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
8058// X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
8059// X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
8060// X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
8061// X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
8062// X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
8063// X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
8064// X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
8065// X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
8066// X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
8067// X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8068// X86_64-CLOUDABI:#define __LDBL_DIG__ 18
8069// X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8070// X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
8071// X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
8072// X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
8073// X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
8074// X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
8075// X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
8076// X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8077// X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
8078// X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
8079// X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8080// X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
8081// X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
8082// X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
8083// X86_64-CLOUDABI:#define __LP64__ 1
8084// X86_64-CLOUDABI:#define __MMX__ 1
8085// X86_64-CLOUDABI:#define __NO_INLINE__ 1
8086// X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
8087// X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
8088// X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
8089// X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
8090// X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
8091// X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
8092// X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
8093// X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
8094// X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
8095// X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
8096// X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008097// X86_64-CLOUDABI:#define __REGISTER_PREFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008098// X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
8099// X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
8100// X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
8101// X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
8102// X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
8103// X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
8104// X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
8105// X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
8106// X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
8107// X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
8108// X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
8109// X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
8110// X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
8111// X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
8112// X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
8113// X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
8114// X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
8115// X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
8116// X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
8117// X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
8118// X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
8119// X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
8120// X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
8121// X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
8122// X86_64-CLOUDABI:#define __SSE2_MATH__ 1
8123// X86_64-CLOUDABI:#define __SSE2__ 1
8124// X86_64-CLOUDABI:#define __SSE_MATH__ 1
8125// X86_64-CLOUDABI:#define __SSE__ 1
8126// X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
8127// X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
8128// X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
8129// X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
8130// X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
8131// X86_64-CLOUDABI:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008132// X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008133// X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
8134// X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
8135// X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
8136// X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
8137// X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
8138// X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
8139// X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
8140// X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
8141// X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
8142// X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
8143// X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
8144// X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
8145// X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
8146// X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
8147// X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
8148// X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
8149// X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
8150// X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
8151// X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
8152// X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008153// X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008154// X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
8155// X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
8156// X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
8157// X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
8158// X86_64-CLOUDABI:#define __UINT8_MAX__ 255
8159// X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
8160// X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
8161// X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
8162// X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
8163// X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
8164// X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
8165// X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
8166// X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
8167// X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
8168// X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
8169// X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
8170// X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
8171// X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
8172// X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
8173// X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
8174// X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
8175// X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
8176// X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
8177// X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
8178// X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
8179// X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
8180// X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
8181// X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
8182// X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
8183// X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
8184// X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
8185// X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
8186// X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
8187// X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
8188// X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
8189// X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
8190// X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
8191// X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8192// X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
8193// X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
8194// X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
8195// X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
8196// X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
8197// X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
8198// X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
8199// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
8200// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
8201// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
8202// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
8203// X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
8204// X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
8205// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
8206// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
8207// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
8208// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
8209// X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
8210// X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
8211// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
8212// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
8213// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
8214// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
8215// X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8216// X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
8217// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
8218// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
8219// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
8220// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
8221// X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
8222// X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00008223// X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
8224// X86_64-CLOUDABI:#define __VERSION__ "4.2.1 Compatible{{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00008225// X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
8226// X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
8227// X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
8228// X86_64-CLOUDABI:#define __WINT_TYPE__ int
8229// X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
8230// X86_64-CLOUDABI:#define __amd64 1
8231// X86_64-CLOUDABI:#define __amd64__ 1
8232// X86_64-CLOUDABI:#define __clang__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008233// X86_64-CLOUDABI:#define __clang_major__ {{.*}}
8234// X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
8235// X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
8236// X86_64-CLOUDABI:#define __clang_version__ {{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00008237// X86_64-CLOUDABI:#define __llvm__ 1
8238// X86_64-CLOUDABI:#define __x86_64 1
8239// X86_64-CLOUDABI:#define __x86_64__ 1
8240//
James Y Knightc97efa42016-02-11 16:51:29 +00008241// 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 +00008242//
8243// X86_64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008244// X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00008245// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008246// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
8247// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
8248// X86_64-LINUX:#define __CHAR_BIT__ 8
8249// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8250// X86_64-LINUX:#define __DBL_DIG__ 15
8251// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
8252// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
8253// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
8254// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
8255// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
8256// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
8257// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
8258// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
8259// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
8260// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
8261// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008262// X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008263// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8264// X86_64-LINUX:#define __FLT_DIG__ 6
8265// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
8266// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
8267// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
8268// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
8269// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
8270// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
8271// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
8272// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
8273// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
8274// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
8275// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
8276// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
8277// X86_64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008278// X86_64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008279// X86_64-LINUX:#define __INT16_FMTd__ "hd"
8280// X86_64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008281// X86_64-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00008282// X86_64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008283// X86_64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008284// X86_64-LINUX:#define __INT32_FMTd__ "d"
8285// X86_64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008286// X86_64-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008287// X86_64-LINUX:#define __INT32_TYPE__ int
8288// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008289// X86_64-LINUX:#define __INT64_FMTd__ "ld"
8290// X86_64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008291// X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008292// X86_64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008293// X86_64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008294// X86_64-LINUX:#define __INT8_FMTd__ "hhd"
8295// X86_64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008296// X86_64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008297// X86_64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008298// X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008299// X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
8300// X86_64-LINUX:#define __INTMAX_FMTi__ "li"
Douglas Gregore6d6e512011-01-12 21:19:25 +00008301// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
8302// X86_64-LINUX:#define __INTMAX_TYPE__ long int
8303// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008304// X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
8305// X86_64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008306// X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008307// X86_64-LINUX:#define __INTPTR_TYPE__ long int
8308// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008309// X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
8310// X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008311// X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
8312// X86_64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008313// X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
8314// X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008315// X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
8316// X86_64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008317// X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
8318// X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008319// X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
8320// X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008321// X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
8322// X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008323// X86_64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008324// X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008325// X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
8326// X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008327// X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
8328// X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008329// X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
8330// X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008331// X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
8332// X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008333// X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
8334// X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008335// X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
8336// X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008337// X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
8338// X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008339// X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008340// X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008341// X86_64-LINUX:#define __INT_MAX__ 2147483647
8342// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8343// X86_64-LINUX:#define __LDBL_DIG__ 18
8344// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8345// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
8346// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
8347// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
8348// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
8349// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
8350// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
8351// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8352// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
8353// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
8354// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8355// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
8356// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
8357// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
8358// X86_64-LINUX:#define __LP64__ 1
8359// X86_64-LINUX:#define __MMX__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008360// X86_64-LINUX:#define __NO_MATH_INLINES 1
8361// X86_64-LINUX:#define __POINTER_WIDTH__ 64
8362// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
8363// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008364// X86_64-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008365// X86_64-LINUX:#define __SCHAR_MAX__ 127
8366// X86_64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008367// X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008368// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
8369// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
8370// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
8371// X86_64-LINUX:#define __SIZEOF_INT__ 4
8372// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
8373// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
8374// X86_64-LINUX:#define __SIZEOF_LONG__ 8
8375// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
8376// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
8377// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
8378// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
8379// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
8380// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00008381// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008382// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
8383// X86_64-LINUX:#define __SIZE_WIDTH__ 64
8384// X86_64-LINUX:#define __SSE2_MATH__ 1
8385// X86_64-LINUX:#define __SSE2__ 1
8386// X86_64-LINUX:#define __SSE_MATH__ 1
8387// X86_64-LINUX:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008388// X86_64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008389// X86_64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008390// X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
8391// X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
8392// X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
8393// X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
8394// X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
8395// X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
8396// X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008397// X86_64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008398// X86_64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008399// X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008400// X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008401// X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008402// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008403// X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
8404// X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
8405// X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
8406// X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008407// X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008408// X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
8409// X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
8410// X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
8411// X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8412// X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008413// X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008414// X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008415// X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008416// X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
8417// X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
8418// X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
8419// X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8420// X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008421// X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008422// X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008423// X86_64-LINUX:#define __USER_LABEL_PREFIX__
8424// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
8425// X86_64-LINUX:#define __WCHAR_TYPE__ int
8426// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
8427// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
8428// X86_64-LINUX:#define __WINT_WIDTH__ 32
8429// X86_64-LINUX:#define __amd64 1
8430// X86_64-LINUX:#define __amd64__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008431// X86_64-LINUX:#define __x86_64 1
8432// X86_64-LINUX:#define __x86_64__ 1
8433//
James Y Knightc97efa42016-02-11 16:51:29 +00008434// 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 +00008435//
Ed Schouten49920992015-02-23 09:12:31 +00008436// X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
8437// X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
Ed Schoutend0621462013-09-29 07:54:52 +00008438// X86_64-FREEBSD:#define __FreeBSD__ 9
8439// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
Ed Schouten49920992015-02-23 09:12:31 +00008440// X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
Ed Schoutend0621462013-09-29 07:54:52 +00008441// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
8442//
James Y Knightc97efa42016-02-11 16:51:29 +00008443// 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 +00008444//
8445// X86_64-NETBSD:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008446// X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008447// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8448// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
8449// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
8450// X86_64-NETBSD:#define __CHAR_BIT__ 8
8451// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8452// X86_64-NETBSD:#define __DBL_DIG__ 15
8453// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
8454// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
8455// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
8456// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
8457// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
8458// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
8459// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
8460// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
8461// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
8462// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
8463// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008464// X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008465// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8466// X86_64-NETBSD:#define __FLT_DIG__ 6
8467// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
8468// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
8469// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
8470// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
8471// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
8472// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
8473// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
8474// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
8475// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
8476// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
8477// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
8478// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
8479// X86_64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008480// X86_64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008481// X86_64-NETBSD:#define __INT16_FMTd__ "hd"
8482// X86_64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008483// X86_64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008484// X86_64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008485// X86_64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008486// X86_64-NETBSD:#define __INT32_FMTd__ "d"
8487// X86_64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008488// X86_64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008489// X86_64-NETBSD:#define __INT32_TYPE__ int
8490// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008491// X86_64-NETBSD:#define __INT64_FMTd__ "ld"
8492// X86_64-NETBSD:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008493// X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008494// X86_64-NETBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008495// X86_64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008496// X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
8497// X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008498// X86_64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008499// X86_64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008500// X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008501// X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
8502// X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008503// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
8504// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
8505// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008506// X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
8507// X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008508// X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008509// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
8510// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008511// X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
8512// X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008513// X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
8514// X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008515// X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
8516// X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008517// X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
8518// X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008519// X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
8520// X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008521// X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
8522// X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008523// X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
8524// X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008525// X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008526// X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008527// X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
8528// X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008529// X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
8530// X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008531// X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
8532// X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008533// X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
8534// X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008535// X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
8536// X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008537// X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
8538// X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008539// X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
8540// X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008541// X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008542// X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008543// X86_64-NETBSD:#define __INT_MAX__ 2147483647
8544// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8545// X86_64-NETBSD:#define __LDBL_DIG__ 18
8546// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8547// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
8548// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
8549// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
8550// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
8551// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
8552// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
8553// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8554// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
8555// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
8556// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8557// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
8558// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
8559// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
8560// X86_64-NETBSD:#define __LP64__ 1
8561// X86_64-NETBSD:#define __MMX__ 1
8562// X86_64-NETBSD:#define __NO_MATH_INLINES 1
8563// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
8564// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
8565// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008566// X86_64-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008567// X86_64-NETBSD:#define __SCHAR_MAX__ 127
8568// X86_64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008569// X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008570// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
8571// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
8572// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
8573// X86_64-NETBSD:#define __SIZEOF_INT__ 4
8574// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
8575// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
8576// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
8577// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
8578// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
8579// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
8580// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
8581// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
8582// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
8583// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
8584// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
8585// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
8586// X86_64-NETBSD:#define __SSE2_MATH__ 1
8587// X86_64-NETBSD:#define __SSE2__ 1
8588// X86_64-NETBSD:#define __SSE_MATH__ 1
8589// X86_64-NETBSD:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008590// X86_64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008591// X86_64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008592// X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
8593// X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
8594// X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
8595// X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
8596// X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
8597// X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
8598// X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008599// X86_64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008600// X86_64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008601// X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008602// X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008603// X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008604// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008605// X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
8606// X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
8607// X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
8608// X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008609// X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008610// X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
8611// X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
8612// X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
8613// X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8614// X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008615// X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008616// X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008617// X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008618// X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
8619// X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
8620// X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
8621// X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8622// X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008623// X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008624// X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008625// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
8626// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
8627// X86_64-NETBSD:#define __WCHAR_TYPE__ int
8628// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
8629// X86_64-NETBSD:#define __WINT_TYPE__ int
8630// X86_64-NETBSD:#define __WINT_WIDTH__ 32
8631// X86_64-NETBSD:#define __amd64 1
8632// X86_64-NETBSD:#define __amd64__ 1
8633// X86_64-NETBSD:#define __x86_64 1
8634// X86_64-NETBSD:#define __x86_64__ 1
8635//
James Y Knightc97efa42016-02-11 16:51:29 +00008636// 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 +00008637//
8638// PS4:#define _LP64 1
8639// PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8640// PS4:#define __CHAR16_TYPE__ unsigned short
8641// PS4:#define __CHAR32_TYPE__ unsigned int
8642// PS4:#define __CHAR_BIT__ 8
8643// PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8644// PS4:#define __DBL_DIG__ 15
8645// PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
8646// PS4:#define __DBL_HAS_DENORM__ 1
8647// PS4:#define __DBL_HAS_INFINITY__ 1
8648// PS4:#define __DBL_HAS_QUIET_NAN__ 1
8649// PS4:#define __DBL_MANT_DIG__ 53
8650// PS4:#define __DBL_MAX_10_EXP__ 308
8651// PS4:#define __DBL_MAX_EXP__ 1024
8652// PS4:#define __DBL_MAX__ 1.7976931348623157e+308
8653// PS4:#define __DBL_MIN_10_EXP__ (-307)
8654// PS4:#define __DBL_MIN_EXP__ (-1021)
8655// PS4:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008656// PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008657// PS4:#define __ELF__ 1
8658// PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8659// PS4:#define __FLT_DIG__ 6
8660// PS4:#define __FLT_EPSILON__ 1.19209290e-7F
8661// PS4:#define __FLT_EVAL_METHOD__ 0
8662// PS4:#define __FLT_HAS_DENORM__ 1
8663// PS4:#define __FLT_HAS_INFINITY__ 1
8664// PS4:#define __FLT_HAS_QUIET_NAN__ 1
8665// PS4:#define __FLT_MANT_DIG__ 24
8666// PS4:#define __FLT_MAX_10_EXP__ 38
8667// PS4:#define __FLT_MAX_EXP__ 128
8668// PS4:#define __FLT_MAX__ 3.40282347e+38F
8669// PS4:#define __FLT_MIN_10_EXP__ (-37)
8670// PS4:#define __FLT_MIN_EXP__ (-125)
8671// PS4:#define __FLT_MIN__ 1.17549435e-38F
8672// PS4:#define __FLT_RADIX__ 2
8673// PS4:#define __FreeBSD__ 9
8674// PS4:#define __FreeBSD_cc_version 900001
8675// PS4:#define __INT16_TYPE__ short
8676// PS4:#define __INT32_TYPE__ int
8677// PS4:#define __INT64_C_SUFFIX__ L
8678// PS4:#define __INT64_TYPE__ long int
8679// PS4:#define __INT8_TYPE__ signed char
8680// PS4:#define __INTMAX_MAX__ 9223372036854775807L
8681// PS4:#define __INTMAX_TYPE__ long int
8682// PS4:#define __INTMAX_WIDTH__ 64
8683// PS4:#define __INTPTR_TYPE__ long int
8684// PS4:#define __INTPTR_WIDTH__ 64
8685// PS4:#define __INT_MAX__ 2147483647
8686// PS4:#define __KPRINTF_ATTRIBUTE__ 1
8687// PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8688// PS4:#define __LDBL_DIG__ 18
8689// PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8690// PS4:#define __LDBL_HAS_DENORM__ 1
8691// PS4:#define __LDBL_HAS_INFINITY__ 1
8692// PS4:#define __LDBL_HAS_QUIET_NAN__ 1
8693// PS4:#define __LDBL_MANT_DIG__ 64
8694// PS4:#define __LDBL_MAX_10_EXP__ 4932
8695// PS4:#define __LDBL_MAX_EXP__ 16384
8696// PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8697// PS4:#define __LDBL_MIN_10_EXP__ (-4931)
8698// PS4:#define __LDBL_MIN_EXP__ (-16381)
8699// PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8700// PS4:#define __LITTLE_ENDIAN__ 1
8701// PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
8702// PS4:#define __LONG_MAX__ 9223372036854775807L
8703// PS4:#define __LP64__ 1
8704// PS4:#define __MMX__ 1
8705// PS4:#define __NO_MATH_INLINES 1
Paul Robinson9d613612016-05-16 17:22:25 +00008706// PS4:#define __ORBIS__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008707// PS4:#define __POINTER_WIDTH__ 64
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008708// PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
8709// PS4:#define __PTRDIFF_TYPE__ long int
8710// PS4:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008711// PS4:#define __REGISTER_PREFIX__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008712// PS4:#define __SCHAR_MAX__ 127
8713// PS4:#define __SHRT_MAX__ 32767
8714// PS4:#define __SIG_ATOMIC_MAX__ 2147483647
8715// PS4:#define __SIG_ATOMIC_WIDTH__ 32
8716// PS4:#define __SIZEOF_DOUBLE__ 8
8717// PS4:#define __SIZEOF_FLOAT__ 4
8718// PS4:#define __SIZEOF_INT__ 4
8719// PS4:#define __SIZEOF_LONG_DOUBLE__ 16
8720// PS4:#define __SIZEOF_LONG_LONG__ 8
8721// PS4:#define __SIZEOF_LONG__ 8
8722// PS4:#define __SIZEOF_POINTER__ 8
8723// PS4:#define __SIZEOF_PTRDIFF_T__ 8
8724// PS4:#define __SIZEOF_SHORT__ 2
8725// PS4:#define __SIZEOF_SIZE_T__ 8
8726// PS4:#define __SIZEOF_WCHAR_T__ 2
8727// PS4:#define __SIZEOF_WINT_T__ 4
8728// PS4:#define __SIZE_TYPE__ long unsigned int
8729// PS4:#define __SIZE_WIDTH__ 64
8730// PS4:#define __SSE2_MATH__ 1
8731// PS4:#define __SSE2__ 1
8732// PS4:#define __SSE_MATH__ 1
8733// PS4:#define __SSE__ 1
Sunil Srivastavabf010802016-04-27 19:53:03 +00008734// PS4:#define __STDC_VERSION__ 199901L
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008735// PS4:#define __UINTMAX_TYPE__ long unsigned int
8736// PS4:#define __USER_LABEL_PREFIX__
8737// PS4:#define __WCHAR_MAX__ 65535
8738// PS4:#define __WCHAR_TYPE__ unsigned short
8739// PS4:#define __WCHAR_UNSIGNED__ 1
8740// PS4:#define __WCHAR_WIDTH__ 16
8741// PS4:#define __WINT_TYPE__ int
8742// PS4:#define __WINT_WIDTH__ 32
8743// PS4:#define __amd64 1
8744// PS4:#define __amd64__ 1
Saleem Abdulrasool56027092017-02-07 19:00:06 +00008745// PS4:#define __unix 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008746// PS4:#define __unix__ 1
8747// PS4:#define __x86_64 1
8748// PS4:#define __x86_64__ 1
Douglas Yung60fc1dd2017-02-09 00:07:38 +00008749// PS4:#define unix 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008750//
James Y Knightc97efa42016-02-11 16:51:29 +00008751// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8752// RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8753// X86-64-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00008754//
James Y Knightc97efa42016-02-11 16:51:29 +00008755// 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 +00008756// SPARCV9:#define __INT64_TYPE__ long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008757// SPARCV9:#define __INTMAX_C_SUFFIX__ L
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008758// SPARCV9:#define __INTMAX_TYPE__ long int
8759// SPARCV9:#define __INTPTR_TYPE__ long int
8760// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
8761// SPARCV9:#define __LP64__ 1
8762// SPARCV9:#define __SIZEOF_LONG__ 8
8763// SPARCV9:#define __SIZEOF_POINTER__ 8
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00008764// SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008765//
James Y Knightc97efa42016-02-11 16:51:29 +00008766// 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 +00008767// SPARC64-OBSD:#define __INT64_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008768// SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008769// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008770// SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008771// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
8772//
James Y Knightc97efa42016-02-11 16:51:29 +00008773// 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 +00008774// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
8775// KFREEBSD-DEFINE:#define __GLIBC__ 1
8776//
James Y Knightc97efa42016-02-11 16:51:29 +00008777// 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 +00008778// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
8779// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
8780//
James Y Knightc97efa42016-02-11 16:51:29 +00008781// 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 +00008782// GNUSOURCE:#define _GNU_SOURCE 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008783//
James Y Knightc97efa42016-02-11 16:51:29 +00008784// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
8785// NORTTI: #define __GXX_ABI_VERSION {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +00008786// NORTTI-NOT:#define __GXX_RTTI
James Y Knightc97efa42016-02-11 16:51:29 +00008787// NORTTI:#define __STDC__ 1
Evgeniy Stepanov94dc4c92012-04-26 12:08:09 +00008788//
James Y Knightc97efa42016-02-11 16:51:29 +00008789// 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 +00008790// ANDROID-NOT:#define __ANDROID_API__
James Y Knightc97efa42016-02-11 16:51:29 +00008791// ANDROID:#define __ANDROID__ 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008792//
Richard Smith59139022016-09-30 22:41:36 +00008793// RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
8794// I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
8795//
8796// 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
8797// X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
8798//
Stephen Hinesa89d8ff2016-11-11 01:29:39 +00008799// RUN: %clang_cc1 -triple arm-linux-androideabi20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID20 %s
8800// ANDROID20:#define __ANDROID_API__ 20
8801// ANDROID20:#define __ANDROID__ 1
8802//
Jacques Pienaard964cc22016-03-28 21:02:54 +00008803// RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
8804// LANAI: #define __lanai__ 1
8805//
Renato Golin0201a9e2016-09-22 19:28:20 +00008806// 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 +00008807// 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 +00008808// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8809// 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 +00008810// 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 +00008811// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8812// 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 +00008813// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8814// OPENBSD:#define __ELF__ 1
8815// OPENBSD:#define __INT16_TYPE__ short
8816// OPENBSD:#define __INT32_TYPE__ int
8817// OPENBSD:#define __INT64_TYPE__ long long int
8818// OPENBSD:#define __INT8_TYPE__ signed char
8819// OPENBSD:#define __INTMAX_TYPE__ long long int
8820// OPENBSD:#define __INTPTR_TYPE__ long int
8821// OPENBSD:#define __OpenBSD__ 1
8822// OPENBSD:#define __PTRDIFF_TYPE__ long int
8823// OPENBSD:#define __SIZE_TYPE__ long unsigned int
8824// OPENBSD:#define __UINT16_TYPE__ unsigned short
8825// OPENBSD:#define __UINT32_TYPE__ unsigned int
8826// OPENBSD:#define __UINT64_TYPE__ long long unsigned int
8827// OPENBSD:#define __UINT8_TYPE__ unsigned char
8828// OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
8829// OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
8830// OPENBSD:#define __WCHAR_TYPE__ int
8831// OPENBSD:#define __WINT_TYPE__ int
8832//
James Y Knightc97efa42016-02-11 16:51:29 +00008833// 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 +00008834// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008835//
James Y Knightc97efa42016-02-11 16:51:29 +00008836// 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 +00008837// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8838// XCORE:#define __LITTLE_ENDIAN__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008839// XCORE:#define __XS1B__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008840//
8841// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
8842// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00008843// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY32 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00008844//
James Y Knightc97efa42016-02-11 16:51:29 +00008845// WEBASSEMBLY32:#define _ILP32 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008846// WEBASSEMBLY32-NOT:#define _LP64
James Y Knightc97efa42016-02-11 16:51:29 +00008847// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQUIRE 2
8848// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQ_REL 4
8849// WEBASSEMBLY32-NEXT:#define __ATOMIC_CONSUME 1
8850// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELAXED 0
8851// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELEASE 3
8852// WEBASSEMBLY32-NEXT:#define __ATOMIC_SEQ_CST 5
8853// WEBASSEMBLY32-NEXT:#define __BIGGEST_ALIGNMENT__ 16
8854// WEBASSEMBLY32-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8855// WEBASSEMBLY32-NEXT:#define __CHAR16_TYPE__ unsigned short
8856// WEBASSEMBLY32-NEXT:#define __CHAR32_TYPE__ unsigned int
8857// WEBASSEMBLY32-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00008858// WEBASSEMBLY32-NOT:#define __CHAR_UNSIGNED__
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00008859// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
8860// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
8861// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
8862// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
8863// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
Dan Gohman7dee1712017-06-07 02:22:40 +00008864// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00008865// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
8866// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
8867// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
8868// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00008869// WEBASSEMBLY32-NEXT:#define __CONSTANT_CFSTRINGS__ 1
8870// WEBASSEMBLY32-NEXT:#define __DBL_DECIMAL_DIG__ 17
8871// WEBASSEMBLY32-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8872// WEBASSEMBLY32-NEXT:#define __DBL_DIG__ 15
8873// WEBASSEMBLY32-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
8874// WEBASSEMBLY32-NEXT:#define __DBL_HAS_DENORM__ 1
8875// WEBASSEMBLY32-NEXT:#define __DBL_HAS_INFINITY__ 1
8876// WEBASSEMBLY32-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
8877// WEBASSEMBLY32-NEXT:#define __DBL_MANT_DIG__ 53
8878// WEBASSEMBLY32-NEXT:#define __DBL_MAX_10_EXP__ 308
8879// WEBASSEMBLY32-NEXT:#define __DBL_MAX_EXP__ 1024
8880// WEBASSEMBLY32-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
8881// WEBASSEMBLY32-NEXT:#define __DBL_MIN_10_EXP__ (-307)
8882// WEBASSEMBLY32-NEXT:#define __DBL_MIN_EXP__ (-1021)
8883// WEBASSEMBLY32-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
8884// WEBASSEMBLY32-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00008885// WEBASSEMBLY32-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00008886// WEBASSEMBLY32-NEXT:#define __FINITE_MATH_ONLY__ 0
8887// WEBASSEMBLY32-NEXT:#define __FLT_DECIMAL_DIG__ 9
8888// WEBASSEMBLY32-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8889// WEBASSEMBLY32-NEXT:#define __FLT_DIG__ 6
8890// WEBASSEMBLY32-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
8891// WEBASSEMBLY32-NEXT:#define __FLT_EVAL_METHOD__ 0
8892// WEBASSEMBLY32-NEXT:#define __FLT_HAS_DENORM__ 1
8893// WEBASSEMBLY32-NEXT:#define __FLT_HAS_INFINITY__ 1
8894// WEBASSEMBLY32-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
8895// WEBASSEMBLY32-NEXT:#define __FLT_MANT_DIG__ 24
8896// WEBASSEMBLY32-NEXT:#define __FLT_MAX_10_EXP__ 38
8897// WEBASSEMBLY32-NEXT:#define __FLT_MAX_EXP__ 128
8898// WEBASSEMBLY32-NEXT:#define __FLT_MAX__ 3.40282347e+38F
8899// WEBASSEMBLY32-NEXT:#define __FLT_MIN_10_EXP__ (-37)
8900// WEBASSEMBLY32-NEXT:#define __FLT_MIN_EXP__ (-125)
8901// WEBASSEMBLY32-NEXT:#define __FLT_MIN__ 1.17549435e-38F
8902// WEBASSEMBLY32-NEXT:#define __FLT_RADIX__ 2
8903// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8904// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8905// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8906// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8907// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
Dan Gohman7dee1712017-06-07 02:22:40 +00008908// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00008909// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8910// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8911// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8912// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8913// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00008914// WEBASSEMBLY32-NEXT:#define __GNUC_MINOR__ {{.*}}
8915// WEBASSEMBLY32-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008916// WEBASSEMBLY32-NEXT:#define __GNUC_STDC_INLINE__ 1
Tim Northover25809012016-02-11 21:31:51 +00008917// WEBASSEMBLY32-NEXT:#define __GNUC__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008918// WEBASSEMBLY32-NEXT:#define __GXX_ABI_VERSION 1002
8919// WEBASSEMBLY32-NEXT:#define __ILP32__ 1
8920// WEBASSEMBLY32-NEXT:#define __INT16_C_SUFFIX__
8921// WEBASSEMBLY32-NEXT:#define __INT16_FMTd__ "hd"
8922// WEBASSEMBLY32-NEXT:#define __INT16_FMTi__ "hi"
8923// WEBASSEMBLY32-NEXT:#define __INT16_MAX__ 32767
8924// WEBASSEMBLY32-NEXT:#define __INT16_TYPE__ short
8925// WEBASSEMBLY32-NEXT:#define __INT32_C_SUFFIX__
8926// WEBASSEMBLY32-NEXT:#define __INT32_FMTd__ "d"
8927// WEBASSEMBLY32-NEXT:#define __INT32_FMTi__ "i"
8928// WEBASSEMBLY32-NEXT:#define __INT32_MAX__ 2147483647
8929// WEBASSEMBLY32-NEXT:#define __INT32_TYPE__ int
8930// WEBASSEMBLY32-NEXT:#define __INT64_C_SUFFIX__ LL
8931// WEBASSEMBLY32-NEXT:#define __INT64_FMTd__ "lld"
8932// WEBASSEMBLY32-NEXT:#define __INT64_FMTi__ "lli"
8933// WEBASSEMBLY32-NEXT:#define __INT64_MAX__ 9223372036854775807LL
8934// WEBASSEMBLY32-NEXT:#define __INT64_TYPE__ long long int
8935// WEBASSEMBLY32-NEXT:#define __INT8_C_SUFFIX__
8936// WEBASSEMBLY32-NEXT:#define __INT8_FMTd__ "hhd"
8937// WEBASSEMBLY32-NEXT:#define __INT8_FMTi__ "hhi"
8938// WEBASSEMBLY32-NEXT:#define __INT8_MAX__ 127
8939// WEBASSEMBLY32-NEXT:#define __INT8_TYPE__ signed char
8940// WEBASSEMBLY32-NEXT:#define __INTMAX_C_SUFFIX__ LL
8941// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTd__ "lld"
8942// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTi__ "lli"
8943// WEBASSEMBLY32-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
8944// WEBASSEMBLY32-NEXT:#define __INTMAX_TYPE__ long long int
8945// WEBASSEMBLY32-NEXT:#define __INTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00008946// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTd__ "d"
8947// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTi__ "i"
8948// WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647
8949// WEBASSEMBLY32-NEXT:#define __INTPTR_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00008950// WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
8951// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTd__ "hd"
8952// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTi__ "hi"
8953// WEBASSEMBLY32-NEXT:#define __INT_FAST16_MAX__ 32767
8954// WEBASSEMBLY32-NEXT:#define __INT_FAST16_TYPE__ short
8955// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTd__ "d"
8956// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTi__ "i"
8957// WEBASSEMBLY32-NEXT:#define __INT_FAST32_MAX__ 2147483647
8958// WEBASSEMBLY32-NEXT:#define __INT_FAST32_TYPE__ int
8959// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTd__ "lld"
8960// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTi__ "lli"
8961// WEBASSEMBLY32-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
8962// WEBASSEMBLY32-NEXT:#define __INT_FAST64_TYPE__ long long int
8963// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTd__ "hhd"
8964// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTi__ "hhi"
8965// WEBASSEMBLY32-NEXT:#define __INT_FAST8_MAX__ 127
8966// WEBASSEMBLY32-NEXT:#define __INT_FAST8_TYPE__ signed char
8967// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTd__ "hd"
8968// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTi__ "hi"
8969// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_MAX__ 32767
8970// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_TYPE__ short
8971// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTd__ "d"
8972// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTi__ "i"
8973// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_MAX__ 2147483647
8974// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_TYPE__ int
8975// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTd__ "lld"
8976// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTi__ "lli"
8977// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8978// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_TYPE__ long long int
8979// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
8980// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
8981// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_MAX__ 127
8982// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_TYPE__ signed char
8983// WEBASSEMBLY32-NEXT:#define __INT_MAX__ 2147483647
8984// WEBASSEMBLY32-NEXT:#define __LDBL_DECIMAL_DIG__ 36
8985// WEBASSEMBLY32-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
8986// WEBASSEMBLY32-NEXT:#define __LDBL_DIG__ 33
8987// WEBASSEMBLY32-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
8988// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_DENORM__ 1
8989// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_INFINITY__ 1
8990// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
8991// WEBASSEMBLY32-NEXT:#define __LDBL_MANT_DIG__ 113
8992// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_10_EXP__ 4932
8993// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_EXP__ 16384
8994// WEBASSEMBLY32-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
8995// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
8996// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_EXP__ (-16381)
8997// WEBASSEMBLY32-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
8998// WEBASSEMBLY32-NEXT:#define __LITTLE_ENDIAN__ 1
8999// WEBASSEMBLY32-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9000// WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
Dan Gohmanc2853072015-09-03 22:51:53 +00009001// WEBASSEMBLY32-NOT:#define __LP64__
James Y Knightc97efa42016-02-11 16:51:29 +00009002// WEBASSEMBLY32-NEXT:#define __NO_INLINE__ 1
Alex Lorenz41d13152017-01-20 16:48:25 +00009003// WEBASSEMBLY32-NEXT:#define __OBJC_BOOL_IS_BOOL 0
James Y Knightc97efa42016-02-11 16:51:29 +00009004// WEBASSEMBLY32-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9005// WEBASSEMBLY32-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9006// WEBASSEMBLY32-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9007// WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
9008// WEBASSEMBLY32-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
Derek Schuffacdc8e62016-09-01 22:38:37 +00009009// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTd__ "d"
9010// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTi__ "i"
9011// WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647
9012// WEBASSEMBLY32-NEXT:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00009013// WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
Dan Gohmanc2853072015-09-03 22:51:53 +00009014// WEBASSEMBLY32-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009015// WEBASSEMBLY32-NEXT:#define __SCHAR_MAX__ 127
9016// WEBASSEMBLY32-NEXT:#define __SHRT_MAX__ 32767
9017// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
9018// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
9019// WEBASSEMBLY32-NEXT:#define __SIZEOF_DOUBLE__ 8
9020// WEBASSEMBLY32-NEXT:#define __SIZEOF_FLOAT__ 4
9021// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT128__ 16
9022// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT__ 4
9023// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9024// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_LONG__ 8
9025// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
9026// WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
9027// WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
9028// WEBASSEMBLY32-NEXT:#define __SIZEOF_SHORT__ 2
9029// WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
9030// WEBASSEMBLY32-NEXT:#define __SIZEOF_WCHAR_T__ 4
9031// WEBASSEMBLY32-NEXT:#define __SIZEOF_WINT_T__ 4
Derek Schuffacdc8e62016-09-01 22:38:37 +00009032// WEBASSEMBLY32-NEXT:#define __SIZE_FMTX__ "X"
9033// WEBASSEMBLY32-NEXT:#define __SIZE_FMTo__ "o"
9034// WEBASSEMBLY32-NEXT:#define __SIZE_FMTu__ "u"
9035// WEBASSEMBLY32-NEXT:#define __SIZE_FMTx__ "x"
9036// WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295U
9037// WEBASSEMBLY32-NEXT:#define __SIZE_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00009038// WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
9039// WEBASSEMBLY32-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009040// WEBASSEMBLY32-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9041// WEBASSEMBLY32-NOT:#define __STDC_NO_ATOMICS__
9042// WEBASSEMBLY32-NOT:#define __STDC_NO_COMPLEX__
9043// WEBASSEMBLY32-NOT:#define __STDC_NO_VLA__
9044// WEBASSEMBLY32-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009045// WEBASSEMBLY32-NEXT:#define __STDC_UTF_16__ 1
9046// WEBASSEMBLY32-NEXT:#define __STDC_UTF_32__ 1
9047// WEBASSEMBLY32-NEXT:#define __STDC_VERSION__ 201112L
9048// WEBASSEMBLY32-NEXT:#define __STDC__ 1
9049// WEBASSEMBLY32-NEXT:#define __UINT16_C_SUFFIX__
9050// WEBASSEMBLY32-NEXT:#define __UINT16_FMTX__ "hX"
9051// WEBASSEMBLY32-NEXT:#define __UINT16_FMTo__ "ho"
9052// WEBASSEMBLY32-NEXT:#define __UINT16_FMTu__ "hu"
9053// WEBASSEMBLY32-NEXT:#define __UINT16_FMTx__ "hx"
9054// WEBASSEMBLY32-NEXT:#define __UINT16_MAX__ 65535
9055// WEBASSEMBLY32-NEXT:#define __UINT16_TYPE__ unsigned short
9056// WEBASSEMBLY32-NEXT:#define __UINT32_C_SUFFIX__ U
9057// WEBASSEMBLY32-NEXT:#define __UINT32_FMTX__ "X"
9058// WEBASSEMBLY32-NEXT:#define __UINT32_FMTo__ "o"
9059// WEBASSEMBLY32-NEXT:#define __UINT32_FMTu__ "u"
9060// WEBASSEMBLY32-NEXT:#define __UINT32_FMTx__ "x"
9061// WEBASSEMBLY32-NEXT:#define __UINT32_MAX__ 4294967295U
9062// WEBASSEMBLY32-NEXT:#define __UINT32_TYPE__ unsigned int
9063// WEBASSEMBLY32-NEXT:#define __UINT64_C_SUFFIX__ ULL
9064// WEBASSEMBLY32-NEXT:#define __UINT64_FMTX__ "llX"
9065// WEBASSEMBLY32-NEXT:#define __UINT64_FMTo__ "llo"
9066// WEBASSEMBLY32-NEXT:#define __UINT64_FMTu__ "llu"
9067// WEBASSEMBLY32-NEXT:#define __UINT64_FMTx__ "llx"
9068// WEBASSEMBLY32-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9069// WEBASSEMBLY32-NEXT:#define __UINT64_TYPE__ long long unsigned int
9070// WEBASSEMBLY32-NEXT:#define __UINT8_C_SUFFIX__
9071// WEBASSEMBLY32-NEXT:#define __UINT8_FMTX__ "hhX"
9072// WEBASSEMBLY32-NEXT:#define __UINT8_FMTo__ "hho"
9073// WEBASSEMBLY32-NEXT:#define __UINT8_FMTu__ "hhu"
9074// WEBASSEMBLY32-NEXT:#define __UINT8_FMTx__ "hhx"
9075// WEBASSEMBLY32-NEXT:#define __UINT8_MAX__ 255
9076// WEBASSEMBLY32-NEXT:#define __UINT8_TYPE__ unsigned char
9077// WEBASSEMBLY32-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9078// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTX__ "llX"
9079// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTo__ "llo"
9080// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTu__ "llu"
9081// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTx__ "llx"
9082// WEBASSEMBLY32-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9083// WEBASSEMBLY32-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9084// WEBASSEMBLY32-NEXT:#define __UINTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00009085// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTX__ "X"
9086// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTo__ "o"
9087// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTu__ "u"
9088// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTx__ "x"
9089// WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295U
9090// WEBASSEMBLY32-NEXT:#define __UINTPTR_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00009091// WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
9092// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9093// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9094// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9095// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9096// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_MAX__ 65535
9097// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9098// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTX__ "X"
9099// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTo__ "o"
9100// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTu__ "u"
9101// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTx__ "x"
9102// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9103// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9104// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9105// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9106// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9107// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9108// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9109// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9110// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9111// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9112// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9113// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9114// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_MAX__ 255
9115// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9116// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9117// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9118// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9119// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9120// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_MAX__ 65535
9121// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9122// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9123// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9124// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9125// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9126// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9127// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9128// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9129// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9130// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9131// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9132// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9133// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9134// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9135// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9136// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9137// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9138// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_MAX__ 255
9139// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9140// WEBASSEMBLY32-NEXT:#define __USER_LABEL_PREFIX__
9141// WEBASSEMBLY32-NEXT:#define __VERSION__ "{{.*}}"
9142// WEBASSEMBLY32-NEXT:#define __WCHAR_MAX__ 2147483647
9143// WEBASSEMBLY32-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009144// WEBASSEMBLY32-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009145// WEBASSEMBLY32-NEXT:#define __WCHAR_WIDTH__ 32
9146// WEBASSEMBLY32-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009147// WEBASSEMBLY32-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009148// WEBASSEMBLY32-NEXT:#define __WINT_WIDTH__ 32
9149// WEBASSEMBLY32-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009150// WEBASSEMBLY32-NEXT:#define __clang_major__ {{.*}}
9151// WEBASSEMBLY32-NEXT:#define __clang_minor__ {{.*}}
9152// WEBASSEMBLY32-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009153// WEBASSEMBLY32-NEXT:#define __clang_version__ "{{.*}}"
9154// WEBASSEMBLY32-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009155// WEBASSEMBLY32-NOT:#define __wasm_simd128__
9156// WEBASSEMBLY32-NOT:#define __wasm_simd256__
9157// WEBASSEMBLY32-NOT:#define __wasm_simd512__
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009158// WEBASSEMBLY32-NOT:#define __unix
Dan Gohmanc2853072015-09-03 22:51:53 +00009159// WEBASSEMBLY32-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009160// WEBASSEMBLY32-NEXT:#define __wasm 1
9161// WEBASSEMBLY32-NEXT:#define __wasm32 1
9162// WEBASSEMBLY32-NEXT:#define __wasm32__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009163// WEBASSEMBLY32-NOT:#define __wasm64
9164// WEBASSEMBLY32-NOT:#define __wasm64__
James Y Knightc97efa42016-02-11 16:51:29 +00009165// WEBASSEMBLY32-NEXT:#define __wasm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009166//
9167// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
9168// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00009169// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY64 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00009170//
9171// WEBASSEMBLY64-NOT:#define _ILP32
James Y Knightc97efa42016-02-11 16:51:29 +00009172// WEBASSEMBLY64:#define _LP64 1
9173// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQUIRE 2
9174// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQ_REL 4
9175// WEBASSEMBLY64-NEXT:#define __ATOMIC_CONSUME 1
9176// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELAXED 0
9177// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELEASE 3
9178// WEBASSEMBLY64-NEXT:#define __ATOMIC_SEQ_CST 5
9179// WEBASSEMBLY64-NEXT:#define __BIGGEST_ALIGNMENT__ 16
9180// WEBASSEMBLY64-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9181// WEBASSEMBLY64-NEXT:#define __CHAR16_TYPE__ unsigned short
9182// WEBASSEMBLY64-NEXT:#define __CHAR32_TYPE__ unsigned int
9183// WEBASSEMBLY64-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00009184// WEBASSEMBLY64-NOT:#define __CHAR_UNSIGNED__
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009185// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9186// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9187// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9188// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9189// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9190// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9191// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9192// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9193// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9194// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00009195// WEBASSEMBLY64-NEXT:#define __CONSTANT_CFSTRINGS__ 1
9196// WEBASSEMBLY64-NEXT:#define __DBL_DECIMAL_DIG__ 17
9197// WEBASSEMBLY64-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9198// WEBASSEMBLY64-NEXT:#define __DBL_DIG__ 15
9199// WEBASSEMBLY64-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
9200// WEBASSEMBLY64-NEXT:#define __DBL_HAS_DENORM__ 1
9201// WEBASSEMBLY64-NEXT:#define __DBL_HAS_INFINITY__ 1
9202// WEBASSEMBLY64-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
9203// WEBASSEMBLY64-NEXT:#define __DBL_MANT_DIG__ 53
9204// WEBASSEMBLY64-NEXT:#define __DBL_MAX_10_EXP__ 308
9205// WEBASSEMBLY64-NEXT:#define __DBL_MAX_EXP__ 1024
9206// WEBASSEMBLY64-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
9207// WEBASSEMBLY64-NEXT:#define __DBL_MIN_10_EXP__ (-307)
9208// WEBASSEMBLY64-NEXT:#define __DBL_MIN_EXP__ (-1021)
9209// WEBASSEMBLY64-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
9210// WEBASSEMBLY64-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00009211// WEBASSEMBLY64-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00009212// WEBASSEMBLY64-NEXT:#define __FINITE_MATH_ONLY__ 0
9213// WEBASSEMBLY64-NEXT:#define __FLT_DECIMAL_DIG__ 9
9214// WEBASSEMBLY64-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9215// WEBASSEMBLY64-NEXT:#define __FLT_DIG__ 6
9216// WEBASSEMBLY64-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
9217// WEBASSEMBLY64-NEXT:#define __FLT_EVAL_METHOD__ 0
9218// WEBASSEMBLY64-NEXT:#define __FLT_HAS_DENORM__ 1
9219// WEBASSEMBLY64-NEXT:#define __FLT_HAS_INFINITY__ 1
9220// WEBASSEMBLY64-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
9221// WEBASSEMBLY64-NEXT:#define __FLT_MANT_DIG__ 24
9222// WEBASSEMBLY64-NEXT:#define __FLT_MAX_10_EXP__ 38
9223// WEBASSEMBLY64-NEXT:#define __FLT_MAX_EXP__ 128
9224// WEBASSEMBLY64-NEXT:#define __FLT_MAX__ 3.40282347e+38F
9225// WEBASSEMBLY64-NEXT:#define __FLT_MIN_10_EXP__ (-37)
9226// WEBASSEMBLY64-NEXT:#define __FLT_MIN_EXP__ (-125)
9227// WEBASSEMBLY64-NEXT:#define __FLT_MIN__ 1.17549435e-38F
9228// WEBASSEMBLY64-NEXT:#define __FLT_RADIX__ 2
9229// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9230// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9231// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9232// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9233// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9234// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9235// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9236// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9237// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9238// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9239// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00009240// WEBASSEMBLY64-NEXT:#define __GNUC_MINOR__ {{.*}}
9241// WEBASSEMBLY64-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009242// WEBASSEMBLY64-NEXT:#define __GNUC_STDC_INLINE__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009243// WEBASSEMBLY64-NEXT:#define __GNUC__ {{.}}
James Y Knightc97efa42016-02-11 16:51:29 +00009244// WEBASSEMBLY64-NEXT:#define __GXX_ABI_VERSION 1002
Dan Gohmanc2853072015-09-03 22:51:53 +00009245// WEBASSEMBLY64-NOT:#define __ILP32__
James Y Knightc97efa42016-02-11 16:51:29 +00009246// WEBASSEMBLY64-NEXT:#define __INT16_C_SUFFIX__
9247// WEBASSEMBLY64-NEXT:#define __INT16_FMTd__ "hd"
9248// WEBASSEMBLY64-NEXT:#define __INT16_FMTi__ "hi"
9249// WEBASSEMBLY64-NEXT:#define __INT16_MAX__ 32767
9250// WEBASSEMBLY64-NEXT:#define __INT16_TYPE__ short
9251// WEBASSEMBLY64-NEXT:#define __INT32_C_SUFFIX__
9252// WEBASSEMBLY64-NEXT:#define __INT32_FMTd__ "d"
9253// WEBASSEMBLY64-NEXT:#define __INT32_FMTi__ "i"
9254// WEBASSEMBLY64-NEXT:#define __INT32_MAX__ 2147483647
9255// WEBASSEMBLY64-NEXT:#define __INT32_TYPE__ int
9256// WEBASSEMBLY64-NEXT:#define __INT64_C_SUFFIX__ LL
9257// WEBASSEMBLY64-NEXT:#define __INT64_FMTd__ "lld"
9258// WEBASSEMBLY64-NEXT:#define __INT64_FMTi__ "lli"
9259// WEBASSEMBLY64-NEXT:#define __INT64_MAX__ 9223372036854775807LL
9260// WEBASSEMBLY64-NEXT:#define __INT64_TYPE__ long long int
9261// WEBASSEMBLY64-NEXT:#define __INT8_C_SUFFIX__
9262// WEBASSEMBLY64-NEXT:#define __INT8_FMTd__ "hhd"
9263// WEBASSEMBLY64-NEXT:#define __INT8_FMTi__ "hhi"
9264// WEBASSEMBLY64-NEXT:#define __INT8_MAX__ 127
9265// WEBASSEMBLY64-NEXT:#define __INT8_TYPE__ signed char
9266// WEBASSEMBLY64-NEXT:#define __INTMAX_C_SUFFIX__ LL
9267// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTd__ "lld"
9268// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTi__ "lli"
9269// WEBASSEMBLY64-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
9270// WEBASSEMBLY64-NEXT:#define __INTMAX_TYPE__ long long int
9271// WEBASSEMBLY64-NEXT:#define __INTMAX_WIDTH__ 64
9272// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTd__ "ld"
9273// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTi__ "li"
9274// WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
9275// WEBASSEMBLY64-NEXT:#define __INTPTR_TYPE__ long int
9276// WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
9277// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTd__ "hd"
9278// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTi__ "hi"
9279// WEBASSEMBLY64-NEXT:#define __INT_FAST16_MAX__ 32767
9280// WEBASSEMBLY64-NEXT:#define __INT_FAST16_TYPE__ short
9281// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTd__ "d"
9282// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTi__ "i"
9283// WEBASSEMBLY64-NEXT:#define __INT_FAST32_MAX__ 2147483647
9284// WEBASSEMBLY64-NEXT:#define __INT_FAST32_TYPE__ int
9285// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTd__ "lld"
9286// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTi__ "lli"
9287// WEBASSEMBLY64-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
9288// WEBASSEMBLY64-NEXT:#define __INT_FAST64_TYPE__ long long int
9289// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTd__ "hhd"
9290// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTi__ "hhi"
9291// WEBASSEMBLY64-NEXT:#define __INT_FAST8_MAX__ 127
9292// WEBASSEMBLY64-NEXT:#define __INT_FAST8_TYPE__ signed char
9293// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTd__ "hd"
9294// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTi__ "hi"
9295// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_MAX__ 32767
9296// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_TYPE__ short
9297// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTd__ "d"
9298// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTi__ "i"
9299// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_MAX__ 2147483647
9300// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_TYPE__ int
9301// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTd__ "lld"
9302// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTi__ "lli"
9303// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9304// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_TYPE__ long long int
9305// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9306// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9307// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_MAX__ 127
9308// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_TYPE__ signed char
9309// WEBASSEMBLY64-NEXT:#define __INT_MAX__ 2147483647
9310// WEBASSEMBLY64-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9311// WEBASSEMBLY64-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9312// WEBASSEMBLY64-NEXT:#define __LDBL_DIG__ 33
9313// WEBASSEMBLY64-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9314// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_DENORM__ 1
9315// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_INFINITY__ 1
9316// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9317// WEBASSEMBLY64-NEXT:#define __LDBL_MANT_DIG__ 113
9318// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9319// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_EXP__ 16384
9320// WEBASSEMBLY64-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9321// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9322// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9323// WEBASSEMBLY64-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9324// WEBASSEMBLY64-NEXT:#define __LITTLE_ENDIAN__ 1
9325// WEBASSEMBLY64-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9326// WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
9327// WEBASSEMBLY64-NEXT:#define __LP64__ 1
9328// WEBASSEMBLY64-NEXT:#define __NO_INLINE__ 1
Alex Lorenz41d13152017-01-20 16:48:25 +00009329// WEBASSEMBLY64-NEXT:#define __OBJC_BOOL_IS_BOOL 0
James Y Knightc97efa42016-02-11 16:51:29 +00009330// WEBASSEMBLY64-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9331// WEBASSEMBLY64-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9332// WEBASSEMBLY64-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9333// WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
9334// WEBASSEMBLY64-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
9335// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTd__ "ld"
9336// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTi__ "li"
9337// WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
9338// WEBASSEMBLY64-NEXT:#define __PTRDIFF_TYPE__ long int
9339// WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
Dan Gohmanc2853072015-09-03 22:51:53 +00009340// WEBASSEMBLY64-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009341// WEBASSEMBLY64-NEXT:#define __SCHAR_MAX__ 127
9342// WEBASSEMBLY64-NEXT:#define __SHRT_MAX__ 32767
9343// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
9344// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
9345// WEBASSEMBLY64-NEXT:#define __SIZEOF_DOUBLE__ 8
9346// WEBASSEMBLY64-NEXT:#define __SIZEOF_FLOAT__ 4
9347// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT128__ 16
9348// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT__ 4
9349// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9350// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_LONG__ 8
9351// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
9352// WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
9353// WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
9354// WEBASSEMBLY64-NEXT:#define __SIZEOF_SHORT__ 2
9355// WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
9356// WEBASSEMBLY64-NEXT:#define __SIZEOF_WCHAR_T__ 4
9357// WEBASSEMBLY64-NEXT:#define __SIZEOF_WINT_T__ 4
9358// WEBASSEMBLY64-NEXT:#define __SIZE_FMTX__ "lX"
9359// WEBASSEMBLY64-NEXT:#define __SIZE_FMTo__ "lo"
9360// WEBASSEMBLY64-NEXT:#define __SIZE_FMTu__ "lu"
9361// WEBASSEMBLY64-NEXT:#define __SIZE_FMTx__ "lx"
9362// WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
9363// WEBASSEMBLY64-NEXT:#define __SIZE_TYPE__ long unsigned int
9364// WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
9365// WEBASSEMBLY64-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009366// WEBASSEMBLY64-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9367// WEBASSEMBLY64-NOT:#define __STDC_NO_ATOMICS__
9368// WEBASSEMBLY64-NOT:#define __STDC_NO_COMPLEX__
9369// WEBASSEMBLY64-NOT:#define __STDC_NO_VLA__
9370// WEBASSEMBLY64-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009371// WEBASSEMBLY64-NEXT:#define __STDC_UTF_16__ 1
9372// WEBASSEMBLY64-NEXT:#define __STDC_UTF_32__ 1
9373// WEBASSEMBLY64-NEXT:#define __STDC_VERSION__ 201112L
9374// WEBASSEMBLY64-NEXT:#define __STDC__ 1
9375// WEBASSEMBLY64-NEXT:#define __UINT16_C_SUFFIX__
9376// WEBASSEMBLY64-NEXT:#define __UINT16_FMTX__ "hX"
9377// WEBASSEMBLY64-NEXT:#define __UINT16_FMTo__ "ho"
9378// WEBASSEMBLY64-NEXT:#define __UINT16_FMTu__ "hu"
9379// WEBASSEMBLY64-NEXT:#define __UINT16_FMTx__ "hx"
9380// WEBASSEMBLY64-NEXT:#define __UINT16_MAX__ 65535
9381// WEBASSEMBLY64-NEXT:#define __UINT16_TYPE__ unsigned short
9382// WEBASSEMBLY64-NEXT:#define __UINT32_C_SUFFIX__ U
9383// WEBASSEMBLY64-NEXT:#define __UINT32_FMTX__ "X"
9384// WEBASSEMBLY64-NEXT:#define __UINT32_FMTo__ "o"
9385// WEBASSEMBLY64-NEXT:#define __UINT32_FMTu__ "u"
9386// WEBASSEMBLY64-NEXT:#define __UINT32_FMTx__ "x"
9387// WEBASSEMBLY64-NEXT:#define __UINT32_MAX__ 4294967295U
9388// WEBASSEMBLY64-NEXT:#define __UINT32_TYPE__ unsigned int
9389// WEBASSEMBLY64-NEXT:#define __UINT64_C_SUFFIX__ ULL
9390// WEBASSEMBLY64-NEXT:#define __UINT64_FMTX__ "llX"
9391// WEBASSEMBLY64-NEXT:#define __UINT64_FMTo__ "llo"
9392// WEBASSEMBLY64-NEXT:#define __UINT64_FMTu__ "llu"
9393// WEBASSEMBLY64-NEXT:#define __UINT64_FMTx__ "llx"
9394// WEBASSEMBLY64-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9395// WEBASSEMBLY64-NEXT:#define __UINT64_TYPE__ long long unsigned int
9396// WEBASSEMBLY64-NEXT:#define __UINT8_C_SUFFIX__
9397// WEBASSEMBLY64-NEXT:#define __UINT8_FMTX__ "hhX"
9398// WEBASSEMBLY64-NEXT:#define __UINT8_FMTo__ "hho"
9399// WEBASSEMBLY64-NEXT:#define __UINT8_FMTu__ "hhu"
9400// WEBASSEMBLY64-NEXT:#define __UINT8_FMTx__ "hhx"
9401// WEBASSEMBLY64-NEXT:#define __UINT8_MAX__ 255
9402// WEBASSEMBLY64-NEXT:#define __UINT8_TYPE__ unsigned char
9403// WEBASSEMBLY64-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9404// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTX__ "llX"
9405// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTo__ "llo"
9406// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTu__ "llu"
9407// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTx__ "llx"
9408// WEBASSEMBLY64-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9409// WEBASSEMBLY64-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9410// WEBASSEMBLY64-NEXT:#define __UINTMAX_WIDTH__ 64
9411// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTX__ "lX"
9412// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTo__ "lo"
9413// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTu__ "lu"
9414// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTx__ "lx"
9415// WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
9416// WEBASSEMBLY64-NEXT:#define __UINTPTR_TYPE__ long unsigned int
9417// WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
9418// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9419// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9420// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9421// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9422// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_MAX__ 65535
9423// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9424// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTX__ "X"
9425// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTo__ "o"
9426// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTu__ "u"
9427// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTx__ "x"
9428// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9429// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9430// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9431// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9432// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9433// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9434// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9435// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9436// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9437// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9438// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9439// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9440// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_MAX__ 255
9441// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9442// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9443// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9444// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9445// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9446// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_MAX__ 65535
9447// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9448// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9449// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9450// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9451// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9452// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9453// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9454// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9455// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9456// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9457// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9458// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9459// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9460// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9461// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9462// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9463// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9464// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_MAX__ 255
9465// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9466// WEBASSEMBLY64-NEXT:#define __USER_LABEL_PREFIX__
9467// WEBASSEMBLY64-NEXT:#define __VERSION__ "{{.*}}"
9468// WEBASSEMBLY64-NEXT:#define __WCHAR_MAX__ 2147483647
9469// WEBASSEMBLY64-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009470// WEBASSEMBLY64-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009471// WEBASSEMBLY64-NEXT:#define __WCHAR_WIDTH__ 32
9472// WEBASSEMBLY64-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009473// WEBASSEMBLY64-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009474// WEBASSEMBLY64-NEXT:#define __WINT_WIDTH__ 32
9475// WEBASSEMBLY64-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009476// WEBASSEMBLY64-NEXT:#define __clang_major__ {{.*}}
9477// WEBASSEMBLY64-NEXT:#define __clang_minor__ {{.*}}
9478// WEBASSEMBLY64-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009479// WEBASSEMBLY64-NEXT:#define __clang_version__ "{{.*}}"
9480// WEBASSEMBLY64-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009481// WEBASSEMBLY64-NOT:#define __wasm_simd128__
9482// WEBASSEMBLY64-NOT:#define __wasm_simd256__
9483// WEBASSEMBLY64-NOT:#define __wasm_simd512__
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009484// WEBASSEMBLY64-NOT:#define __unix
Dan Gohmanc2853072015-09-03 22:51:53 +00009485// WEBASSEMBLY64-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009486// WEBASSEMBLY64-NEXT:#define __wasm 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009487// WEBASSEMBLY64-NOT:#define __wasm32
9488// WEBASSEMBLY64-NOT:#define __wasm32__
James Y Knightc97efa42016-02-11 16:51:29 +00009489// WEBASSEMBLY64-NEXT:#define __wasm64 1
9490// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
9491// WEBASSEMBLY64-NEXT:#define __wasm__ 1
Saleem Abdulrasool16fcf0a2016-02-26 16:34:01 +00009492
9493// RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
9494// CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
9495
9496// RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
9497// CYGWIN-X64: #define __USER_LABEL_PREFIX__
9498
Dylan McKay924fa3a2017-01-05 05:20:27 +00009499// RUN: %clang_cc1 -E -dM -ffreestanding -triple=avr \
9500// RUN: < /dev/null \
9501// RUN: | FileCheck -match-full-lines -check-prefix=AVR %s
9502//
9503// AVR:#define __ATOMIC_ACQUIRE 2
9504// AVR:#define __ATOMIC_ACQ_REL 4
9505// AVR:#define __ATOMIC_CONSUME 1
9506// AVR:#define __ATOMIC_RELAXED 0
9507// AVR:#define __ATOMIC_RELEASE 3
9508// AVR:#define __ATOMIC_SEQ_CST 5
9509// AVR:#define __AVR__ 1
9510// AVR:#define __BIGGEST_ALIGNMENT__ 1
9511// AVR:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9512// AVR:#define __CHAR16_TYPE__ unsigned int
9513// AVR:#define __CHAR32_TYPE__ long unsigned int
9514// AVR:#define __CHAR_BIT__ 8
9515// AVR:#define __DBL_DECIMAL_DIG__ 9
9516// AVR:#define __DBL_DENORM_MIN__ 1.40129846e-45
9517// AVR:#define __DBL_DIG__ 6
9518// AVR:#define __DBL_EPSILON__ 1.19209290e-7
9519// AVR:#define __DBL_HAS_DENORM__ 1
9520// AVR:#define __DBL_HAS_INFINITY__ 1
9521// AVR:#define __DBL_HAS_QUIET_NAN__ 1
9522// AVR:#define __DBL_MANT_DIG__ 24
9523// AVR:#define __DBL_MAX_10_EXP__ 38
9524// AVR:#define __DBL_MAX_EXP__ 128
9525// AVR:#define __DBL_MAX__ 3.40282347e+38
9526// AVR:#define __DBL_MIN_10_EXP__ (-37)
9527// AVR:#define __DBL_MIN_EXP__ (-125)
9528// AVR:#define __DBL_MIN__ 1.17549435e-38
9529// AVR:#define __FINITE_MATH_ONLY__ 0
9530// AVR:#define __FLT_DECIMAL_DIG__ 9
9531// AVR:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9532// AVR:#define __FLT_DIG__ 6
9533// AVR:#define __FLT_EPSILON__ 1.19209290e-7F
9534// AVR:#define __FLT_EVAL_METHOD__ 0
9535// AVR:#define __FLT_HAS_DENORM__ 1
9536// AVR:#define __FLT_HAS_INFINITY__ 1
9537// AVR:#define __FLT_HAS_QUIET_NAN__ 1
9538// AVR:#define __FLT_MANT_DIG__ 24
9539// AVR:#define __FLT_MAX_10_EXP__ 38
9540// AVR:#define __FLT_MAX_EXP__ 128
9541// AVR:#define __FLT_MAX__ 3.40282347e+38F
9542// AVR:#define __FLT_MIN_10_EXP__ (-37)
9543// AVR:#define __FLT_MIN_EXP__ (-125)
9544// AVR:#define __FLT_MIN__ 1.17549435e-38F
9545// AVR:#define __FLT_RADIX__ 2
9546// AVR:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1
9547// AVR:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
9548// AVR:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
9549// AVR:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1
9550// AVR:#define __GCC_ATOMIC_INT_LOCK_FREE 1
9551// AVR:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
9552// AVR:#define __GCC_ATOMIC_LONG_LOCK_FREE 1
9553// AVR:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1
9554// AVR:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1
9555// AVR:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9556// AVR:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
9557// AVR:#define __GXX_ABI_VERSION 1002
9558// AVR:#define __INT16_C_SUFFIX__
9559// AVR:#define __INT16_MAX__ 32767
9560// AVR:#define __INT16_TYPE__ short
9561// AVR:#define __INT32_C_SUFFIX__ L
9562// AVR:#define __INT32_MAX__ 2147483647L
9563// AVR:#define __INT32_TYPE__ long int
9564// AVR:#define __INT64_C_SUFFIX__ LL
9565// AVR:#define __INT64_MAX__ 9223372036854775807LL
9566// AVR:#define __INT64_TYPE__ long long int
9567// AVR:#define __INT8_C_SUFFIX__
9568// AVR:#define __INT8_MAX__ 127
9569// AVR:#define __INT8_TYPE__ signed char
9570// AVR:#define __INTMAX_C_SUFFIX__ LL
9571// AVR:#define __INTMAX_MAX__ 9223372036854775807LL
9572// AVR:#define __INTMAX_TYPE__ long long int
9573// AVR:#define __INTPTR_MAX__ 32767
9574// AVR:#define __INTPTR_TYPE__ int
9575// AVR:#define __INT_FAST16_MAX__ 32767
9576// AVR:#define __INT_FAST16_TYPE__ int
9577// AVR:#define __INT_FAST32_MAX__ 2147483647L
9578// AVR:#define __INT_FAST32_TYPE__ long int
9579// AVR:#define __INT_FAST64_MAX__ 9223372036854775807LL
9580// AVR:#define __INT_FAST64_TYPE__ long long int
9581// AVR:#define __INT_FAST8_MAX__ 127
9582// AVR:#define __INT_FAST8_TYPE__ signed char
9583// AVR:#define __INT_LEAST16_MAX__ 32767
9584// AVR:#define __INT_LEAST16_TYPE__ int
9585// AVR:#define __INT_LEAST32_MAX__ 2147483647L
9586// AVR:#define __INT_LEAST32_TYPE__ long int
9587// AVR:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9588// AVR:#define __INT_LEAST64_TYPE__ long long int
9589// AVR:#define __INT_LEAST8_MAX__ 127
9590// AVR:#define __INT_LEAST8_TYPE__ signed char
9591// AVR:#define __INT_MAX__ 32767
9592// AVR:#define __LDBL_DECIMAL_DIG__ 9
9593// AVR:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
9594// AVR:#define __LDBL_DIG__ 6
9595// AVR:#define __LDBL_EPSILON__ 1.19209290e-7L
9596// AVR:#define __LDBL_HAS_DENORM__ 1
9597// AVR:#define __LDBL_HAS_INFINITY__ 1
9598// AVR:#define __LDBL_HAS_QUIET_NAN__ 1
9599// AVR:#define __LDBL_MANT_DIG__ 24
9600// AVR:#define __LDBL_MAX_10_EXP__ 38
9601// AVR:#define __LDBL_MAX_EXP__ 128
9602// AVR:#define __LDBL_MAX__ 3.40282347e+38L
9603// AVR:#define __LDBL_MIN_10_EXP__ (-37)
9604// AVR:#define __LDBL_MIN_EXP__ (-125)
9605// AVR:#define __LDBL_MIN__ 1.17549435e-38L
9606// AVR:#define __LONG_LONG_MAX__ 9223372036854775807LL
9607// AVR:#define __LONG_MAX__ 2147483647L
9608// AVR:#define __NO_INLINE__ 1
9609// AVR:#define __ORDER_BIG_ENDIAN__ 4321
9610// AVR:#define __ORDER_LITTLE_ENDIAN__ 1234
9611// AVR:#define __ORDER_PDP_ENDIAN__ 3412
9612// AVR:#define __PRAGMA_REDEFINE_EXTNAME 1
9613// AVR:#define __PTRDIFF_MAX__ 32767
9614// AVR:#define __PTRDIFF_TYPE__ int
9615// AVR:#define __SCHAR_MAX__ 127
9616// AVR:#define __SHRT_MAX__ 32767
9617// AVR:#define __SIG_ATOMIC_MAX__ 127
9618// AVR:#define __SIG_ATOMIC_WIDTH__ 8
9619// AVR:#define __SIZEOF_DOUBLE__ 4
9620// AVR:#define __SIZEOF_FLOAT__ 4
9621// AVR:#define __SIZEOF_INT__ 2
9622// AVR:#define __SIZEOF_LONG_DOUBLE__ 4
9623// AVR:#define __SIZEOF_LONG_LONG__ 8
9624// AVR:#define __SIZEOF_LONG__ 4
9625// AVR:#define __SIZEOF_POINTER__ 2
9626// AVR:#define __SIZEOF_PTRDIFF_T__ 2
9627// AVR:#define __SIZEOF_SHORT__ 2
9628// AVR:#define __SIZEOF_SIZE_T__ 2
9629// AVR:#define __SIZEOF_WCHAR_T__ 2
9630// AVR:#define __SIZEOF_WINT_T__ 2
9631// AVR:#define __SIZE_MAX__ 65535U
9632// AVR:#define __SIZE_TYPE__ unsigned int
9633// AVR:#define __STDC__ 1
9634// AVR:#define __UINT16_MAX__ 65535U
9635// AVR:#define __UINT16_TYPE__ unsigned short
9636// AVR:#define __UINT32_C_SUFFIX__ UL
9637// AVR:#define __UINT32_MAX__ 4294967295UL
9638// AVR:#define __UINT32_TYPE__ long unsigned int
9639// AVR:#define __UINT64_C_SUFFIX__ ULL
9640// AVR:#define __UINT64_MAX__ 18446744073709551615ULL
9641// AVR:#define __UINT64_TYPE__ long long unsigned int
9642// AVR:#define __UINT8_C_SUFFIX__
9643// AVR:#define __UINT8_MAX__ 255
9644// AVR:#define __UINT8_TYPE__ unsigned char
9645// AVR:#define __UINTMAX_C_SUFFIX__ ULL
9646// AVR:#define __UINTMAX_MAX__ 18446744073709551615ULL
9647// AVR:#define __UINTMAX_TYPE__ long long unsigned int
9648// AVR:#define __UINTPTR_MAX__ 65535U
9649// AVR:#define __UINTPTR_TYPE__ unsigned int
9650// AVR:#define __UINT_FAST16_MAX__ 65535U
9651// AVR:#define __UINT_FAST16_TYPE__ unsigned int
9652// AVR:#define __UINT_FAST32_MAX__ 4294967295UL
9653// AVR:#define __UINT_FAST32_TYPE__ long unsigned int
9654// AVR:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9655// AVR:#define __UINT_FAST64_TYPE__ long long unsigned int
9656// AVR:#define __UINT_FAST8_MAX__ 255
9657// AVR:#define __UINT_FAST8_TYPE__ unsigned char
9658// AVR:#define __UINT_LEAST16_MAX__ 65535U
9659// AVR:#define __UINT_LEAST16_TYPE__ unsigned int
9660// AVR:#define __UINT_LEAST32_MAX__ 4294967295UL
9661// AVR:#define __UINT_LEAST32_TYPE__ long unsigned int
9662// AVR:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9663// AVR:#define __UINT_LEAST64_TYPE__ long long unsigned int
9664// AVR:#define __UINT_LEAST8_MAX__ 255
9665// AVR:#define __UINT_LEAST8_TYPE__ unsigned char
9666// AVR:#define __USER_LABEL_PREFIX__
9667// AVR:#define __WCHAR_MAX__ 32767
9668// AVR:#define __WCHAR_TYPE__ int
9669// AVR:#define __WINT_TYPE__ int
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009670
9671
9672// RUN: %clang_cc1 -E -dM -ffreestanding \
9673// RUN: -triple i686-windows-msvc -fms-compatibility < /dev/null \
9674// RUN: | FileCheck -match-full-lines -check-prefix MSVC-X32 %s
9675
9676// RUN: %clang_cc1 -E -dM -ffreestanding \
9677// RUN: -triple x86_64-windows-msvc -fms-compatibility < /dev/null \
9678// RUN: | FileCheck -match-full-lines -check-prefix MSVC-X64 %s
9679
9680// MSVC-X32:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9681// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9682// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9683// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9684// MSVC-X32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9685// MSVC-X32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9686// MSVC-X32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9687// MSVC-X32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9688// MSVC-X32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9689// MSVC-X32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
9690// MSVC-X32-NOT:#define __GCC_ATOMIC{{.*}}
9691
9692// MSVC-X64:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9693// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9694// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9695// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9696// MSVC-X64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9697// MSVC-X64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9698// MSVC-X64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9699// MSVC-X64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9700// MSVC-X64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9701// MSVC-X64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
9702// MSVC-X86-NOT:#define __GCC_ATOMIC{{.*}}
Duncan P. N. Exon Smith16b1ac92017-04-27 01:47:22 +00009703
9704// RUN: %clang_cc1 -E -dM -ffreestanding \
9705// RUN: -triple=aarch64-apple-ios9 < /dev/null \
9706// RUN: | FileCheck -check-prefix=DARWIN %s
9707// RUN: %clang_cc1 -E -dM -ffreestanding \
9708// RUN: -triple=aarch64-apple-macosx10.12 < /dev/null \
9709// RUN: | FileCheck -check-prefix=DARWIN %s
9710
9711// DARWIN:#define __STDC_NO_THREADS__ 1