blob: 1fe239cdaed5d9f341bb03b16bdf7d91adf050ab [file] [log] [blame]
James Y Knightc97efa42016-02-11 16:51:29 +00001// RUN: %clang_cc1 -E -dM -x assembler-with-cpp < /dev/null | FileCheck -match-full-lines -check-prefix ASM %s
Chris Lattnere963d092009-10-29 04:55:36 +00002//
3// ASM:#define __ASSEMBLER__ 1
4//
Eli Bendersky8ea8b342015-09-01 18:56:19 +00005//
James Y Knightc97efa42016-02-11 16:51:29 +00006// RUN: %clang_cc1 -fblocks -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix BLOCKS %s
Chris Lattnere963d092009-10-29 04:55:36 +00007//
8// BLOCKS:#define __BLOCKS__ 1
9// BLOCKS:#define __block __attribute__((__blocks__(byref)))
10//
Richard Smith0a715422013-05-07 19:32:56 +000011//
James Y Knightc97efa42016-02-11 16:51:29 +000012// RUN: %clang_cc1 -x c++ -std=c++1z -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Z %s
Richard Smithdbd4d4c2014-06-16 15:16:56 +000013//
James Y Knightc97efa42016-02-11 16:51:29 +000014// CXX1Z:#define __GNUG__ {{.*}}
Richard Smithdbd4d4c2014-06-16 15:16:56 +000015// CXX1Z:#define __GXX_EXPERIMENTAL_CXX0X__ 1
16// CXX1Z:#define __GXX_RTTI 1
17// CXX1Z:#define __GXX_WEAK__ 1
18// CXX1Z:#define __cplusplus 201406L
19// CXX1Z:#define __private_extern__ extern
20//
21//
James Y Knightc97efa42016-02-11 16:51:29 +000022// RUN: %clang_cc1 -x c++ -std=c++1y -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX1Y %s
Richard Smith0a715422013-05-07 19:32:56 +000023//
James Y Knightc97efa42016-02-11 16:51:29 +000024// CXX1Y:#define __GNUG__ {{.*}}
Richard Smith0a715422013-05-07 19:32:56 +000025// CXX1Y:#define __GXX_EXPERIMENTAL_CXX0X__ 1
26// CXX1Y:#define __GXX_RTTI 1
27// CXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +000028// CXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +000029// CXX1Y:#define __private_extern__ extern
30//
31//
James Y Knightc97efa42016-02-11 16:51:29 +000032// RUN: %clang_cc1 -x c++ -std=c++11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX11 %s
Chris Lattnere963d092009-10-29 04:55:36 +000033//
James Y Knightc97efa42016-02-11 16:51:29 +000034// CXX11:#define __GNUG__ {{.*}}
Richard Smith89645bc2013-01-02 12:01:23 +000035// CXX11:#define __GXX_EXPERIMENTAL_CXX0X__ 1
36// CXX11:#define __GXX_RTTI 1
37// CXX11:#define __GXX_WEAK__ 1
38// CXX11:#define __cplusplus 201103L
39// CXX11:#define __private_extern__ extern
Chris Lattnere963d092009-10-29 04:55:36 +000040//
41//
James Y Knightc97efa42016-02-11 16:51:29 +000042// RUN: %clang_cc1 -x c++ -std=c++98 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX98 %s
Chris Lattnere963d092009-10-29 04:55:36 +000043//
James Y Knightc97efa42016-02-11 16:51:29 +000044// CXX98:#define __GNUG__ {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +000045// CXX98:#define __GXX_RTTI 1
Chris Lattnere963d092009-10-29 04:55:36 +000046// CXX98:#define __GXX_WEAK__ 1
47// CXX98:#define __cplusplus 199711L
48// CXX98:#define __private_extern__ extern
49//
50//
James Y Knightc97efa42016-02-11 16:51:29 +000051// RUN: %clang_cc1 -fdeprecated-macro -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix DEPRECATED %s
Chandler Carruth30483fb2011-04-23 19:48:40 +000052//
53// DEPRECATED:#define __DEPRECATED 1
54//
55//
James Y Knightc97efa42016-02-11 16:51:29 +000056// RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C99 %s
Chris Lattnere963d092009-10-29 04:55:36 +000057//
58// C99:#define __STDC_VERSION__ 199901L
59// C99:#define __STRICT_ANSI__ 1
Yunzhong Gaobacf7e42016-01-26 20:15:02 +000060// C99-NOT: __GXX_EXPERIMENTAL_CXX0X__
61// C99-NOT: __GXX_RTTI
62// C99-NOT: __GXX_WEAK__
63// C99-NOT: __cplusplus
Chris Lattnere963d092009-10-29 04:55:36 +000064//
65//
James Y Knightc97efa42016-02-11 16:51:29 +000066// RUN: %clang_cc1 -std=c11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
Ed Schoutend0621462013-09-29 07:54:52 +000067//
68// C11:#define __STDC_UTF_16__ 1
69// C11:#define __STDC_UTF_32__ 1
70// C11:#define __STDC_VERSION__ 201112L
71// C11:#define __STRICT_ANSI__ 1
Yunzhong Gaobacf7e42016-01-26 20:15:02 +000072// C11-NOT: __GXX_EXPERIMENTAL_CXX0X__
73// C11-NOT: __GXX_RTTI
74// C11-NOT: __GXX_WEAK__
75// C11-NOT: __cplusplus
Ed Schoutend0621462013-09-29 07:54:52 +000076//
77//
James Y Knightc97efa42016-02-11 16:51:29 +000078// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix COMMON %s
Chris Lattnere963d092009-10-29 04:55:36 +000079//
80// COMMON:#define __CONSTANT_CFSTRINGS__ 1
81// COMMON:#define __FINITE_MATH_ONLY__ 0
James Y Knightc97efa42016-02-11 16:51:29 +000082// COMMON:#define __GNUC_MINOR__ {{.*}}
83// COMMON:#define __GNUC_PATCHLEVEL__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +000084// COMMON:#define __GNUC_STDC_INLINE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +000085// COMMON:#define __GNUC__ {{.*}}
86// COMMON:#define __GXX_ABI_VERSION {{.*}}
Dylan Noblesmith673728f2012-07-27 18:34:31 +000087// COMMON:#define __ORDER_BIG_ENDIAN__ 4321
88// COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234
89// COMMON:#define __ORDER_PDP_ENDIAN__ 3412
Chris Lattnere963d092009-10-29 04:55:36 +000090// COMMON:#define __STDC_HOSTED__ 1
Chris Lattnere963d092009-10-29 04:55:36 +000091// COMMON:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +000092// COMMON:#define __VERSION__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +000093// COMMON:#define __clang__ 1
Daniel Dunbard7e887f2010-06-25 23:34:47 +000094// COMMON:#define __clang_major__ {{[0-9]+}}
95// COMMON:#define __clang_minor__ {{[0-9]+}}
96// COMMON:#define __clang_patchlevel__ {{[0-9]+}}
James Y Knightc97efa42016-02-11 16:51:29 +000097// COMMON:#define __clang_version__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +000098// COMMON:#define __llvm__ 1
99//
Sunil Srivastavabf010802016-04-27 19:53:03 +0000100// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-win32 < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
101// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
102// RUN: %clang_cc1 -E -dM -triple=x86_64-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
103// 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 +0000104//
Sunil Srivastavabf010802016-04-27 19:53:03 +0000105// C-DEFAULT:#define __STDC_VERSION__ 201112L
106//
James Y Knightc97efa42016-02-11 16:51:29 +0000107// RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix FREESTANDING %s
Chris Lattnere963d092009-10-29 04:55:36 +0000108// FREESTANDING:#define __STDC_HOSTED__ 0
Richard Smithd106a982012-05-03 22:18:20 +0000109//
110//
James Y Knightc97efa42016-02-11 16:51:29 +0000111// 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 +0000112//
James Y Knightc97efa42016-02-11 16:51:29 +0000113// GXX1Z:#define __GNUG__ {{.*}}
Richard Smithdbd4d4c2014-06-16 15:16:56 +0000114// GXX1Z:#define __GXX_WEAK__ 1
115// GXX1Z:#define __cplusplus 201406L
116// GXX1Z:#define __private_extern__ extern
117//
118//
James Y Knightc97efa42016-02-11 16:51:29 +0000119// 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 +0000120//
James Y Knightc97efa42016-02-11 16:51:29 +0000121// GXX1Y:#define __GNUG__ {{.*}}
Richard Smith0a715422013-05-07 19:32:56 +0000122// GXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +0000123// GXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +0000124// GXX1Y:#define __private_extern__ extern
125//
126//
James Y Knightc97efa42016-02-11 16:51:29 +0000127// 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 +0000128//
James Y Knightc97efa42016-02-11 16:51:29 +0000129// GXX11:#define __GNUG__ {{.*}}
Richard Smithd106a982012-05-03 22:18:20 +0000130// GXX11:#define __GXX_WEAK__ 1
131// GXX11:#define __cplusplus 201103L
132// GXX11:#define __private_extern__ extern
133//
134//
James Y Knightc97efa42016-02-11 16:51:29 +0000135// 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 +0000136//
James Y Knightc97efa42016-02-11 16:51:29 +0000137// GXX98:#define __GNUG__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +0000138// GXX98:#define __GXX_WEAK__ 1
Richard Smithd106a982012-05-03 22:18:20 +0000139// GXX98:#define __cplusplus 199711L
Chris Lattnere963d092009-10-29 04:55:36 +0000140// GXX98:#define __private_extern__ extern
141//
142//
James Y Knightc97efa42016-02-11 16:51:29 +0000143// 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 +0000144//
145// C94:#define __STDC_VERSION__ 199409L
146//
147//
James Y Knightc97efa42016-02-11 16:51:29 +0000148// 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 +0000149//
150// MSEXT-NOT:#define __STDC__
Douglas Gregor7617cb82010-08-06 12:37:52 +0000151// MSEXT:#define _INTEGRAL_MAX_BITS 64
Hans Wennborg4c02be32013-05-02 13:12:32 +0000152// MSEXT-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
153// MSEXT-NOT:#define _WCHAR_T_DEFINED 1
154//
155//
James Y Knightc97efa42016-02-11 16:51:29 +0000156// 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 +0000157//
158// MSEXT-CXX:#define _NATIVE_WCHAR_T_DEFINED 1
159// MSEXT-CXX:#define _WCHAR_T_DEFINED 1
David Majnemerc19475a2015-07-15 17:32:34 +0000160// MSEXT-CXX:#define __BOOL_DEFINED 1
Hans Wennborg4c02be32013-05-02 13:12:32 +0000161//
162//
James Y Knightc97efa42016-02-11 16:51:29 +0000163// 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 +0000164//
165// MSEXT-CXX-NOWCHAR-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
166// MSEXT-CXX-NOWCHAR-NOT:#define _WCHAR_T_DEFINED 1
David Majnemerc19475a2015-07-15 17:32:34 +0000167// MSEXT-CXX-NOWCHAR:#define __BOOL_DEFINED 1
Chris Lattnere963d092009-10-29 04:55:36 +0000168//
169//
James Y Knightc97efa42016-02-11 16:51:29 +0000170// 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 +0000171//
172// OBJC:#define OBJC_NEW_PROPERTIES 1
Daniel Dunbar4656c532009-11-17 07:07:28 +0000173// OBJC:#define __NEXT_RUNTIME__ 1
Chris Lattnere963d092009-10-29 04:55:36 +0000174// OBJC:#define __OBJC__ 1
175//
Daniel Dunbar4656c532009-11-17 07:07:28 +0000176//
James Y Knightc97efa42016-02-11 16:51:29 +0000177// 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 +0000178//
179// OBJCGC:#define __OBJC_GC__ 1
180//
181//
James Y Knightc97efa42016-02-11 16:51:29 +0000182// 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 +0000183//
184// NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
185// NONFRAGILE:#define __OBJC2__ 1
186//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000187//
James Y Knightc97efa42016-02-11 16:51:29 +0000188// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O0 %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000189//
190// O0:#define __NO_INLINE__ 1
191// O0-NOT:#define __OPTIMIZE_SIZE__
192// O0-NOT:#define __OPTIMIZE__
193//
194//
James Y Knightc97efa42016-02-11 16:51:29 +0000195// 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 +0000196//
197// NO_INLINE:#define __NO_INLINE__ 1
198// NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
James Y Knightc97efa42016-02-11 16:51:29 +0000199// NO_INLINE:#define __OPTIMIZE__ 1
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000200//
201//
James Y Knightc97efa42016-02-11 16:51:29 +0000202// RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O1 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000203//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000204// O1-NOT:#define __OPTIMIZE_SIZE__
Chris Lattnere963d092009-10-29 04:55:36 +0000205// O1:#define __OPTIMIZE__ 1
206//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000207//
James Y Knightc97efa42016-02-11 16:51:29 +0000208// RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Os %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000209//
210// Os:#define __OPTIMIZE_SIZE__ 1
211// Os:#define __OPTIMIZE__ 1
212//
213//
James Y Knightc97efa42016-02-11 16:51:29 +0000214// RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Oz %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000215//
216// Oz:#define __OPTIMIZE_SIZE__ 1
217// Oz:#define __OPTIMIZE__ 1
218//
219//
James Y Knightc97efa42016-02-11 16:51:29 +0000220// RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix PASCAL %s
Chris Lattnere963d092009-10-29 04:55:36 +0000221//
222// PASCAL:#define __PASCAL_STRINGS__ 1
223//
224//
James Y Knightc97efa42016-02-11 16:51:29 +0000225// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix SCHAR %s
Chris Lattnere963d092009-10-29 04:55:36 +0000226//
227// SCHAR:#define __STDC__ 1
228// SCHAR-NOT:#define __UNSIGNED_CHAR__
229// SCHAR:#define __clang__ 1
230//
James Y Knightc97efa42016-02-11 16:51:29 +0000231// RUN: %clang_cc1 -E -dM -fshort-wchar < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
NAKAMURA Takumi210fbcd2014-02-25 00:30:14 +0000232// wchar_t is u16 for targeting Win32.
233// FIXME: Implement and check x86_64-cygwin.
James Y Knightc97efa42016-02-11 16:51:29 +0000234// 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 +0000235//
236// SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000237// SHORTWCHAR: #define __WCHAR_MAX__ 65535
Eli Friedman865afc92010-08-03 17:34:19 +0000238// SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
239// SHORTWCHAR: #define __WCHAR_WIDTH__ 16
240//
James Y Knightc97efa42016-02-11 16:51:29 +0000241// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=i686-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
242// 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 +0000243//
244// SHORTWCHAR2: #define __SIZEOF_WCHAR_T__ 4
245// SHORTWCHAR2: #define __WCHAR_WIDTH__ 32
246// Other definitions vary from platform to platform
Christian Pirker227f5ed2014-03-24 13:57:21 +0000247
James Y Knightc97efa42016-02-11 16:51:29 +0000248// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
249// 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 +0000250// 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 +0000251//
252// AARCH64:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000253// AARCH64-NOT:#define __AARCH64EB__ 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000254// AARCH64:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000255// AARCH64-NOT:#define __AARCH_BIG_ENDIAN 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000256// AARCH64:#define __ARM_64BIT_STATE 1
257// AARCH64:#define __ARM_ARCH 8
258// AARCH64:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000259// AARCH64-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000260// AARCH64:#define __BIGGEST_ALIGNMENT__ 16
Kevin Qinad64f6d2014-02-24 02:45:03 +0000261// AARCH64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
262// AARCH64:#define __CHAR16_TYPE__ unsigned short
263// AARCH64:#define __CHAR32_TYPE__ unsigned int
264// AARCH64:#define __CHAR_BIT__ 8
265// AARCH64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
266// AARCH64:#define __DBL_DIG__ 15
267// AARCH64:#define __DBL_EPSILON__ 2.2204460492503131e-16
268// AARCH64:#define __DBL_HAS_DENORM__ 1
269// AARCH64:#define __DBL_HAS_INFINITY__ 1
270// AARCH64:#define __DBL_HAS_QUIET_NAN__ 1
271// AARCH64:#define __DBL_MANT_DIG__ 53
272// AARCH64:#define __DBL_MAX_10_EXP__ 308
273// AARCH64:#define __DBL_MAX_EXP__ 1024
274// AARCH64:#define __DBL_MAX__ 1.7976931348623157e+308
275// AARCH64:#define __DBL_MIN_10_EXP__ (-307)
276// AARCH64:#define __DBL_MIN_EXP__ (-1021)
277// AARCH64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000278// AARCH64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Kevin Qinad64f6d2014-02-24 02:45:03 +0000279// AARCH64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
280// AARCH64:#define __FLT_DIG__ 6
281// AARCH64:#define __FLT_EPSILON__ 1.19209290e-7F
282// AARCH64:#define __FLT_EVAL_METHOD__ 0
283// AARCH64:#define __FLT_HAS_DENORM__ 1
284// AARCH64:#define __FLT_HAS_INFINITY__ 1
285// AARCH64:#define __FLT_HAS_QUIET_NAN__ 1
286// AARCH64:#define __FLT_MANT_DIG__ 24
287// AARCH64:#define __FLT_MAX_10_EXP__ 38
288// AARCH64:#define __FLT_MAX_EXP__ 128
289// AARCH64:#define __FLT_MAX__ 3.40282347e+38F
290// AARCH64:#define __FLT_MIN_10_EXP__ (-37)
291// AARCH64:#define __FLT_MIN_EXP__ (-125)
292// AARCH64:#define __FLT_MIN__ 1.17549435e-38F
293// AARCH64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000294// AARCH64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000295// AARCH64:#define __INT16_FMTd__ "hd"
296// AARCH64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000297// AARCH64:#define __INT16_MAX__ 32767
Kevin Qinad64f6d2014-02-24 02:45:03 +0000298// AARCH64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000299// AARCH64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000300// AARCH64:#define __INT32_FMTd__ "d"
301// AARCH64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000302// AARCH64:#define __INT32_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000303// AARCH64:#define __INT32_TYPE__ int
304// AARCH64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000305// AARCH64:#define __INT64_FMTd__ "ld"
306// AARCH64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000307// AARCH64:#define __INT64_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000308// AARCH64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000309// AARCH64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000310// AARCH64:#define __INT8_FMTd__ "hhd"
311// AARCH64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000312// AARCH64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000313// AARCH64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000314// AARCH64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000315// AARCH64:#define __INTMAX_FMTd__ "ld"
316// AARCH64:#define __INTMAX_FMTi__ "li"
Kevin Qinad64f6d2014-02-24 02:45:03 +0000317// AARCH64:#define __INTMAX_MAX__ 9223372036854775807L
318// AARCH64:#define __INTMAX_TYPE__ long int
319// AARCH64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000320// AARCH64:#define __INTPTR_FMTd__ "ld"
321// AARCH64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000322// AARCH64:#define __INTPTR_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000323// AARCH64:#define __INTPTR_TYPE__ long int
324// AARCH64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000325// AARCH64:#define __INT_FAST16_FMTd__ "hd"
326// AARCH64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000327// AARCH64:#define __INT_FAST16_MAX__ 32767
328// AARCH64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000329// AARCH64:#define __INT_FAST32_FMTd__ "d"
330// AARCH64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000331// AARCH64:#define __INT_FAST32_MAX__ 2147483647
332// AARCH64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000333// AARCH64:#define __INT_FAST64_FMTd__ "ld"
334// AARCH64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000335// AARCH64:#define __INT_FAST64_MAX__ 9223372036854775807L
336// AARCH64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000337// AARCH64:#define __INT_FAST8_FMTd__ "hhd"
338// AARCH64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000339// AARCH64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000340// AARCH64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000341// AARCH64:#define __INT_LEAST16_FMTd__ "hd"
342// AARCH64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000343// AARCH64:#define __INT_LEAST16_MAX__ 32767
344// AARCH64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000345// AARCH64:#define __INT_LEAST32_FMTd__ "d"
346// AARCH64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000347// AARCH64:#define __INT_LEAST32_MAX__ 2147483647
348// AARCH64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000349// AARCH64:#define __INT_LEAST64_FMTd__ "ld"
350// AARCH64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000351// AARCH64:#define __INT_LEAST64_MAX__ 9223372036854775807L
352// AARCH64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000353// AARCH64:#define __INT_LEAST8_FMTd__ "hhd"
354// AARCH64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000355// AARCH64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000356// AARCH64:#define __INT_LEAST8_TYPE__ signed char
Kevin Qinad64f6d2014-02-24 02:45:03 +0000357// AARCH64:#define __INT_MAX__ 2147483647
358// AARCH64:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
359// AARCH64:#define __LDBL_DIG__ 33
360// AARCH64:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
361// AARCH64:#define __LDBL_HAS_DENORM__ 1
362// AARCH64:#define __LDBL_HAS_INFINITY__ 1
363// AARCH64:#define __LDBL_HAS_QUIET_NAN__ 1
364// AARCH64:#define __LDBL_MANT_DIG__ 113
365// AARCH64:#define __LDBL_MAX_10_EXP__ 4932
366// AARCH64:#define __LDBL_MAX_EXP__ 16384
367// AARCH64:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
368// AARCH64:#define __LDBL_MIN_10_EXP__ (-4931)
369// AARCH64:#define __LDBL_MIN_EXP__ (-16381)
370// AARCH64:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
371// AARCH64:#define __LONG_LONG_MAX__ 9223372036854775807LL
372// AARCH64:#define __LONG_MAX__ 9223372036854775807L
373// AARCH64:#define __LP64__ 1
374// AARCH64:#define __POINTER_WIDTH__ 64
375// AARCH64:#define __PTRDIFF_TYPE__ long int
376// AARCH64:#define __PTRDIFF_WIDTH__ 64
377// AARCH64:#define __SCHAR_MAX__ 127
378// AARCH64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000379// AARCH64:#define __SIG_ATOMIC_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000380// AARCH64:#define __SIG_ATOMIC_WIDTH__ 32
381// AARCH64:#define __SIZEOF_DOUBLE__ 8
382// AARCH64:#define __SIZEOF_FLOAT__ 4
383// AARCH64:#define __SIZEOF_INT128__ 16
384// AARCH64:#define __SIZEOF_INT__ 4
385// AARCH64:#define __SIZEOF_LONG_DOUBLE__ 16
386// AARCH64:#define __SIZEOF_LONG_LONG__ 8
387// AARCH64:#define __SIZEOF_LONG__ 8
388// AARCH64:#define __SIZEOF_POINTER__ 8
389// AARCH64:#define __SIZEOF_PTRDIFF_T__ 8
390// AARCH64:#define __SIZEOF_SHORT__ 2
391// AARCH64:#define __SIZEOF_SIZE_T__ 8
392// AARCH64:#define __SIZEOF_WCHAR_T__ 4
393// AARCH64:#define __SIZEOF_WINT_T__ 4
394// AARCH64:#define __SIZE_MAX__ 18446744073709551615UL
395// AARCH64:#define __SIZE_TYPE__ long unsigned int
396// AARCH64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +0000397// AARCH64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +0000398// AARCH64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000399// AARCH64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000400// AARCH64:#define __UINT16_TYPE__ unsigned short
401// AARCH64:#define __UINT32_C_SUFFIX__ U
402// AARCH64:#define __UINT32_MAX__ 4294967295U
403// AARCH64:#define __UINT32_TYPE__ unsigned int
404// AARCH64:#define __UINT64_C_SUFFIX__ UL
405// AARCH64:#define __UINT64_MAX__ 18446744073709551615UL
406// AARCH64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000407// AARCH64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000408// AARCH64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000409// AARCH64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000410// AARCH64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000411// AARCH64:#define __UINTMAX_MAX__ 18446744073709551615UL
Kevin Qinad64f6d2014-02-24 02:45:03 +0000412// AARCH64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000413// AARCH64:#define __UINTMAX_WIDTH__ 64
414// AARCH64:#define __UINTPTR_MAX__ 18446744073709551615UL
415// AARCH64:#define __UINTPTR_TYPE__ long unsigned int
416// AARCH64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000417// AARCH64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000418// AARCH64:#define __UINT_FAST16_TYPE__ unsigned short
419// AARCH64:#define __UINT_FAST32_MAX__ 4294967295U
420// AARCH64:#define __UINT_FAST32_TYPE__ unsigned int
421// AARCH64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
422// AARCH64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000423// AARCH64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000424// AARCH64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000425// AARCH64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000426// AARCH64:#define __UINT_LEAST16_TYPE__ unsigned short
427// AARCH64:#define __UINT_LEAST32_MAX__ 4294967295U
428// AARCH64:#define __UINT_LEAST32_TYPE__ unsigned int
429// AARCH64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
430// AARCH64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000431// AARCH64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000432// AARCH64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +0000433// AARCH64:#define __USER_LABEL_PREFIX__
Kevin Qinad64f6d2014-02-24 02:45:03 +0000434// AARCH64:#define __WCHAR_MAX__ 4294967295U
435// AARCH64:#define __WCHAR_TYPE__ unsigned int
436// AARCH64:#define __WCHAR_UNSIGNED__ 1
437// AARCH64:#define __WCHAR_WIDTH__ 32
438// AARCH64:#define __WINT_TYPE__ int
439// AARCH64:#define __WINT_WIDTH__ 32
440// AARCH64:#define __aarch64__ 1
441//
James Y Knightc97efa42016-02-11 16:51:29 +0000442// 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 +0000443//
444// AARCH64-BE:#define _LP64 1
445// AARCH64-BE:#define __AARCH64EB__ 1
446// AARCH64-BE-NOT:#define __AARCH64EL__ 1
447// AARCH64-BE:#define __AARCH_BIG_ENDIAN 1
448// AARCH64-BE:#define __ARM_64BIT_STATE 1
449// AARCH64-BE:#define __ARM_ARCH 8
450// AARCH64-BE:#define __ARM_ARCH_ISA_A64 1
451// AARCH64-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000452// AARCH64-BE:#define __BIGGEST_ALIGNMENT__ 16
Christian Pirker227f5ed2014-03-24 13:57:21 +0000453// AARCH64-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
454// AARCH64-BE:#define __CHAR16_TYPE__ unsigned short
455// AARCH64-BE:#define __CHAR32_TYPE__ unsigned int
456// AARCH64-BE:#define __CHAR_BIT__ 8
457// AARCH64-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
458// AARCH64-BE:#define __DBL_DIG__ 15
459// AARCH64-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
460// AARCH64-BE:#define __DBL_HAS_DENORM__ 1
461// AARCH64-BE:#define __DBL_HAS_INFINITY__ 1
462// AARCH64-BE:#define __DBL_HAS_QUIET_NAN__ 1
463// AARCH64-BE:#define __DBL_MANT_DIG__ 53
464// AARCH64-BE:#define __DBL_MAX_10_EXP__ 308
465// AARCH64-BE:#define __DBL_MAX_EXP__ 1024
466// AARCH64-BE:#define __DBL_MAX__ 1.7976931348623157e+308
467// AARCH64-BE:#define __DBL_MIN_10_EXP__ (-307)
468// AARCH64-BE:#define __DBL_MIN_EXP__ (-1021)
469// AARCH64-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000470// AARCH64-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000471// AARCH64-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
472// AARCH64-BE:#define __FLT_DIG__ 6
473// AARCH64-BE:#define __FLT_EPSILON__ 1.19209290e-7F
474// AARCH64-BE:#define __FLT_EVAL_METHOD__ 0
475// AARCH64-BE:#define __FLT_HAS_DENORM__ 1
476// AARCH64-BE:#define __FLT_HAS_INFINITY__ 1
477// AARCH64-BE:#define __FLT_HAS_QUIET_NAN__ 1
478// AARCH64-BE:#define __FLT_MANT_DIG__ 24
479// AARCH64-BE:#define __FLT_MAX_10_EXP__ 38
480// AARCH64-BE:#define __FLT_MAX_EXP__ 128
481// AARCH64-BE:#define __FLT_MAX__ 3.40282347e+38F
482// AARCH64-BE:#define __FLT_MIN_10_EXP__ (-37)
483// AARCH64-BE:#define __FLT_MIN_EXP__ (-125)
484// AARCH64-BE:#define __FLT_MIN__ 1.17549435e-38F
485// AARCH64-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000486// AARCH64-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000487// AARCH64-BE:#define __INT16_FMTd__ "hd"
488// AARCH64-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000489// AARCH64-BE:#define __INT16_MAX__ 32767
Christian Pirker227f5ed2014-03-24 13:57:21 +0000490// AARCH64-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000491// AARCH64-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000492// AARCH64-BE:#define __INT32_FMTd__ "d"
493// AARCH64-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000494// AARCH64-BE:#define __INT32_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000495// AARCH64-BE:#define __INT32_TYPE__ int
496// AARCH64-BE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000497// AARCH64-BE:#define __INT64_FMTd__ "ld"
498// AARCH64-BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000499// AARCH64-BE:#define __INT64_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000500// AARCH64-BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000501// AARCH64-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000502// AARCH64-BE:#define __INT8_FMTd__ "hhd"
503// AARCH64-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000504// AARCH64-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000505// AARCH64-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000506// AARCH64-BE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000507// AARCH64-BE:#define __INTMAX_FMTd__ "ld"
508// AARCH64-BE:#define __INTMAX_FMTi__ "li"
Christian Pirker227f5ed2014-03-24 13:57:21 +0000509// AARCH64-BE:#define __INTMAX_MAX__ 9223372036854775807L
510// AARCH64-BE:#define __INTMAX_TYPE__ long int
511// AARCH64-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000512// AARCH64-BE:#define __INTPTR_FMTd__ "ld"
513// AARCH64-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000514// AARCH64-BE:#define __INTPTR_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000515// AARCH64-BE:#define __INTPTR_TYPE__ long int
516// AARCH64-BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000517// AARCH64-BE:#define __INT_FAST16_FMTd__ "hd"
518// AARCH64-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000519// AARCH64-BE:#define __INT_FAST16_MAX__ 32767
520// AARCH64-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000521// AARCH64-BE:#define __INT_FAST32_FMTd__ "d"
522// AARCH64-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000523// AARCH64-BE:#define __INT_FAST32_MAX__ 2147483647
524// AARCH64-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000525// AARCH64-BE:#define __INT_FAST64_FMTd__ "ld"
526// AARCH64-BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000527// AARCH64-BE:#define __INT_FAST64_MAX__ 9223372036854775807L
528// AARCH64-BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000529// AARCH64-BE:#define __INT_FAST8_FMTd__ "hhd"
530// AARCH64-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000531// AARCH64-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000532// AARCH64-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000533// AARCH64-BE:#define __INT_LEAST16_FMTd__ "hd"
534// AARCH64-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000535// AARCH64-BE:#define __INT_LEAST16_MAX__ 32767
536// AARCH64-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000537// AARCH64-BE:#define __INT_LEAST32_FMTd__ "d"
538// AARCH64-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000539// AARCH64-BE:#define __INT_LEAST32_MAX__ 2147483647
540// AARCH64-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000541// AARCH64-BE:#define __INT_LEAST64_FMTd__ "ld"
542// AARCH64-BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000543// AARCH64-BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
544// AARCH64-BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000545// AARCH64-BE:#define __INT_LEAST8_FMTd__ "hhd"
546// AARCH64-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000547// AARCH64-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000548// AARCH64-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirker227f5ed2014-03-24 13:57:21 +0000549// AARCH64-BE:#define __INT_MAX__ 2147483647
550// AARCH64-BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
551// AARCH64-BE:#define __LDBL_DIG__ 33
552// AARCH64-BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
553// AARCH64-BE:#define __LDBL_HAS_DENORM__ 1
554// AARCH64-BE:#define __LDBL_HAS_INFINITY__ 1
555// AARCH64-BE:#define __LDBL_HAS_QUIET_NAN__ 1
556// AARCH64-BE:#define __LDBL_MANT_DIG__ 113
557// AARCH64-BE:#define __LDBL_MAX_10_EXP__ 4932
558// AARCH64-BE:#define __LDBL_MAX_EXP__ 16384
559// AARCH64-BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
560// AARCH64-BE:#define __LDBL_MIN_10_EXP__ (-4931)
561// AARCH64-BE:#define __LDBL_MIN_EXP__ (-16381)
562// AARCH64-BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
563// AARCH64-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
564// AARCH64-BE:#define __LONG_MAX__ 9223372036854775807L
565// AARCH64-BE:#define __LP64__ 1
566// AARCH64-BE:#define __POINTER_WIDTH__ 64
567// AARCH64-BE:#define __PTRDIFF_TYPE__ long int
568// AARCH64-BE:#define __PTRDIFF_WIDTH__ 64
569// AARCH64-BE:#define __SCHAR_MAX__ 127
570// AARCH64-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000571// AARCH64-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000572// AARCH64-BE:#define __SIG_ATOMIC_WIDTH__ 32
573// AARCH64-BE:#define __SIZEOF_DOUBLE__ 8
574// AARCH64-BE:#define __SIZEOF_FLOAT__ 4
575// AARCH64-BE:#define __SIZEOF_INT128__ 16
576// AARCH64-BE:#define __SIZEOF_INT__ 4
577// AARCH64-BE:#define __SIZEOF_LONG_DOUBLE__ 16
578// AARCH64-BE:#define __SIZEOF_LONG_LONG__ 8
579// AARCH64-BE:#define __SIZEOF_LONG__ 8
580// AARCH64-BE:#define __SIZEOF_POINTER__ 8
581// AARCH64-BE:#define __SIZEOF_PTRDIFF_T__ 8
582// AARCH64-BE:#define __SIZEOF_SHORT__ 2
583// AARCH64-BE:#define __SIZEOF_SIZE_T__ 8
584// AARCH64-BE:#define __SIZEOF_WCHAR_T__ 4
585// AARCH64-BE:#define __SIZEOF_WINT_T__ 4
586// AARCH64-BE:#define __SIZE_MAX__ 18446744073709551615UL
587// AARCH64-BE:#define __SIZE_TYPE__ long unsigned int
588// AARCH64-BE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000589// AARCH64-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000590// AARCH64-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000591// AARCH64-BE:#define __UINT16_TYPE__ unsigned short
592// AARCH64-BE:#define __UINT32_C_SUFFIX__ U
593// AARCH64-BE:#define __UINT32_MAX__ 4294967295U
594// AARCH64-BE:#define __UINT32_TYPE__ unsigned int
595// AARCH64-BE:#define __UINT64_C_SUFFIX__ UL
596// AARCH64-BE:#define __UINT64_MAX__ 18446744073709551615UL
597// AARCH64-BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000598// AARCH64-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000599// AARCH64-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000600// AARCH64-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000601// AARCH64-BE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000602// AARCH64-BE:#define __UINTMAX_MAX__ 18446744073709551615UL
Christian Pirker227f5ed2014-03-24 13:57:21 +0000603// AARCH64-BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000604// AARCH64-BE:#define __UINTMAX_WIDTH__ 64
605// AARCH64-BE:#define __UINTPTR_MAX__ 18446744073709551615UL
606// AARCH64-BE:#define __UINTPTR_TYPE__ long unsigned int
607// AARCH64-BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000608// AARCH64-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000609// AARCH64-BE:#define __UINT_FAST16_TYPE__ unsigned short
610// AARCH64-BE:#define __UINT_FAST32_MAX__ 4294967295U
611// AARCH64-BE:#define __UINT_FAST32_TYPE__ unsigned int
612// AARCH64-BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
613// AARCH64-BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000614// AARCH64-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000615// AARCH64-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000616// AARCH64-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000617// AARCH64-BE:#define __UINT_LEAST16_TYPE__ unsigned short
618// AARCH64-BE:#define __UINT_LEAST32_MAX__ 4294967295U
619// AARCH64-BE:#define __UINT_LEAST32_TYPE__ unsigned int
620// AARCH64-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
621// AARCH64-BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000622// AARCH64-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000623// AARCH64-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +0000624// AARCH64-BE:#define __USER_LABEL_PREFIX__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000625// AARCH64-BE:#define __WCHAR_MAX__ 4294967295U
626// AARCH64-BE:#define __WCHAR_TYPE__ unsigned int
627// AARCH64-BE:#define __WCHAR_UNSIGNED__ 1
628// AARCH64-BE:#define __WCHAR_WIDTH__ 32
629// AARCH64-BE:#define __WINT_TYPE__ int
630// AARCH64-BE:#define __WINT_WIDTH__ 32
631// AARCH64-BE:#define __aarch64__ 1
632//
James Y Knightc97efa42016-02-11 16:51:29 +0000633// 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 +0000634//
635// AARCH64-NETBSD:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000636// AARCH64-NETBSD-NOT:#define __AARCH64EB__ 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000637// AARCH64-NETBSD:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000638// AARCH64-NETBSD-NOT:#define __AARCH_BIG_ENDIAN 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000639// AARCH64-NETBSD:#define __ARM_64BIT_STATE 1
640// AARCH64-NETBSD:#define __ARM_ARCH 8
641// AARCH64-NETBSD:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000642// AARCH64-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000643// AARCH64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000644// AARCH64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
645// AARCH64-NETBSD:#define __CHAR16_TYPE__ unsigned short
646// AARCH64-NETBSD:#define __CHAR32_TYPE__ unsigned int
647// AARCH64-NETBSD:#define __CHAR_BIT__ 8
648// AARCH64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
649// AARCH64-NETBSD:#define __DBL_DIG__ 15
650// AARCH64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
651// AARCH64-NETBSD:#define __DBL_HAS_DENORM__ 1
652// AARCH64-NETBSD:#define __DBL_HAS_INFINITY__ 1
653// AARCH64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
654// AARCH64-NETBSD:#define __DBL_MANT_DIG__ 53
655// AARCH64-NETBSD:#define __DBL_MAX_10_EXP__ 308
656// AARCH64-NETBSD:#define __DBL_MAX_EXP__ 1024
657// AARCH64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
658// AARCH64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
659// AARCH64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
660// AARCH64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000661// AARCH64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000662// AARCH64-NETBSD:#define __ELF__ 1
663// AARCH64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
664// AARCH64-NETBSD:#define __FLT_DIG__ 6
665// AARCH64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
666// AARCH64-NETBSD:#define __FLT_EVAL_METHOD__ 0
667// AARCH64-NETBSD:#define __FLT_HAS_DENORM__ 1
668// AARCH64-NETBSD:#define __FLT_HAS_INFINITY__ 1
669// AARCH64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
670// AARCH64-NETBSD:#define __FLT_MANT_DIG__ 24
671// AARCH64-NETBSD:#define __FLT_MAX_10_EXP__ 38
672// AARCH64-NETBSD:#define __FLT_MAX_EXP__ 128
673// AARCH64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
674// AARCH64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
675// AARCH64-NETBSD:#define __FLT_MIN_EXP__ (-125)
676// AARCH64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
677// AARCH64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000678// AARCH64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000679// AARCH64-NETBSD:#define __INT16_FMTd__ "hd"
680// AARCH64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000681// AARCH64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000682// AARCH64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000683// AARCH64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000684// AARCH64-NETBSD:#define __INT32_FMTd__ "d"
685// AARCH64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000686// AARCH64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000687// AARCH64-NETBSD:#define __INT32_TYPE__ int
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000688// AARCH64-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000689// AARCH64-NETBSD:#define __INT64_FMTd__ "lld"
690// AARCH64-NETBSD:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +0000691// AARCH64-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000692// AARCH64-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +0000693// AARCH64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000694// AARCH64-NETBSD:#define __INT8_FMTd__ "hhd"
695// AARCH64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000696// AARCH64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000697// AARCH64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000698// AARCH64-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000699// AARCH64-NETBSD:#define __INTMAX_FMTd__ "lld"
700// AARCH64-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000701// AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
702// AARCH64-NETBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000703// AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000704// AARCH64-NETBSD:#define __INTPTR_FMTd__ "ld"
705// AARCH64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000706// AARCH64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000707// AARCH64-NETBSD:#define __INTPTR_TYPE__ long int
708// AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000709// AARCH64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
710// AARCH64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000711// AARCH64-NETBSD:#define __INT_FAST16_MAX__ 32767
712// AARCH64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000713// AARCH64-NETBSD:#define __INT_FAST32_FMTd__ "d"
714// AARCH64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000715// AARCH64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
716// AARCH64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000717// AARCH64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
718// AARCH64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000719// AARCH64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
720// AARCH64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000721// AARCH64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
722// AARCH64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000723// AARCH64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000724// AARCH64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000725// AARCH64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
726// AARCH64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000727// AARCH64-NETBSD:#define __INT_LEAST16_MAX__ 32767
728// AARCH64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000729// AARCH64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
730// AARCH64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000731// AARCH64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
732// AARCH64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000733// AARCH64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
734// AARCH64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000735// AARCH64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
736// AARCH64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000737// AARCH64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
738// AARCH64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000739// AARCH64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000740// AARCH64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000741// AARCH64-NETBSD:#define __INT_MAX__ 2147483647
742// AARCH64-NETBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
743// AARCH64-NETBSD:#define __LDBL_DIG__ 33
744// AARCH64-NETBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
745// AARCH64-NETBSD:#define __LDBL_HAS_DENORM__ 1
746// AARCH64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
747// AARCH64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
748// AARCH64-NETBSD:#define __LDBL_MANT_DIG__ 113
749// AARCH64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
750// AARCH64-NETBSD:#define __LDBL_MAX_EXP__ 16384
751// AARCH64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
752// AARCH64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
753// AARCH64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
754// AARCH64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
755// AARCH64-NETBSD:#define __LITTLE_ENDIAN__ 1
756// AARCH64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
757// AARCH64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
758// AARCH64-NETBSD:#define __LP64__ 1
759// AARCH64-NETBSD:#define __NetBSD__ 1
760// AARCH64-NETBSD:#define __POINTER_WIDTH__ 64
761// AARCH64-NETBSD:#define __PTRDIFF_TYPE__ long int
762// AARCH64-NETBSD:#define __PTRDIFF_WIDTH__ 64
763// AARCH64-NETBSD:#define __SCHAR_MAX__ 127
764// AARCH64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000765// AARCH64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000766// AARCH64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
767// AARCH64-NETBSD:#define __SIZEOF_DOUBLE__ 8
768// AARCH64-NETBSD:#define __SIZEOF_FLOAT__ 4
769// AARCH64-NETBSD:#define __SIZEOF_INT__ 4
770// AARCH64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
771// AARCH64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
772// AARCH64-NETBSD:#define __SIZEOF_LONG__ 8
773// AARCH64-NETBSD:#define __SIZEOF_POINTER__ 8
774// AARCH64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
775// AARCH64-NETBSD:#define __SIZEOF_SHORT__ 2
776// AARCH64-NETBSD:#define __SIZEOF_SIZE_T__ 8
777// AARCH64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
778// AARCH64-NETBSD:#define __SIZEOF_WINT_T__ 4
779// AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
780// AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int
781// AARCH64-NETBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000782// AARCH64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000783// AARCH64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000784// AARCH64-NETBSD:#define __UINT16_TYPE__ unsigned short
785// AARCH64-NETBSD:#define __UINT32_C_SUFFIX__ U
786// AARCH64-NETBSD:#define __UINT32_MAX__ 4294967295U
787// AARCH64-NETBSD:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +0000788// AARCH64-NETBSD:#define __UINT64_C_SUFFIX__ ULL
789// AARCH64-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
790// AARCH64-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000791// AARCH64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000792// AARCH64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000793// AARCH64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000794// AARCH64-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +0000795// AARCH64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000796// AARCH64-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000797// AARCH64-NETBSD:#define __UINTMAX_WIDTH__ 64
798// AARCH64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
799// AARCH64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
800// AARCH64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000801// AARCH64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000802// AARCH64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
803// AARCH64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
804// AARCH64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
805// AARCH64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
806// AARCH64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000807// AARCH64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000808// AARCH64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000809// AARCH64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000810// AARCH64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
811// AARCH64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
812// AARCH64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
813// AARCH64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
814// AARCH64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000815// AARCH64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000816// AARCH64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000817// AARCH64-NETBSD:#define __USER_LABEL_PREFIX__
818// AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647
819// AARCH64-NETBSD:#define __WCHAR_TYPE__ int
820// AARCH64-NETBSD:#define __WCHAR_WIDTH__ 32
821// AARCH64-NETBSD:#define __WINT_TYPE__ int
822// AARCH64-NETBSD:#define __WINT_WIDTH__ 32
823// AARCH64-NETBSD:#define __aarch64__ 1
Ed Maste6a9eda52014-11-13 16:55:42 +0000824//
James Y Knightc97efa42016-02-11 16:51:29 +0000825// 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 +0000826//
827// AARCH64-FREEBSD:#define _LP64 1
828// AARCH64-FREEBSD-NOT:#define __AARCH64EB__ 1
829// AARCH64-FREEBSD:#define __AARCH64EL__ 1
830// AARCH64-FREEBSD-NOT:#define __AARCH_BIG_ENDIAN 1
831// AARCH64-FREEBSD:#define __ARM_64BIT_STATE 1
832// AARCH64-FREEBSD:#define __ARM_ARCH 8
833// AARCH64-FREEBSD:#define __ARM_ARCH_ISA_A64 1
834// AARCH64-FREEBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000835// AARCH64-FREEBSD:#define __BIGGEST_ALIGNMENT__ 16
Ed Maste6a9eda52014-11-13 16:55:42 +0000836// AARCH64-FREEBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
837// AARCH64-FREEBSD:#define __CHAR16_TYPE__ unsigned short
838// AARCH64-FREEBSD:#define __CHAR32_TYPE__ unsigned int
839// AARCH64-FREEBSD:#define __CHAR_BIT__ 8
840// AARCH64-FREEBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
841// AARCH64-FREEBSD:#define __DBL_DIG__ 15
842// AARCH64-FREEBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
843// AARCH64-FREEBSD:#define __DBL_HAS_DENORM__ 1
844// AARCH64-FREEBSD:#define __DBL_HAS_INFINITY__ 1
845// AARCH64-FREEBSD:#define __DBL_HAS_QUIET_NAN__ 1
846// AARCH64-FREEBSD:#define __DBL_MANT_DIG__ 53
847// AARCH64-FREEBSD:#define __DBL_MAX_10_EXP__ 308
848// AARCH64-FREEBSD:#define __DBL_MAX_EXP__ 1024
849// AARCH64-FREEBSD:#define __DBL_MAX__ 1.7976931348623157e+308
850// AARCH64-FREEBSD:#define __DBL_MIN_10_EXP__ (-307)
851// AARCH64-FREEBSD:#define __DBL_MIN_EXP__ (-1021)
852// AARCH64-FREEBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000853// AARCH64-FREEBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ed Maste6a9eda52014-11-13 16:55:42 +0000854// AARCH64-FREEBSD:#define __ELF__ 1
855// AARCH64-FREEBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
856// AARCH64-FREEBSD:#define __FLT_DIG__ 6
857// AARCH64-FREEBSD:#define __FLT_EPSILON__ 1.19209290e-7F
858// AARCH64-FREEBSD:#define __FLT_EVAL_METHOD__ 0
859// AARCH64-FREEBSD:#define __FLT_HAS_DENORM__ 1
860// AARCH64-FREEBSD:#define __FLT_HAS_INFINITY__ 1
861// AARCH64-FREEBSD:#define __FLT_HAS_QUIET_NAN__ 1
862// AARCH64-FREEBSD:#define __FLT_MANT_DIG__ 24
863// AARCH64-FREEBSD:#define __FLT_MAX_10_EXP__ 38
864// AARCH64-FREEBSD:#define __FLT_MAX_EXP__ 128
865// AARCH64-FREEBSD:#define __FLT_MAX__ 3.40282347e+38F
866// AARCH64-FREEBSD:#define __FLT_MIN_10_EXP__ (-37)
867// AARCH64-FREEBSD:#define __FLT_MIN_EXP__ (-125)
868// AARCH64-FREEBSD:#define __FLT_MIN__ 1.17549435e-38F
869// AARCH64-FREEBSD:#define __FLT_RADIX__ 2
870// AARCH64-FREEBSD:#define __FreeBSD__ 11
James Y Knightc97efa42016-02-11 16:51:29 +0000871// AARCH64-FREEBSD:#define __INT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000872// AARCH64-FREEBSD:#define __INT16_FMTd__ "hd"
873// AARCH64-FREEBSD:#define __INT16_FMTi__ "hi"
874// AARCH64-FREEBSD:#define __INT16_MAX__ 32767
875// AARCH64-FREEBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000876// AARCH64-FREEBSD:#define __INT32_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000877// AARCH64-FREEBSD:#define __INT32_FMTd__ "d"
878// AARCH64-FREEBSD:#define __INT32_FMTi__ "i"
879// AARCH64-FREEBSD:#define __INT32_MAX__ 2147483647
880// AARCH64-FREEBSD:#define __INT32_TYPE__ int
881// AARCH64-FREEBSD:#define __INT64_C_SUFFIX__ L
882// AARCH64-FREEBSD:#define __INT64_FMTd__ "ld"
883// AARCH64-FREEBSD:#define __INT64_FMTi__ "li"
884// AARCH64-FREEBSD:#define __INT64_MAX__ 9223372036854775807L
885// AARCH64-FREEBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000886// AARCH64-FREEBSD:#define __INT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000887// AARCH64-FREEBSD:#define __INT8_FMTd__ "hhd"
888// AARCH64-FREEBSD:#define __INT8_FMTi__ "hhi"
889// AARCH64-FREEBSD:#define __INT8_MAX__ 127
890// AARCH64-FREEBSD:#define __INT8_TYPE__ signed char
891// AARCH64-FREEBSD:#define __INTMAX_C_SUFFIX__ L
892// AARCH64-FREEBSD:#define __INTMAX_FMTd__ "ld"
893// AARCH64-FREEBSD:#define __INTMAX_FMTi__ "li"
894// AARCH64-FREEBSD:#define __INTMAX_MAX__ 9223372036854775807L
895// AARCH64-FREEBSD:#define __INTMAX_TYPE__ long int
896// AARCH64-FREEBSD:#define __INTMAX_WIDTH__ 64
897// AARCH64-FREEBSD:#define __INTPTR_FMTd__ "ld"
898// AARCH64-FREEBSD:#define __INTPTR_FMTi__ "li"
899// AARCH64-FREEBSD:#define __INTPTR_MAX__ 9223372036854775807L
900// AARCH64-FREEBSD:#define __INTPTR_TYPE__ long int
901// AARCH64-FREEBSD:#define __INTPTR_WIDTH__ 64
902// AARCH64-FREEBSD:#define __INT_FAST16_FMTd__ "hd"
903// AARCH64-FREEBSD:#define __INT_FAST16_FMTi__ "hi"
904// AARCH64-FREEBSD:#define __INT_FAST16_MAX__ 32767
905// AARCH64-FREEBSD:#define __INT_FAST16_TYPE__ short
906// AARCH64-FREEBSD:#define __INT_FAST32_FMTd__ "d"
907// AARCH64-FREEBSD:#define __INT_FAST32_FMTi__ "i"
908// AARCH64-FREEBSD:#define __INT_FAST32_MAX__ 2147483647
909// AARCH64-FREEBSD:#define __INT_FAST32_TYPE__ int
910// AARCH64-FREEBSD:#define __INT_FAST64_FMTd__ "ld"
911// AARCH64-FREEBSD:#define __INT_FAST64_FMTi__ "li"
912// AARCH64-FREEBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
913// AARCH64-FREEBSD:#define __INT_FAST64_TYPE__ long int
914// AARCH64-FREEBSD:#define __INT_FAST8_FMTd__ "hhd"
915// AARCH64-FREEBSD:#define __INT_FAST8_FMTi__ "hhi"
916// AARCH64-FREEBSD:#define __INT_FAST8_MAX__ 127
917// AARCH64-FREEBSD:#define __INT_FAST8_TYPE__ signed char
918// AARCH64-FREEBSD:#define __INT_LEAST16_FMTd__ "hd"
919// AARCH64-FREEBSD:#define __INT_LEAST16_FMTi__ "hi"
920// AARCH64-FREEBSD:#define __INT_LEAST16_MAX__ 32767
921// AARCH64-FREEBSD:#define __INT_LEAST16_TYPE__ short
922// AARCH64-FREEBSD:#define __INT_LEAST32_FMTd__ "d"
923// AARCH64-FREEBSD:#define __INT_LEAST32_FMTi__ "i"
924// AARCH64-FREEBSD:#define __INT_LEAST32_MAX__ 2147483647
925// AARCH64-FREEBSD:#define __INT_LEAST32_TYPE__ int
926// AARCH64-FREEBSD:#define __INT_LEAST64_FMTd__ "ld"
927// AARCH64-FREEBSD:#define __INT_LEAST64_FMTi__ "li"
928// AARCH64-FREEBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
929// AARCH64-FREEBSD:#define __INT_LEAST64_TYPE__ long int
930// AARCH64-FREEBSD:#define __INT_LEAST8_FMTd__ "hhd"
931// AARCH64-FREEBSD:#define __INT_LEAST8_FMTi__ "hhi"
932// AARCH64-FREEBSD:#define __INT_LEAST8_MAX__ 127
933// AARCH64-FREEBSD:#define __INT_LEAST8_TYPE__ signed char
934// AARCH64-FREEBSD:#define __INT_MAX__ 2147483647
935// AARCH64-FREEBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
936// AARCH64-FREEBSD:#define __LDBL_DIG__ 33
937// AARCH64-FREEBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
938// AARCH64-FREEBSD:#define __LDBL_HAS_DENORM__ 1
939// AARCH64-FREEBSD:#define __LDBL_HAS_INFINITY__ 1
940// AARCH64-FREEBSD:#define __LDBL_HAS_QUIET_NAN__ 1
941// AARCH64-FREEBSD:#define __LDBL_MANT_DIG__ 113
942// AARCH64-FREEBSD:#define __LDBL_MAX_10_EXP__ 4932
943// AARCH64-FREEBSD:#define __LDBL_MAX_EXP__ 16384
944// AARCH64-FREEBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
945// AARCH64-FREEBSD:#define __LDBL_MIN_10_EXP__ (-4931)
946// AARCH64-FREEBSD:#define __LDBL_MIN_EXP__ (-16381)
947// AARCH64-FREEBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
948// AARCH64-FREEBSD:#define __LITTLE_ENDIAN__ 1
949// AARCH64-FREEBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
950// AARCH64-FREEBSD:#define __LONG_MAX__ 9223372036854775807L
951// AARCH64-FREEBSD:#define __LP64__ 1
952// AARCH64-FREEBSD:#define __POINTER_WIDTH__ 64
953// AARCH64-FREEBSD:#define __PTRDIFF_TYPE__ long int
954// AARCH64-FREEBSD:#define __PTRDIFF_WIDTH__ 64
955// AARCH64-FREEBSD:#define __SCHAR_MAX__ 127
956// AARCH64-FREEBSD:#define __SHRT_MAX__ 32767
957// AARCH64-FREEBSD:#define __SIG_ATOMIC_MAX__ 2147483647
958// AARCH64-FREEBSD:#define __SIG_ATOMIC_WIDTH__ 32
959// AARCH64-FREEBSD:#define __SIZEOF_DOUBLE__ 8
960// AARCH64-FREEBSD:#define __SIZEOF_FLOAT__ 4
961// AARCH64-FREEBSD:#define __SIZEOF_INT128__ 16
962// AARCH64-FREEBSD:#define __SIZEOF_INT__ 4
963// AARCH64-FREEBSD:#define __SIZEOF_LONG_DOUBLE__ 16
964// AARCH64-FREEBSD:#define __SIZEOF_LONG_LONG__ 8
965// AARCH64-FREEBSD:#define __SIZEOF_LONG__ 8
966// AARCH64-FREEBSD:#define __SIZEOF_POINTER__ 8
967// AARCH64-FREEBSD:#define __SIZEOF_PTRDIFF_T__ 8
968// AARCH64-FREEBSD:#define __SIZEOF_SHORT__ 2
969// AARCH64-FREEBSD:#define __SIZEOF_SIZE_T__ 8
970// AARCH64-FREEBSD:#define __SIZEOF_WCHAR_T__ 4
971// AARCH64-FREEBSD:#define __SIZEOF_WINT_T__ 4
972// AARCH64-FREEBSD:#define __SIZE_MAX__ 18446744073709551615UL
973// AARCH64-FREEBSD:#define __SIZE_TYPE__ long unsigned int
974// AARCH64-FREEBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000975// AARCH64-FREEBSD:#define __UINT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000976// AARCH64-FREEBSD:#define __UINT16_MAX__ 65535
977// AARCH64-FREEBSD:#define __UINT16_TYPE__ unsigned short
978// AARCH64-FREEBSD:#define __UINT32_C_SUFFIX__ U
979// AARCH64-FREEBSD:#define __UINT32_MAX__ 4294967295U
980// AARCH64-FREEBSD:#define __UINT32_TYPE__ unsigned int
981// AARCH64-FREEBSD:#define __UINT64_C_SUFFIX__ UL
982// AARCH64-FREEBSD:#define __UINT64_MAX__ 18446744073709551615UL
983// AARCH64-FREEBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000984// AARCH64-FREEBSD:#define __UINT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000985// AARCH64-FREEBSD:#define __UINT8_MAX__ 255
986// AARCH64-FREEBSD:#define __UINT8_TYPE__ unsigned char
987// AARCH64-FREEBSD:#define __UINTMAX_C_SUFFIX__ UL
988// AARCH64-FREEBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
989// AARCH64-FREEBSD:#define __UINTMAX_TYPE__ long unsigned int
990// AARCH64-FREEBSD:#define __UINTMAX_WIDTH__ 64
991// AARCH64-FREEBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
992// AARCH64-FREEBSD:#define __UINTPTR_TYPE__ long unsigned int
993// AARCH64-FREEBSD:#define __UINTPTR_WIDTH__ 64
994// AARCH64-FREEBSD:#define __UINT_FAST16_MAX__ 65535
995// AARCH64-FREEBSD:#define __UINT_FAST16_TYPE__ unsigned short
996// AARCH64-FREEBSD:#define __UINT_FAST32_MAX__ 4294967295U
997// AARCH64-FREEBSD:#define __UINT_FAST32_TYPE__ unsigned int
998// AARCH64-FREEBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
999// AARCH64-FREEBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1000// AARCH64-FREEBSD:#define __UINT_FAST8_MAX__ 255
1001// AARCH64-FREEBSD:#define __UINT_FAST8_TYPE__ unsigned char
1002// AARCH64-FREEBSD:#define __UINT_LEAST16_MAX__ 65535
1003// AARCH64-FREEBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1004// AARCH64-FREEBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1005// AARCH64-FREEBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1006// AARCH64-FREEBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1007// AARCH64-FREEBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1008// AARCH64-FREEBSD:#define __UINT_LEAST8_MAX__ 255
1009// AARCH64-FREEBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1010// AARCH64-FREEBSD:#define __USER_LABEL_PREFIX__
1011// AARCH64-FREEBSD:#define __WCHAR_MAX__ 4294967295U
1012// AARCH64-FREEBSD:#define __WCHAR_TYPE__ unsigned int
1013// AARCH64-FREEBSD:#define __WCHAR_UNSIGNED__ 1
1014// AARCH64-FREEBSD:#define __WCHAR_WIDTH__ 32
1015// AARCH64-FREEBSD:#define __WINT_TYPE__ int
1016// AARCH64-FREEBSD:#define __WINT_WIDTH__ 32
1017// AARCH64-FREEBSD:#define __aarch64__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +00001018
James Y Knightc97efa42016-02-11 16:51:29 +00001019// 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 +00001020//
1021// AARCH64-DARWIN: #define _LP64 1
1022// AARCH64-NOT: #define __AARCH64EB__ 1
1023// AARCH64-DARWIN: #define __AARCH64EL__ 1
1024// AARCH64-NOT: #define __AARCH_BIG_ENDIAN 1
1025// AARCH64-DARWIN: #define __ARM_64BIT_STATE 1
1026// AARCH64-DARWIN: #define __ARM_ARCH 8
1027// AARCH64-DARWIN: #define __ARM_ARCH_ISA_A64 1
1028// AARCH64-NOT: #define __ARM_BIG_ENDIAN 1
1029// AARCH64-DARWIN: #define __BIGGEST_ALIGNMENT__ 8
1030// AARCH64-DARWIN: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1031// AARCH64-DARWIN: #define __CHAR16_TYPE__ unsigned short
1032// AARCH64-DARWIN: #define __CHAR32_TYPE__ unsigned int
1033// AARCH64-DARWIN: #define __CHAR_BIT__ 8
1034// AARCH64-DARWIN: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1035// AARCH64-DARWIN: #define __DBL_DIG__ 15
1036// AARCH64-DARWIN: #define __DBL_EPSILON__ 2.2204460492503131e-16
1037// AARCH64-DARWIN: #define __DBL_HAS_DENORM__ 1
1038// AARCH64-DARWIN: #define __DBL_HAS_INFINITY__ 1
1039// AARCH64-DARWIN: #define __DBL_HAS_QUIET_NAN__ 1
1040// AARCH64-DARWIN: #define __DBL_MANT_DIG__ 53
1041// AARCH64-DARWIN: #define __DBL_MAX_10_EXP__ 308
1042// AARCH64-DARWIN: #define __DBL_MAX_EXP__ 1024
1043// AARCH64-DARWIN: #define __DBL_MAX__ 1.7976931348623157e+308
1044// AARCH64-DARWIN: #define __DBL_MIN_10_EXP__ (-307)
1045// AARCH64-DARWIN: #define __DBL_MIN_EXP__ (-1021)
1046// AARCH64-DARWIN: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001047// AARCH64-DARWIN: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Tim Northovera6a19f12015-02-06 01:25:07 +00001048// AARCH64-DARWIN: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1049// AARCH64-DARWIN: #define __FLT_DIG__ 6
1050// AARCH64-DARWIN: #define __FLT_EPSILON__ 1.19209290e-7F
1051// AARCH64-DARWIN: #define __FLT_EVAL_METHOD__ 0
1052// AARCH64-DARWIN: #define __FLT_HAS_DENORM__ 1
1053// AARCH64-DARWIN: #define __FLT_HAS_INFINITY__ 1
1054// AARCH64-DARWIN: #define __FLT_HAS_QUIET_NAN__ 1
1055// AARCH64-DARWIN: #define __FLT_MANT_DIG__ 24
1056// AARCH64-DARWIN: #define __FLT_MAX_10_EXP__ 38
1057// AARCH64-DARWIN: #define __FLT_MAX_EXP__ 128
1058// AARCH64-DARWIN: #define __FLT_MAX__ 3.40282347e+38F
1059// AARCH64-DARWIN: #define __FLT_MIN_10_EXP__ (-37)
1060// AARCH64-DARWIN: #define __FLT_MIN_EXP__ (-125)
1061// AARCH64-DARWIN: #define __FLT_MIN__ 1.17549435e-38F
1062// AARCH64-DARWIN: #define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001063// AARCH64-DARWIN: #define __INT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001064// AARCH64-DARWIN: #define __INT16_FMTd__ "hd"
1065// AARCH64-DARWIN: #define __INT16_FMTi__ "hi"
1066// AARCH64-DARWIN: #define __INT16_MAX__ 32767
1067// AARCH64-DARWIN: #define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001068// AARCH64-DARWIN: #define __INT32_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001069// AARCH64-DARWIN: #define __INT32_FMTd__ "d"
1070// AARCH64-DARWIN: #define __INT32_FMTi__ "i"
1071// AARCH64-DARWIN: #define __INT32_MAX__ 2147483647
1072// AARCH64-DARWIN: #define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00001073// AARCH64-DARWIN: #define __INT64_C_SUFFIX__ LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001074// AARCH64-DARWIN: #define __INT64_FMTd__ "lld"
1075// AARCH64-DARWIN: #define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00001076// AARCH64-DARWIN: #define __INT64_MAX__ 9223372036854775807LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001077// AARCH64-DARWIN: #define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001078// AARCH64-DARWIN: #define __INT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001079// AARCH64-DARWIN: #define __INT8_FMTd__ "hhd"
1080// AARCH64-DARWIN: #define __INT8_FMTi__ "hhi"
1081// AARCH64-DARWIN: #define __INT8_MAX__ 127
1082// AARCH64-DARWIN: #define __INT8_TYPE__ signed char
1083// AARCH64-DARWIN: #define __INTMAX_C_SUFFIX__ L
1084// AARCH64-DARWIN: #define __INTMAX_FMTd__ "ld"
1085// AARCH64-DARWIN: #define __INTMAX_FMTi__ "li"
1086// AARCH64-DARWIN: #define __INTMAX_MAX__ 9223372036854775807L
1087// AARCH64-DARWIN: #define __INTMAX_TYPE__ long int
1088// AARCH64-DARWIN: #define __INTMAX_WIDTH__ 64
1089// AARCH64-DARWIN: #define __INTPTR_FMTd__ "ld"
1090// AARCH64-DARWIN: #define __INTPTR_FMTi__ "li"
1091// AARCH64-DARWIN: #define __INTPTR_MAX__ 9223372036854775807L
1092// AARCH64-DARWIN: #define __INTPTR_TYPE__ long int
1093// AARCH64-DARWIN: #define __INTPTR_WIDTH__ 64
1094// AARCH64-DARWIN: #define __INT_FAST16_FMTd__ "hd"
1095// AARCH64-DARWIN: #define __INT_FAST16_FMTi__ "hi"
1096// AARCH64-DARWIN: #define __INT_FAST16_MAX__ 32767
1097// AARCH64-DARWIN: #define __INT_FAST16_TYPE__ short
1098// AARCH64-DARWIN: #define __INT_FAST32_FMTd__ "d"
1099// AARCH64-DARWIN: #define __INT_FAST32_FMTi__ "i"
1100// AARCH64-DARWIN: #define __INT_FAST32_MAX__ 2147483647
1101// AARCH64-DARWIN: #define __INT_FAST32_TYPE__ int
1102// AARCH64-DARWIN: #define __INT_FAST64_FMTd__ "ld"
1103// AARCH64-DARWIN: #define __INT_FAST64_FMTi__ "li"
1104// AARCH64-DARWIN: #define __INT_FAST64_MAX__ 9223372036854775807L
1105// AARCH64-DARWIN: #define __INT_FAST64_TYPE__ long int
1106// AARCH64-DARWIN: #define __INT_FAST8_FMTd__ "hhd"
1107// AARCH64-DARWIN: #define __INT_FAST8_FMTi__ "hhi"
1108// AARCH64-DARWIN: #define __INT_FAST8_MAX__ 127
1109// AARCH64-DARWIN: #define __INT_FAST8_TYPE__ signed char
1110// AARCH64-DARWIN: #define __INT_LEAST16_FMTd__ "hd"
1111// AARCH64-DARWIN: #define __INT_LEAST16_FMTi__ "hi"
1112// AARCH64-DARWIN: #define __INT_LEAST16_MAX__ 32767
1113// AARCH64-DARWIN: #define __INT_LEAST16_TYPE__ short
1114// AARCH64-DARWIN: #define __INT_LEAST32_FMTd__ "d"
1115// AARCH64-DARWIN: #define __INT_LEAST32_FMTi__ "i"
1116// AARCH64-DARWIN: #define __INT_LEAST32_MAX__ 2147483647
1117// AARCH64-DARWIN: #define __INT_LEAST32_TYPE__ int
1118// AARCH64-DARWIN: #define __INT_LEAST64_FMTd__ "ld"
1119// AARCH64-DARWIN: #define __INT_LEAST64_FMTi__ "li"
1120// AARCH64-DARWIN: #define __INT_LEAST64_MAX__ 9223372036854775807L
1121// AARCH64-DARWIN: #define __INT_LEAST64_TYPE__ long int
1122// AARCH64-DARWIN: #define __INT_LEAST8_FMTd__ "hhd"
1123// AARCH64-DARWIN: #define __INT_LEAST8_FMTi__ "hhi"
1124// AARCH64-DARWIN: #define __INT_LEAST8_MAX__ 127
1125// AARCH64-DARWIN: #define __INT_LEAST8_TYPE__ signed char
1126// AARCH64-DARWIN: #define __INT_MAX__ 2147483647
1127// AARCH64-DARWIN: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1128// AARCH64-DARWIN: #define __LDBL_DIG__ 15
1129// AARCH64-DARWIN: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1130// AARCH64-DARWIN: #define __LDBL_HAS_DENORM__ 1
1131// AARCH64-DARWIN: #define __LDBL_HAS_INFINITY__ 1
1132// AARCH64-DARWIN: #define __LDBL_HAS_QUIET_NAN__ 1
1133// AARCH64-DARWIN: #define __LDBL_MANT_DIG__ 53
1134// AARCH64-DARWIN: #define __LDBL_MAX_10_EXP__ 308
1135// AARCH64-DARWIN: #define __LDBL_MAX_EXP__ 1024
1136// AARCH64-DARWIN: #define __LDBL_MAX__ 1.7976931348623157e+308L
1137// AARCH64-DARWIN: #define __LDBL_MIN_10_EXP__ (-307)
1138// AARCH64-DARWIN: #define __LDBL_MIN_EXP__ (-1021)
1139// AARCH64-DARWIN: #define __LDBL_MIN__ 2.2250738585072014e-308L
1140// AARCH64-DARWIN: #define __LONG_LONG_MAX__ 9223372036854775807LL
1141// AARCH64-DARWIN: #define __LONG_MAX__ 9223372036854775807L
1142// AARCH64-DARWIN: #define __LP64__ 1
1143// AARCH64-DARWIN: #define __POINTER_WIDTH__ 64
1144// AARCH64-DARWIN: #define __PTRDIFF_TYPE__ long int
1145// AARCH64-DARWIN: #define __PTRDIFF_WIDTH__ 64
1146// AARCH64-DARWIN: #define __SCHAR_MAX__ 127
1147// AARCH64-DARWIN: #define __SHRT_MAX__ 32767
1148// AARCH64-DARWIN: #define __SIG_ATOMIC_MAX__ 2147483647
1149// AARCH64-DARWIN: #define __SIG_ATOMIC_WIDTH__ 32
1150// AARCH64-DARWIN: #define __SIZEOF_DOUBLE__ 8
1151// AARCH64-DARWIN: #define __SIZEOF_FLOAT__ 4
1152// AARCH64-DARWIN: #define __SIZEOF_INT128__ 16
1153// AARCH64-DARWIN: #define __SIZEOF_INT__ 4
1154// AARCH64-DARWIN: #define __SIZEOF_LONG_DOUBLE__ 8
1155// AARCH64-DARWIN: #define __SIZEOF_LONG_LONG__ 8
1156// AARCH64-DARWIN: #define __SIZEOF_LONG__ 8
1157// AARCH64-DARWIN: #define __SIZEOF_POINTER__ 8
1158// AARCH64-DARWIN: #define __SIZEOF_PTRDIFF_T__ 8
1159// AARCH64-DARWIN: #define __SIZEOF_SHORT__ 2
1160// AARCH64-DARWIN: #define __SIZEOF_SIZE_T__ 8
1161// AARCH64-DARWIN: #define __SIZEOF_WCHAR_T__ 4
1162// AARCH64-DARWIN: #define __SIZEOF_WINT_T__ 4
1163// AARCH64-DARWIN: #define __SIZE_MAX__ 18446744073709551615UL
1164// AARCH64-DARWIN: #define __SIZE_TYPE__ long unsigned int
1165// AARCH64-DARWIN: #define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001166// AARCH64-DARWIN: #define __UINT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001167// AARCH64-DARWIN: #define __UINT16_MAX__ 65535
1168// AARCH64-DARWIN: #define __UINT16_TYPE__ unsigned short
1169// AARCH64-DARWIN: #define __UINT32_C_SUFFIX__ U
1170// AARCH64-DARWIN: #define __UINT32_MAX__ 4294967295U
1171// AARCH64-DARWIN: #define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001172// AARCH64-DARWIN: #define __UINT64_C_SUFFIX__ ULL
1173// AARCH64-DARWIN: #define __UINT64_MAX__ 18446744073709551615ULL
Tim Northovera6a19f12015-02-06 01:25:07 +00001174// AARCH64-DARWIN: #define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001175// AARCH64-DARWIN: #define __UINT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001176// AARCH64-DARWIN: #define __UINT8_MAX__ 255
1177// AARCH64-DARWIN: #define __UINT8_TYPE__ unsigned char
1178// AARCH64-DARWIN: #define __UINTMAX_C_SUFFIX__ UL
1179// AARCH64-DARWIN: #define __UINTMAX_MAX__ 18446744073709551615UL
1180// AARCH64-DARWIN: #define __UINTMAX_TYPE__ long unsigned int
1181// AARCH64-DARWIN: #define __UINTMAX_WIDTH__ 64
1182// AARCH64-DARWIN: #define __UINTPTR_MAX__ 18446744073709551615UL
1183// AARCH64-DARWIN: #define __UINTPTR_TYPE__ long unsigned int
1184// AARCH64-DARWIN: #define __UINTPTR_WIDTH__ 64
1185// AARCH64-DARWIN: #define __UINT_FAST16_MAX__ 65535
1186// AARCH64-DARWIN: #define __UINT_FAST16_TYPE__ unsigned short
1187// AARCH64-DARWIN: #define __UINT_FAST32_MAX__ 4294967295U
1188// AARCH64-DARWIN: #define __UINT_FAST32_TYPE__ unsigned int
1189// AARCH64-DARWIN: #define __UINT_FAST64_MAX__ 18446744073709551615UL
1190// AARCH64-DARWIN: #define __UINT_FAST64_TYPE__ long unsigned int
1191// AARCH64-DARWIN: #define __UINT_FAST8_MAX__ 255
1192// AARCH64-DARWIN: #define __UINT_FAST8_TYPE__ unsigned char
1193// AARCH64-DARWIN: #define __UINT_LEAST16_MAX__ 65535
1194// AARCH64-DARWIN: #define __UINT_LEAST16_TYPE__ unsigned short
1195// AARCH64-DARWIN: #define __UINT_LEAST32_MAX__ 4294967295U
1196// AARCH64-DARWIN: #define __UINT_LEAST32_TYPE__ unsigned int
1197// AARCH64-DARWIN: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
1198// AARCH64-DARWIN: #define __UINT_LEAST64_TYPE__ long unsigned int
1199// AARCH64-DARWIN: #define __UINT_LEAST8_MAX__ 255
1200// AARCH64-DARWIN: #define __UINT_LEAST8_TYPE__ unsigned char
1201// AARCH64-DARWIN: #define __USER_LABEL_PREFIX__ _
1202// AARCH64-DARWIN: #define __WCHAR_MAX__ 2147483647
1203// AARCH64-DARWIN: #define __WCHAR_TYPE__ int
1204// AARCH64-DARWIN-NOT: #define __WCHAR_UNSIGNED__
1205// AARCH64-DARWIN: #define __WCHAR_WIDTH__ 32
1206// AARCH64-DARWIN: #define __WINT_TYPE__ int
1207// AARCH64-DARWIN: #define __WINT_WIDTH__ 32
1208// AARCH64-DARWIN: #define __aarch64__ 1
1209
James Y Knightc97efa42016-02-11 16:51:29 +00001210// 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 +00001211// 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 +00001212//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001213// ARM-NOT:#define _LP64
Chris Lattnere963d092009-10-29 04:55:36 +00001214// ARM:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001215// ARM-NOT:#define __ARMEB__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00001216// ARM:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001217// ARM:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001218// ARM-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001219// ARM:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001220// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00001221// ARM:#define __CHAR16_TYPE__ unsigned short
1222// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00001223// ARM:#define __CHAR_BIT__ 8
1224// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1225// ARM:#define __DBL_DIG__ 15
1226// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
1227// ARM:#define __DBL_HAS_DENORM__ 1
1228// ARM:#define __DBL_HAS_INFINITY__ 1
1229// ARM:#define __DBL_HAS_QUIET_NAN__ 1
1230// ARM:#define __DBL_MANT_DIG__ 53
1231// ARM:#define __DBL_MAX_10_EXP__ 308
1232// ARM:#define __DBL_MAX_EXP__ 1024
1233// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
1234// ARM:#define __DBL_MIN_10_EXP__ (-307)
1235// ARM:#define __DBL_MIN_EXP__ (-1021)
1236// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001237// ARM:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00001238// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1239// ARM:#define __FLT_DIG__ 6
1240// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
1241// ARM:#define __FLT_EVAL_METHOD__ 0
1242// ARM:#define __FLT_HAS_DENORM__ 1
1243// ARM:#define __FLT_HAS_INFINITY__ 1
1244// ARM:#define __FLT_HAS_QUIET_NAN__ 1
1245// ARM:#define __FLT_MANT_DIG__ 24
1246// ARM:#define __FLT_MAX_10_EXP__ 38
1247// ARM:#define __FLT_MAX_EXP__ 128
1248// ARM:#define __FLT_MAX__ 3.40282347e+38F
1249// ARM:#define __FLT_MIN_10_EXP__ (-37)
1250// ARM:#define __FLT_MIN_EXP__ (-125)
1251// ARM:#define __FLT_MIN__ 1.17549435e-38F
1252// ARM:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001253// ARM:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001254// ARM:#define __INT16_FMTd__ "hd"
1255// ARM:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001256// ARM:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00001257// ARM:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001258// ARM:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001259// ARM:#define __INT32_FMTd__ "d"
1260// ARM:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001261// ARM:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00001262// ARM:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00001263// ARM:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001264// ARM:#define __INT64_FMTd__ "lld"
1265// ARM:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001266// ARM:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00001267// ARM:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001268// ARM:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001269// ARM:#define __INT8_FMTd__ "hhd"
1270// ARM:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001271// ARM:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001272// ARM:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001273// ARM:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001274// ARM:#define __INTMAX_FMTd__ "lld"
1275// ARM:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00001276// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00001277// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00001278// ARM:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001279// ARM:#define __INTPTR_FMTd__ "ld"
1280// ARM:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001281// ARM:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00001282// ARM:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00001283// ARM:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001284// ARM:#define __INT_FAST16_FMTd__ "hd"
1285// ARM:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001286// ARM:#define __INT_FAST16_MAX__ 32767
1287// ARM:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001288// ARM:#define __INT_FAST32_FMTd__ "d"
1289// ARM:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001290// ARM:#define __INT_FAST32_MAX__ 2147483647
1291// ARM:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001292// ARM:#define __INT_FAST64_FMTd__ "lld"
1293// ARM:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001294// ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
1295// ARM:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001296// ARM:#define __INT_FAST8_FMTd__ "hhd"
1297// ARM:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001298// ARM:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001299// ARM:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001300// ARM:#define __INT_LEAST16_FMTd__ "hd"
1301// ARM:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001302// ARM:#define __INT_LEAST16_MAX__ 32767
1303// ARM:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001304// ARM:#define __INT_LEAST32_FMTd__ "d"
1305// ARM:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001306// ARM:#define __INT_LEAST32_MAX__ 2147483647
1307// ARM:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001308// ARM:#define __INT_LEAST64_FMTd__ "lld"
1309// ARM:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001310// ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1311// ARM:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001312// ARM:#define __INT_LEAST8_FMTd__ "hhd"
1313// ARM:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001314// ARM:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001315// ARM:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00001316// ARM:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001317// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00001318// ARM:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001319// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00001320// ARM:#define __LDBL_HAS_DENORM__ 1
1321// ARM:#define __LDBL_HAS_INFINITY__ 1
1322// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
1323// ARM:#define __LDBL_MANT_DIG__ 53
1324// ARM:#define __LDBL_MAX_10_EXP__ 308
1325// ARM:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001326// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00001327// ARM:#define __LDBL_MIN_10_EXP__ (-307)
1328// ARM:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001329// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00001330// ARM:#define __LITTLE_ENDIAN__ 1
1331// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
1332// ARM:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001333// ARM-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00001334// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00001335// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00001336// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00001337// ARM:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00001338// ARM:#define __SCHAR_MAX__ 127
1339// ARM:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001340// ARM:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00001341// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00001342// ARM:#define __SIZEOF_DOUBLE__ 8
1343// ARM:#define __SIZEOF_FLOAT__ 4
1344// ARM:#define __SIZEOF_INT__ 4
1345// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
1346// ARM:#define __SIZEOF_LONG_LONG__ 8
1347// ARM:#define __SIZEOF_LONG__ 4
1348// ARM:#define __SIZEOF_POINTER__ 4
1349// ARM:#define __SIZEOF_PTRDIFF_T__ 4
1350// ARM:#define __SIZEOF_SHORT__ 2
1351// ARM:#define __SIZEOF_SIZE_T__ 4
1352// ARM:#define __SIZEOF_WCHAR_T__ 4
1353// ARM:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001354// ARM:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00001355// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00001356// ARM:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00001357// ARM-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00001358// ARM:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001359// ARM:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001360// ARM:#define __UINT16_TYPE__ unsigned short
1361// ARM:#define __UINT32_C_SUFFIX__ U
1362// ARM:#define __UINT32_MAX__ 4294967295U
1363// ARM:#define __UINT32_TYPE__ unsigned int
1364// ARM:#define __UINT64_C_SUFFIX__ ULL
1365// ARM:#define __UINT64_MAX__ 18446744073709551615ULL
1366// ARM:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001367// ARM:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001368// ARM:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001369// ARM:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001370// ARM:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001371// ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00001372// ARM:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001373// ARM:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001374// ARM:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001375// ARM:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001376// ARM:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001377// ARM:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001378// ARM:#define __UINT_FAST16_TYPE__ unsigned short
1379// ARM:#define __UINT_FAST32_MAX__ 4294967295U
1380// ARM:#define __UINT_FAST32_TYPE__ unsigned int
1381// ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1382// ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001383// ARM:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001384// ARM:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001385// ARM:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001386// ARM:#define __UINT_LEAST16_TYPE__ unsigned short
1387// ARM:#define __UINT_LEAST32_MAX__ 4294967295U
1388// ARM:#define __UINT_LEAST32_TYPE__ unsigned int
1389// ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1390// ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001391// ARM:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001392// ARM:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001393// ARM:#define __USER_LABEL_PREFIX__
James Molloyc445be42011-11-23 13:35:08 +00001394// ARM:#define __WCHAR_MAX__ 4294967295U
1395// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck0138b9e2009-11-19 15:47:58 +00001396// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001397// ARM:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00001398// ARM:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001399// ARM:#define __arm 1
1400// ARM:#define __arm__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001401
James Y Knightc97efa42016-02-11 16:51:29 +00001402// 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 +00001403//
1404// ARM-BE-NOT:#define _LP64
1405// ARM-BE:#define __APCS_32__ 1
1406// ARM-BE:#define __ARMEB__ 1
1407// ARM-BE-NOT:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001408// ARM-BE:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001409// ARM-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001410// ARM-BE:#define __BIGGEST_ALIGNMENT__ 8
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001411// ARM-BE:#define __BIG_ENDIAN__ 1
1412// ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1413// ARM-BE:#define __CHAR16_TYPE__ unsigned short
1414// ARM-BE:#define __CHAR32_TYPE__ unsigned int
1415// ARM-BE:#define __CHAR_BIT__ 8
1416// ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1417// ARM-BE:#define __DBL_DIG__ 15
1418// ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1419// ARM-BE:#define __DBL_HAS_DENORM__ 1
1420// ARM-BE:#define __DBL_HAS_INFINITY__ 1
1421// ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
1422// ARM-BE:#define __DBL_MANT_DIG__ 53
1423// ARM-BE:#define __DBL_MAX_10_EXP__ 308
1424// ARM-BE:#define __DBL_MAX_EXP__ 1024
1425// ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
1426// ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
1427// ARM-BE:#define __DBL_MIN_EXP__ (-1021)
1428// ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001429// ARM-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001430// ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1431// ARM-BE:#define __FLT_DIG__ 6
1432// ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
1433// ARM-BE:#define __FLT_EVAL_METHOD__ 0
1434// ARM-BE:#define __FLT_HAS_DENORM__ 1
1435// ARM-BE:#define __FLT_HAS_INFINITY__ 1
1436// ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
1437// ARM-BE:#define __FLT_MANT_DIG__ 24
1438// ARM-BE:#define __FLT_MAX_10_EXP__ 38
1439// ARM-BE:#define __FLT_MAX_EXP__ 128
1440// ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
1441// ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
1442// ARM-BE:#define __FLT_MIN_EXP__ (-125)
1443// ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
1444// ARM-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001445// ARM-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001446// ARM-BE:#define __INT16_FMTd__ "hd"
1447// ARM-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001448// ARM-BE:#define __INT16_MAX__ 32767
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001449// ARM-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001450// ARM-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001451// ARM-BE:#define __INT32_FMTd__ "d"
1452// ARM-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001453// ARM-BE:#define __INT32_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001454// ARM-BE:#define __INT32_TYPE__ int
1455// ARM-BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001456// ARM-BE:#define __INT64_FMTd__ "lld"
1457// ARM-BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001458// ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001459// ARM-BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001460// ARM-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001461// ARM-BE:#define __INT8_FMTd__ "hhd"
1462// ARM-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001463// ARM-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001464// ARM-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001465// ARM-BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001466// ARM-BE:#define __INTMAX_FMTd__ "lld"
1467// ARM-BE:#define __INTMAX_FMTi__ "lli"
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001468// ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
1469// ARM-BE:#define __INTMAX_TYPE__ long long int
1470// ARM-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001471// ARM-BE:#define __INTPTR_FMTd__ "ld"
1472// ARM-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001473// ARM-BE:#define __INTPTR_MAX__ 2147483647L
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001474// ARM-BE:#define __INTPTR_TYPE__ long int
1475// ARM-BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001476// ARM-BE:#define __INT_FAST16_FMTd__ "hd"
1477// ARM-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001478// ARM-BE:#define __INT_FAST16_MAX__ 32767
1479// ARM-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001480// ARM-BE:#define __INT_FAST32_FMTd__ "d"
1481// ARM-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001482// ARM-BE:#define __INT_FAST32_MAX__ 2147483647
1483// ARM-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001484// ARM-BE:#define __INT_FAST64_FMTd__ "lld"
1485// ARM-BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001486// ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
1487// ARM-BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001488// ARM-BE:#define __INT_FAST8_FMTd__ "hhd"
1489// ARM-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001490// ARM-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001491// ARM-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001492// ARM-BE:#define __INT_LEAST16_FMTd__ "hd"
1493// ARM-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001494// ARM-BE:#define __INT_LEAST16_MAX__ 32767
1495// ARM-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001496// ARM-BE:#define __INT_LEAST32_FMTd__ "d"
1497// ARM-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001498// ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
1499// ARM-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001500// ARM-BE:#define __INT_LEAST64_FMTd__ "lld"
1501// ARM-BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001502// ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1503// ARM-BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001504// ARM-BE:#define __INT_LEAST8_FMTd__ "hhd"
1505// ARM-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001506// ARM-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001507// ARM-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001508// ARM-BE:#define __INT_MAX__ 2147483647
1509// ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1510// ARM-BE:#define __LDBL_DIG__ 15
1511// ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
1512// ARM-BE:#define __LDBL_HAS_DENORM__ 1
1513// ARM-BE:#define __LDBL_HAS_INFINITY__ 1
1514// ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
1515// ARM-BE:#define __LDBL_MANT_DIG__ 53
1516// ARM-BE:#define __LDBL_MAX_10_EXP__ 308
1517// ARM-BE:#define __LDBL_MAX_EXP__ 1024
1518// ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
1519// ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
1520// ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
1521// ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
1522// ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1523// ARM-BE:#define __LONG_MAX__ 2147483647L
1524// ARM-BE-NOT:#define __LP64__
1525// ARM-BE:#define __POINTER_WIDTH__ 32
1526// ARM-BE:#define __PTRDIFF_TYPE__ int
1527// ARM-BE:#define __PTRDIFF_WIDTH__ 32
1528// ARM-BE:#define __REGISTER_PREFIX__
1529// ARM-BE:#define __SCHAR_MAX__ 127
1530// ARM-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001531// ARM-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001532// ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
1533// ARM-BE:#define __SIZEOF_DOUBLE__ 8
1534// ARM-BE:#define __SIZEOF_FLOAT__ 4
1535// ARM-BE:#define __SIZEOF_INT__ 4
1536// ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
1537// ARM-BE:#define __SIZEOF_LONG_LONG__ 8
1538// ARM-BE:#define __SIZEOF_LONG__ 4
1539// ARM-BE:#define __SIZEOF_POINTER__ 4
1540// ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
1541// ARM-BE:#define __SIZEOF_SHORT__ 2
1542// ARM-BE:#define __SIZEOF_SIZE_T__ 4
1543// ARM-BE:#define __SIZEOF_WCHAR_T__ 4
1544// ARM-BE:#define __SIZEOF_WINT_T__ 4
1545// ARM-BE:#define __SIZE_MAX__ 4294967295U
1546// ARM-BE:#define __SIZE_TYPE__ unsigned int
1547// ARM-BE:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00001548// ARM-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001549// ARM-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001550// ARM-BE:#define __UINT16_TYPE__ unsigned short
1551// ARM-BE:#define __UINT32_C_SUFFIX__ U
1552// ARM-BE:#define __UINT32_MAX__ 4294967295U
1553// ARM-BE:#define __UINT32_TYPE__ unsigned int
1554// ARM-BE:#define __UINT64_C_SUFFIX__ ULL
1555// ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
1556// ARM-BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001557// ARM-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001558// ARM-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001559// ARM-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001560// ARM-BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001561// ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001562// ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001563// ARM-BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001564// ARM-BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001565// ARM-BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001566// ARM-BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001567// ARM-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001568// ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
1569// ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
1570// ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
1571// ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1572// ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001573// ARM-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001574// ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001575// ARM-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001576// ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
1577// ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
1578// ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
1579// ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1580// ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001581// ARM-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001582// ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001583// ARM-BE:#define __USER_LABEL_PREFIX__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001584// ARM-BE:#define __WCHAR_MAX__ 4294967295U
1585// ARM-BE:#define __WCHAR_TYPE__ unsigned int
1586// ARM-BE:#define __WCHAR_WIDTH__ 32
1587// ARM-BE:#define __WINT_TYPE__ int
1588// ARM-BE:#define __WINT_WIDTH__ 32
1589// ARM-BE:#define __arm 1
1590// ARM-BE:#define __arm__ 1
1591
James Y Knightc97efa42016-02-11 16:51:29 +00001592// 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 +00001593//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001594// ARMEABISOFTFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001595// ARMEABISOFTFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001596// ARMEABISOFTFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001597// ARMEABISOFTFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001598// ARMEABISOFTFP:#define __ARM_ARCH 4
1599// ARMEABISOFTFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001600// ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001601// ARMEABISOFTFP:#define __ARM_EABI__ 1
1602// ARMEABISOFTFP:#define __ARM_PCS 1
1603// ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001604// ARMEABISOFTFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001605// ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1606// ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
1607// ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
1608// ARMEABISOFTFP:#define __CHAR_BIT__ 8
1609// ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1610// ARMEABISOFTFP:#define __DBL_DIG__ 15
1611// ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
1612// ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
1613// ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
1614// ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
1615// ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
1616// ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
1617// ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
1618// ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
1619// ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
1620// ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
1621// ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001622// ARMEABISOFTFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001623// ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1624// ARMEABISOFTFP:#define __FLT_DIG__ 6
1625// ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
1626// ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
1627// ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
1628// ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
1629// ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
1630// ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
1631// ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
1632// ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
1633// ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
1634// ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
1635// ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
1636// ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
1637// ARMEABISOFTFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001638// ARMEABISOFTFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001639// ARMEABISOFTFP:#define __INT16_FMTd__ "hd"
1640// ARMEABISOFTFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001641// ARMEABISOFTFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001642// ARMEABISOFTFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001643// ARMEABISOFTFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001644// ARMEABISOFTFP:#define __INT32_FMTd__ "d"
1645// ARMEABISOFTFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001646// ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001647// ARMEABISOFTFP:#define __INT32_TYPE__ int
1648// ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001649// ARMEABISOFTFP:#define __INT64_FMTd__ "lld"
1650// ARMEABISOFTFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001651// ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001652// ARMEABISOFTFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001653// ARMEABISOFTFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001654// ARMEABISOFTFP:#define __INT8_FMTd__ "hhd"
1655// ARMEABISOFTFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001656// ARMEABISOFTFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001657// ARMEABISOFTFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001658// ARMEABISOFTFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001659// ARMEABISOFTFP:#define __INTMAX_FMTd__ "lld"
1660// ARMEABISOFTFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001661// ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
1662// ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
1663// ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001664// ARMEABISOFTFP:#define __INTPTR_FMTd__ "ld"
1665// ARMEABISOFTFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001666// ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001667// ARMEABISOFTFP:#define __INTPTR_TYPE__ long int
1668// ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001669// ARMEABISOFTFP:#define __INT_FAST16_FMTd__ "hd"
1670// ARMEABISOFTFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001671// ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
1672// ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001673// ARMEABISOFTFP:#define __INT_FAST32_FMTd__ "d"
1674// ARMEABISOFTFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001675// ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
1676// ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001677// ARMEABISOFTFP:#define __INT_FAST64_FMTd__ "lld"
1678// ARMEABISOFTFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001679// ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
1680// ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001681// ARMEABISOFTFP:#define __INT_FAST8_FMTd__ "hhd"
1682// ARMEABISOFTFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001683// ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001684// ARMEABISOFTFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001685// ARMEABISOFTFP:#define __INT_LEAST16_FMTd__ "hd"
1686// ARMEABISOFTFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001687// ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
1688// ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001689// ARMEABISOFTFP:#define __INT_LEAST32_FMTd__ "d"
1690// ARMEABISOFTFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001691// ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
1692// ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001693// ARMEABISOFTFP:#define __INT_LEAST64_FMTd__ "lld"
1694// ARMEABISOFTFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001695// ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1696// ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001697// ARMEABISOFTFP:#define __INT_LEAST8_FMTd__ "hhd"
1698// ARMEABISOFTFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001699// ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001700// ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001701// ARMEABISOFTFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001702// ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001703// ARMEABISOFTFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001704// ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001705// ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
1706// ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
1707// ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
1708// ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
1709// ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
1710// ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001711// ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001712// ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
1713// ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001714// ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001715// ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
1716// ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
1717// ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
1718// ARMEABISOFTFP-NOT:#define __LP64__
1719// ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
1720// ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
1721// ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
1722// ARMEABISOFTFP:#define __REGISTER_PREFIX__
1723// ARMEABISOFTFP:#define __SCHAR_MAX__ 127
1724// ARMEABISOFTFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001725// ARMEABISOFTFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001726// ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
1727// ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
1728// ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
1729// ARMEABISOFTFP:#define __SIZEOF_INT__ 4
1730// ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
1731// ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
1732// ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
1733// ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
1734// ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
1735// ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
1736// ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
1737// ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
1738// ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001739// ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001740// ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
1741// ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
1742// ARMEABISOFTFP:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00001743// ARMEABISOFTFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001744// ARMEABISOFTFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001745// ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
1746// ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
1747// ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
1748// ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
1749// ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
1750// ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
1751// ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001752// ARMEABISOFTFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001753// ARMEABISOFTFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001754// ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001755// ARMEABISOFTFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001756// ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001757// ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001758// ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001759// ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001760// ARMEABISOFTFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001761// ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001762// ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001763// ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
1764// ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
1765// ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
1766// ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1767// ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001768// ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001769// ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001770// ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001771// ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
1772// ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
1773// ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
1774// ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1775// ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001776// ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001777// ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001778// ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
1779// ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
1780// ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
1781// ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
1782// ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
1783// ARMEABISOFTFP:#define __WINT_WIDTH__ 32
1784// ARMEABISOFTFP:#define __arm 1
1785// ARMEABISOFTFP:#define __arm__ 1
1786
James Y Knightc97efa42016-02-11 16:51:29 +00001787// 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 +00001788//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001789// ARMEABIHARDFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001790// ARMEABIHARDFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001791// ARMEABIHARDFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001792// ARMEABIHARDFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001793// ARMEABIHARDFP:#define __ARM_ARCH 4
1794// ARMEABIHARDFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001795// ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001796// ARMEABIHARDFP:#define __ARM_EABI__ 1
1797// ARMEABIHARDFP:#define __ARM_PCS 1
1798// ARMEABIHARDFP:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001799// ARMEABIHARDFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001800// ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1801// ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
1802// ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
1803// ARMEABIHARDFP:#define __CHAR_BIT__ 8
1804// ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1805// ARMEABIHARDFP:#define __DBL_DIG__ 15
1806// ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
1807// ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
1808// ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
1809// ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
1810// ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
1811// ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
1812// ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
1813// ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
1814// ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
1815// ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
1816// ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001817// ARMEABIHARDFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001818// ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1819// ARMEABIHARDFP:#define __FLT_DIG__ 6
1820// ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
1821// ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
1822// ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
1823// ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
1824// ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
1825// ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
1826// ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
1827// ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
1828// ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
1829// ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
1830// ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
1831// ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
1832// ARMEABIHARDFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001833// ARMEABIHARDFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001834// ARMEABIHARDFP:#define __INT16_FMTd__ "hd"
1835// ARMEABIHARDFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001836// ARMEABIHARDFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001837// ARMEABIHARDFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001838// ARMEABIHARDFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001839// ARMEABIHARDFP:#define __INT32_FMTd__ "d"
1840// ARMEABIHARDFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001841// ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001842// ARMEABIHARDFP:#define __INT32_TYPE__ int
1843// ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001844// ARMEABIHARDFP:#define __INT64_FMTd__ "lld"
1845// ARMEABIHARDFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001846// ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001847// ARMEABIHARDFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001848// ARMEABIHARDFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001849// ARMEABIHARDFP:#define __INT8_FMTd__ "hhd"
1850// ARMEABIHARDFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001851// ARMEABIHARDFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001852// ARMEABIHARDFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001853// ARMEABIHARDFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001854// ARMEABIHARDFP:#define __INTMAX_FMTd__ "lld"
1855// ARMEABIHARDFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001856// ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
1857// ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
1858// ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001859// ARMEABIHARDFP:#define __INTPTR_FMTd__ "ld"
1860// ARMEABIHARDFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001861// ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001862// ARMEABIHARDFP:#define __INTPTR_TYPE__ long int
1863// ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001864// ARMEABIHARDFP:#define __INT_FAST16_FMTd__ "hd"
1865// ARMEABIHARDFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001866// ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
1867// ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001868// ARMEABIHARDFP:#define __INT_FAST32_FMTd__ "d"
1869// ARMEABIHARDFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001870// ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
1871// ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001872// ARMEABIHARDFP:#define __INT_FAST64_FMTd__ "lld"
1873// ARMEABIHARDFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001874// ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
1875// ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001876// ARMEABIHARDFP:#define __INT_FAST8_FMTd__ "hhd"
1877// ARMEABIHARDFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001878// ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001879// ARMEABIHARDFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001880// ARMEABIHARDFP:#define __INT_LEAST16_FMTd__ "hd"
1881// ARMEABIHARDFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001882// ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
1883// ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001884// ARMEABIHARDFP:#define __INT_LEAST32_FMTd__ "d"
1885// ARMEABIHARDFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001886// ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
1887// ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001888// ARMEABIHARDFP:#define __INT_LEAST64_FMTd__ "lld"
1889// ARMEABIHARDFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001890// ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1891// ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001892// ARMEABIHARDFP:#define __INT_LEAST8_FMTd__ "hhd"
1893// ARMEABIHARDFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001894// ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001895// ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001896// ARMEABIHARDFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001897// ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001898// ARMEABIHARDFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001899// ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001900// ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
1901// ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
1902// ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
1903// ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
1904// ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
1905// ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001906// ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001907// ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
1908// ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001909// ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001910// ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
1911// ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
1912// ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
1913// ARMEABIHARDFP-NOT:#define __LP64__
1914// ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
1915// ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
1916// ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
1917// ARMEABIHARDFP:#define __REGISTER_PREFIX__
1918// ARMEABIHARDFP:#define __SCHAR_MAX__ 127
1919// ARMEABIHARDFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001920// ARMEABIHARDFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001921// ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
1922// ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
1923// ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
1924// ARMEABIHARDFP:#define __SIZEOF_INT__ 4
1925// ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
1926// ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
1927// ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
1928// ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
1929// ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
1930// ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
1931// ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
1932// ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
1933// ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001934// ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001935// ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
1936// ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
1937// ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00001938// ARMEABIHARDFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001939// ARMEABIHARDFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001940// ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
1941// ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
1942// ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
1943// ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
1944// ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
1945// ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
1946// ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001947// ARMEABIHARDFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001948// ARMEABIHARDFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001949// ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001950// ARMEABIHARDFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001951// ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001952// ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001953// ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001954// ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001955// ARMEABIHARDFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001956// ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001957// ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001958// ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
1959// ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
1960// ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
1961// ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1962// ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001963// ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001964// ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001965// ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001966// ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
1967// ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
1968// ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
1969// ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1970// ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001971// ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001972// ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001973// ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
1974// ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
1975// ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
1976// ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
1977// ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
1978// ARMEABIHARDFP:#define __WINT_WIDTH__ 32
1979// ARMEABIHARDFP:#define __arm 1
1980// ARMEABIHARDFP:#define __arm__ 1
1981
Ed Schoutenc6d1a732016-09-05 18:38:34 +00001982// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv6-unknown-cloudabi-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARMV6-CLOUDABI %s
1983//
1984// ARMV6-CLOUDABI:#define __CloudABI__ 1
1985// ARMV6-CLOUDABI:#define __arm__ 1
1986
James Y Knightc97efa42016-02-11 16:51:29 +00001987// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-netbsd-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NETBSD %s
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00001988//
1989// ARM-NETBSD-NOT:#define _LP64
1990// ARM-NETBSD:#define __APCS_32__ 1
1991// ARM-NETBSD-NOT:#define __ARMEB__ 1
1992// ARM-NETBSD:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001993// ARM-NETBSD:#define __ARM_ARCH_4T__ 1
Joerg Sonnenbergercc1edb52014-05-13 18:58:36 +00001994// ARM-NETBSD:#define __ARM_DWARF_EH__ 1
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00001995// ARM-NETBSD:#define __ARM_EABI__ 1
1996// ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001997// ARM-NETBSD:#define __BIGGEST_ALIGNMENT__ 8
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00001998// ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1999// ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
2000// ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
2001// ARM-NETBSD:#define __CHAR_BIT__ 8
2002// ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2003// ARM-NETBSD:#define __DBL_DIG__ 15
2004// ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2005// ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
2006// ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
2007// ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2008// ARM-NETBSD:#define __DBL_MANT_DIG__ 53
2009// ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
2010// ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
2011// ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2012// ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2013// ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2014// ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002015// ARM-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002016// ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2017// ARM-NETBSD:#define __FLT_DIG__ 6
2018// ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2019// ARM-NETBSD:#define __FLT_EVAL_METHOD__ 0
2020// ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
2021// ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
2022// ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2023// ARM-NETBSD:#define __FLT_MANT_DIG__ 24
2024// ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
2025// ARM-NETBSD:#define __FLT_MAX_EXP__ 128
2026// ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2027// ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2028// ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
2029// ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2030// ARM-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002031// ARM-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002032// ARM-NETBSD:#define __INT16_FMTd__ "hd"
2033// ARM-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002034// ARM-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002035// ARM-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002036// ARM-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002037// ARM-NETBSD:#define __INT32_FMTd__ "d"
2038// ARM-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002039// ARM-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002040// ARM-NETBSD:#define __INT32_TYPE__ int
2041// ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002042// ARM-NETBSD:#define __INT64_FMTd__ "lld"
2043// ARM-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002044// ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002045// ARM-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002046// ARM-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002047// ARM-NETBSD:#define __INT8_FMTd__ "hhd"
2048// ARM-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002049// ARM-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002050// ARM-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002051// ARM-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002052// ARM-NETBSD:#define __INTMAX_FMTd__ "lld"
2053// ARM-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002054// ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2055// ARM-NETBSD:#define __INTMAX_TYPE__ long long int
2056// ARM-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002057// ARM-NETBSD:#define __INTPTR_FMTd__ "ld"
2058// ARM-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002059// ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002060// ARM-NETBSD:#define __INTPTR_TYPE__ long int
2061// ARM-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002062// ARM-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2063// ARM-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002064// ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
2065// ARM-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002066// ARM-NETBSD:#define __INT_FAST32_FMTd__ "d"
2067// ARM-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002068// ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2069// ARM-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002070// ARM-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2071// ARM-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002072// ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2073// ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002074// ARM-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2075// ARM-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002076// ARM-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002077// ARM-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002078// ARM-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2079// ARM-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002080// ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
2081// ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002082// ARM-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2083// ARM-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002084// ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2085// ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002086// ARM-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2087// ARM-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002088// ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2089// ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002090// ARM-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2091// ARM-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002092// ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002093// ARM-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002094// ARM-NETBSD:#define __INT_MAX__ 2147483647
2095// ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2096// ARM-NETBSD:#define __LDBL_DIG__ 15
2097// ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2098// ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
2099// ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2100// ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2101// ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
2102// ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
2103// ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
2104// ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
2105// ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
2106// ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
2107// ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
2108// ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
2109// ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2110// ARM-NETBSD:#define __LONG_MAX__ 2147483647L
2111// ARM-NETBSD-NOT:#define __LP64__
2112// ARM-NETBSD:#define __POINTER_WIDTH__ 32
2113// ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
2114// ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
2115// ARM-NETBSD:#define __REGISTER_PREFIX__
2116// ARM-NETBSD:#define __SCHAR_MAX__ 127
2117// ARM-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002118// ARM-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002119// ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2120// ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
2121// ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
2122// ARM-NETBSD:#define __SIZEOF_INT__ 4
2123// ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
2124// ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2125// ARM-NETBSD:#define __SIZEOF_LONG__ 4
2126// ARM-NETBSD:#define __SIZEOF_POINTER__ 4
2127// ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2128// ARM-NETBSD:#define __SIZEOF_SHORT__ 2
2129// ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
2130// ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2131// ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002132// ARM-NETBSD:#define __SIZE_MAX__ 4294967295UL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002133// ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
2134// ARM-NETBSD:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002135// ARM-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002136// ARM-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002137// ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
2138// ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
2139// ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
2140// ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
2141// ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2142// ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2143// ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002144// ARM-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002145// ARM-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002146// ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00002147// ARM-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002148// ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002149// ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002150// ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002151// ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002152// ARM-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002153// ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002154// ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002155// ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2156// ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2157// ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2158// ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2159// ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002160// ARM-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002161// ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002162// ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002163// ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2164// ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2165// ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2166// ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2167// ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002168// ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002169// ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002170// ARM-NETBSD:#define __USER_LABEL_PREFIX__
2171// ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
2172// ARM-NETBSD:#define __WCHAR_TYPE__ int
2173// ARM-NETBSD:#define __WCHAR_WIDTH__ 32
2174// ARM-NETBSD:#define __WINT_TYPE__ int
2175// ARM-NETBSD:#define __WINT_WIDTH__ 32
2176// ARM-NETBSD:#define __arm 1
2177// ARM-NETBSD:#define __arm__ 1
2178
Weiming Zhaob0613132016-04-18 16:25:46 +00002179// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2180// ARM-NONE-EABI: #define __ELF__ 1
2181
Tim Northover862eaf82016-05-13 21:26:45 +00002182// No MachO targets use the full EABI, even if AAPCS is used.
2183// 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
2184// 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
2185// 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
2186// 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
2187// 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
2188// ARM-MACHO-NO-EABI-NOT: #define __ARM_EABI__ 1
Tim Northovere77f78c2013-11-11 19:11:22 +00002189
James Y Knightc97efa42016-02-11 16:51:29 +00002190// 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 +00002191// ARM-BITRIG:#define __ARM_DWARF_EH__ 1
2192// ARM-BITRIG:#define __SIZEOF_SIZE_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002193// ARM-BITRIG:#define __SIZE_MAX__ 4294967295UL
Renato Golin9ba39232015-02-27 16:35:48 +00002194// ARM-BITRIG:#define __SIZE_TYPE__ long unsigned int
2195// ARM-BITRIG:#define __SIZE_WIDTH__ 32
2196
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002197// Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
2198
James Y Knightc97efa42016-02-11 16:51:29 +00002199// 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 +00002200// ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
2201
James Y Knightc97efa42016-02-11 16:51:29 +00002202// 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 +00002203// THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
2204
James Y Knightc97efa42016-02-11 16:51:29 +00002205// 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 +00002206// ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2207
James Y Knightc97efa42016-02-11 16:51:29 +00002208// 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 +00002209// THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2210
James Y Knightc97efa42016-02-11 16:51:29 +00002211// 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 +00002212// THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2213
James Y Knightc97efa42016-02-11 16:51:29 +00002214// 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 +00002215// ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2216
James Y Knightc97efa42016-02-11 16:51:29 +00002217// 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 +00002218// ARMv8: #define __THUMB_INTERWORK__ 1
2219// ARMv8-NOT: #define __thumb2__
2220
James Y Knightc97efa42016-02-11 16:51:29 +00002221// 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 +00002222// ARMebv8: #define __THUMB_INTERWORK__ 1
2223// ARMebv8-NOT: #define __thumb2__
2224
James Y Knightc97efa42016-02-11 16:51:29 +00002225// 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 +00002226// Thumbv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002227// Thumbv8: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002228
James Y Knightc97efa42016-02-11 16:51:29 +00002229// 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 +00002230// Thumbebv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002231// Thumbebv8: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002232
James Y Knightc97efa42016-02-11 16:51:29 +00002233// 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 +00002234// Thumbv5: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002235// Thumbv5-NOT: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002236
James Y Knightc97efa42016-02-11 16:51:29 +00002237// 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 +00002238// Thumbv6t2: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002239// Thumbv6t2: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002240
James Y Knightc97efa42016-02-11 16:51:29 +00002241// 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 +00002242// Thumbv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002243// Thumbv7: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002244
James Y Knightc97efa42016-02-11 16:51:29 +00002245// 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 +00002246// Thumbebv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002247// Thumbebv7: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002248
Chris Lattnere963d092009-10-29 04:55:36 +00002249//
James Y Knightc97efa42016-02-11 16:51:29 +00002250// 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 +00002251//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002252// I386-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002253// I386:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002254// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002255// I386:#define __CHAR16_TYPE__ unsigned short
2256// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002257// I386:#define __CHAR_BIT__ 8
2258// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2259// I386:#define __DBL_DIG__ 15
2260// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
2261// I386:#define __DBL_HAS_DENORM__ 1
2262// I386:#define __DBL_HAS_INFINITY__ 1
2263// I386:#define __DBL_HAS_QUIET_NAN__ 1
2264// I386:#define __DBL_MANT_DIG__ 53
2265// I386:#define __DBL_MAX_10_EXP__ 308
2266// I386:#define __DBL_MAX_EXP__ 1024
2267// I386:#define __DBL_MAX__ 1.7976931348623157e+308
2268// I386:#define __DBL_MIN_10_EXP__ (-307)
2269// I386:#define __DBL_MIN_EXP__ (-1021)
2270// I386:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002271// I386:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00002272// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2273// I386:#define __FLT_DIG__ 6
2274// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramercf501472011-12-28 15:47:06 +00002275// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnere963d092009-10-29 04:55:36 +00002276// I386:#define __FLT_HAS_DENORM__ 1
2277// I386:#define __FLT_HAS_INFINITY__ 1
2278// I386:#define __FLT_HAS_QUIET_NAN__ 1
2279// I386:#define __FLT_MANT_DIG__ 24
2280// I386:#define __FLT_MAX_10_EXP__ 38
2281// I386:#define __FLT_MAX_EXP__ 128
2282// I386:#define __FLT_MAX__ 3.40282347e+38F
2283// I386:#define __FLT_MIN_10_EXP__ (-37)
2284// I386:#define __FLT_MIN_EXP__ (-125)
2285// I386:#define __FLT_MIN__ 1.17549435e-38F
2286// I386:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002287// I386:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002288// I386:#define __INT16_FMTd__ "hd"
2289// I386:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002290// I386:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00002291// I386:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002292// I386:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002293// I386:#define __INT32_FMTd__ "d"
2294// I386:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002295// I386:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00002296// I386:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002297// I386:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002298// I386:#define __INT64_FMTd__ "lld"
2299// I386:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002300// I386:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00002301// I386:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002302// I386:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002303// I386:#define __INT8_FMTd__ "hhd"
2304// I386:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002305// I386:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002306// I386:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002307// I386:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002308// I386:#define __INTMAX_FMTd__ "lld"
2309// I386:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00002310// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00002311// I386:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002312// I386:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002313// I386:#define __INTPTR_FMTd__ "d"
2314// I386:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002315// I386:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00002316// I386:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002317// I386:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002318// I386:#define __INT_FAST16_FMTd__ "hd"
2319// I386:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002320// I386:#define __INT_FAST16_MAX__ 32767
2321// I386:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002322// I386:#define __INT_FAST32_FMTd__ "d"
2323// I386:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002324// I386:#define __INT_FAST32_MAX__ 2147483647
2325// I386:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002326// I386:#define __INT_FAST64_FMTd__ "lld"
2327// I386:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002328// I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
2329// I386:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002330// I386:#define __INT_FAST8_FMTd__ "hhd"
2331// I386:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002332// I386:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002333// I386:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002334// I386:#define __INT_LEAST16_FMTd__ "hd"
2335// I386:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002336// I386:#define __INT_LEAST16_MAX__ 32767
2337// I386:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002338// I386:#define __INT_LEAST32_FMTd__ "d"
2339// I386:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002340// I386:#define __INT_LEAST32_MAX__ 2147483647
2341// I386:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002342// I386:#define __INT_LEAST64_FMTd__ "lld"
2343// I386:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002344// I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2345// I386:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002346// I386:#define __INT_LEAST8_FMTd__ "hhd"
2347// I386:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002348// I386:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002349// I386:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00002350// I386:#define __INT_MAX__ 2147483647
2351// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2352// I386:#define __LDBL_DIG__ 18
2353// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2354// I386:#define __LDBL_HAS_DENORM__ 1
2355// I386:#define __LDBL_HAS_INFINITY__ 1
2356// I386:#define __LDBL_HAS_QUIET_NAN__ 1
2357// I386:#define __LDBL_MANT_DIG__ 64
2358// I386:#define __LDBL_MAX_10_EXP__ 4932
2359// I386:#define __LDBL_MAX_EXP__ 16384
2360// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2361// I386:#define __LDBL_MIN_10_EXP__ (-4931)
2362// I386:#define __LDBL_MIN_EXP__ (-16381)
2363// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2364// I386:#define __LITTLE_ENDIAN__ 1
2365// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
2366// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002367// I386-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00002368// I386:#define __NO_MATH_INLINES 1
2369// I386:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00002370// I386:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00002371// I386:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002372// I386:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002373// I386:#define __SCHAR_MAX__ 127
2374// I386:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002375// I386:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00002376// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002377// I386:#define __SIZEOF_DOUBLE__ 8
2378// I386:#define __SIZEOF_FLOAT__ 4
2379// I386:#define __SIZEOF_INT__ 4
2380// I386:#define __SIZEOF_LONG_DOUBLE__ 12
2381// I386:#define __SIZEOF_LONG_LONG__ 8
2382// I386:#define __SIZEOF_LONG__ 4
2383// I386:#define __SIZEOF_POINTER__ 4
2384// I386:#define __SIZEOF_PTRDIFF_T__ 4
2385// I386:#define __SIZEOF_SHORT__ 2
2386// I386:#define __SIZEOF_SIZE_T__ 4
2387// I386:#define __SIZEOF_WCHAR_T__ 4
2388// I386:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002389// I386:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00002390// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002391// I386:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002392// I386:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002393// I386:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002394// I386:#define __UINT16_TYPE__ unsigned short
2395// I386:#define __UINT32_C_SUFFIX__ U
2396// I386:#define __UINT32_MAX__ 4294967295U
2397// I386:#define __UINT32_TYPE__ unsigned int
2398// I386:#define __UINT64_C_SUFFIX__ ULL
2399// I386:#define __UINT64_MAX__ 18446744073709551615ULL
2400// I386:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002401// I386:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002402// I386:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002403// I386:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002404// I386:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002405// I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00002406// I386:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002407// I386:#define __UINTMAX_WIDTH__ 64
2408// I386:#define __UINTPTR_MAX__ 4294967295U
2409// I386:#define __UINTPTR_TYPE__ unsigned int
2410// I386:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002411// I386:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002412// I386:#define __UINT_FAST16_TYPE__ unsigned short
2413// I386:#define __UINT_FAST32_MAX__ 4294967295U
2414// I386:#define __UINT_FAST32_TYPE__ unsigned int
2415// I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2416// I386:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002417// I386:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002418// I386:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002419// I386:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002420// I386:#define __UINT_LEAST16_TYPE__ unsigned short
2421// I386:#define __UINT_LEAST32_MAX__ 4294967295U
2422// I386:#define __UINT_LEAST32_TYPE__ unsigned int
2423// I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2424// I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002425// I386:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002426// I386:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00002427// I386:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002428// I386:#define __WCHAR_MAX__ 2147483647
2429// I386:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002430// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002431// I386:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002432// I386:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002433// I386:#define __i386 1
2434// I386:#define __i386__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002435// I386:#define i386 1
2436//
James Y Knightc97efa42016-02-11 16:51:29 +00002437// 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 +00002438// 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 +00002439//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002440// I386-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002441// I386-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002442// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002443// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
2444// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
2445// I386-LINUX:#define __CHAR_BIT__ 8
2446// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2447// I386-LINUX:#define __DBL_DIG__ 15
2448// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2449// I386-LINUX:#define __DBL_HAS_DENORM__ 1
2450// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
2451// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2452// I386-LINUX:#define __DBL_MANT_DIG__ 53
2453// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
2454// I386-LINUX:#define __DBL_MAX_EXP__ 1024
2455// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2456// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2457// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
2458// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002459// I386-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002460// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2461// I386-LINUX:#define __FLT_DIG__ 6
2462// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2463// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
2464// I386-LINUX:#define __FLT_HAS_DENORM__ 1
2465// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
2466// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2467// I386-LINUX:#define __FLT_MANT_DIG__ 24
2468// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
2469// I386-LINUX:#define __FLT_MAX_EXP__ 128
2470// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2471// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2472// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
2473// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2474// I386-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002475// I386-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002476// I386-LINUX:#define __INT16_FMTd__ "hd"
2477// I386-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002478// I386-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00002479// I386-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002480// I386-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002481// I386-LINUX:#define __INT32_FMTd__ "d"
2482// I386-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002483// I386-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002484// I386-LINUX:#define __INT32_TYPE__ int
2485// I386-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002486// I386-LINUX:#define __INT64_FMTd__ "lld"
2487// I386-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002488// I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002489// I386-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002490// I386-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002491// I386-LINUX:#define __INT8_FMTd__ "hhd"
2492// I386-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002493// I386-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002494// I386-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002495// I386-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002496// I386-LINUX:#define __INTMAX_FMTd__ "lld"
2497// I386-LINUX:#define __INTMAX_FMTi__ "lli"
Douglas Gregore6d6e512011-01-12 21:19:25 +00002498// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2499// I386-LINUX:#define __INTMAX_TYPE__ long long int
2500// I386-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002501// I386-LINUX:#define __INTPTR_FMTd__ "d"
2502// I386-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002503// I386-LINUX:#define __INTPTR_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002504// I386-LINUX:#define __INTPTR_TYPE__ int
2505// I386-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002506// I386-LINUX:#define __INT_FAST16_FMTd__ "hd"
2507// I386-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002508// I386-LINUX:#define __INT_FAST16_MAX__ 32767
2509// I386-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002510// I386-LINUX:#define __INT_FAST32_FMTd__ "d"
2511// I386-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002512// I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
2513// I386-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002514// I386-LINUX:#define __INT_FAST64_FMTd__ "lld"
2515// I386-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002516// I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
2517// I386-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002518// I386-LINUX:#define __INT_FAST8_FMTd__ "hhd"
2519// I386-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002520// I386-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002521// I386-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002522// I386-LINUX:#define __INT_LEAST16_FMTd__ "hd"
2523// I386-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002524// I386-LINUX:#define __INT_LEAST16_MAX__ 32767
2525// I386-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002526// I386-LINUX:#define __INT_LEAST32_FMTd__ "d"
2527// I386-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002528// I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
2529// I386-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002530// I386-LINUX:#define __INT_LEAST64_FMTd__ "lld"
2531// I386-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002532// I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2533// I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002534// I386-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
2535// I386-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002536// I386-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002537// I386-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002538// I386-LINUX:#define __INT_MAX__ 2147483647
2539// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2540// I386-LINUX:#define __LDBL_DIG__ 18
2541// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2542// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
2543// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
2544// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2545// I386-LINUX:#define __LDBL_MANT_DIG__ 64
2546// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2547// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
2548// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2549// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2550// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2551// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2552// I386-LINUX:#define __LITTLE_ENDIAN__ 1
2553// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2554// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002555// I386-LINUX-NOT:#define __LP64__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002556// I386-LINUX:#define __NO_MATH_INLINES 1
2557// I386-LINUX:#define __POINTER_WIDTH__ 32
2558// I386-LINUX:#define __PTRDIFF_TYPE__ int
2559// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002560// I386-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002561// I386-LINUX:#define __SCHAR_MAX__ 127
2562// I386-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002563// I386-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002564// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2565// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
2566// I386-LINUX:#define __SIZEOF_FLOAT__ 4
2567// I386-LINUX:#define __SIZEOF_INT__ 4
2568// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
2569// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
2570// I386-LINUX:#define __SIZEOF_LONG__ 4
2571// I386-LINUX:#define __SIZEOF_POINTER__ 4
2572// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2573// I386-LINUX:#define __SIZEOF_SHORT__ 2
2574// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
2575// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
2576// I386-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002577// I386-LINUX:#define __SIZE_MAX__ 4294967295U
Douglas Gregore6d6e512011-01-12 21:19:25 +00002578// I386-LINUX:#define __SIZE_TYPE__ unsigned int
2579// I386-LINUX:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002580// I386-LINUX-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00002581// I386-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002582// I386-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002583// I386-LINUX:#define __UINT16_TYPE__ unsigned short
2584// I386-LINUX:#define __UINT32_C_SUFFIX__ U
2585// I386-LINUX:#define __UINT32_MAX__ 4294967295U
2586// I386-LINUX:#define __UINT32_TYPE__ unsigned int
2587// I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
2588// I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
2589// I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002590// I386-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002591// I386-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002592// I386-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002593// I386-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002594// I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002595// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002596// I386-LINUX:#define __UINTMAX_WIDTH__ 64
2597// I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
2598// I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
2599// I386-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002600// I386-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002601// I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
2602// I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
2603// I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
2604// I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2605// I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002606// I386-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002607// I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002608// I386-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002609// I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
2610// I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
2611// I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
2612// I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2613// I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002614// I386-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002615// I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002616// I386-LINUX:#define __USER_LABEL_PREFIX__
2617// I386-LINUX:#define __WCHAR_MAX__ 2147483647
2618// I386-LINUX:#define __WCHAR_TYPE__ int
2619// I386-LINUX:#define __WCHAR_WIDTH__ 32
2620// I386-LINUX:#define __WINT_TYPE__ unsigned int
2621// I386-LINUX:#define __WINT_WIDTH__ 32
2622// I386-LINUX:#define __i386 1
2623// I386-LINUX:#define __i386__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00002624// I386-LINUX:#define i386 1
2625//
James Y Knightc97efa42016-02-11 16:51:29 +00002626// 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 +00002627// 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 +00002628//
2629// I386-NETBSD-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002630// I386-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002631// I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2632// I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
2633// I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
2634// I386-NETBSD:#define __CHAR_BIT__ 8
2635// I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2636// I386-NETBSD:#define __DBL_DIG__ 15
2637// I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2638// I386-NETBSD:#define __DBL_HAS_DENORM__ 1
2639// I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
2640// I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2641// I386-NETBSD:#define __DBL_MANT_DIG__ 53
2642// I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
2643// I386-NETBSD:#define __DBL_MAX_EXP__ 1024
2644// I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2645// I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2646// I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2647// I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002648// I386-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002649// I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2650// I386-NETBSD:#define __FLT_DIG__ 6
2651// I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2652// I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
2653// I386-NETBSD:#define __FLT_HAS_DENORM__ 1
2654// I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
2655// I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2656// I386-NETBSD:#define __FLT_MANT_DIG__ 24
2657// I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
2658// I386-NETBSD:#define __FLT_MAX_EXP__ 128
2659// I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2660// I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2661// I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
2662// I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2663// I386-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002664// I386-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002665// I386-NETBSD:#define __INT16_FMTd__ "hd"
2666// I386-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002667// I386-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002668// I386-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002669// I386-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002670// I386-NETBSD:#define __INT32_FMTd__ "d"
2671// I386-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002672// I386-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002673// I386-NETBSD:#define __INT32_TYPE__ int
2674// I386-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002675// I386-NETBSD:#define __INT64_FMTd__ "lld"
2676// I386-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002677// I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002678// I386-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002679// I386-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002680// I386-NETBSD:#define __INT8_FMTd__ "hhd"
2681// I386-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002682// I386-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002683// I386-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002684// I386-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002685// I386-NETBSD:#define __INTMAX_FMTd__ "lld"
2686// I386-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002687// I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2688// I386-NETBSD:#define __INTMAX_TYPE__ long long int
2689// I386-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002690// I386-NETBSD:#define __INTPTR_FMTd__ "d"
2691// I386-NETBSD:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002692// I386-NETBSD:#define __INTPTR_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002693// I386-NETBSD:#define __INTPTR_TYPE__ int
2694// I386-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002695// I386-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2696// I386-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002697// I386-NETBSD:#define __INT_FAST16_MAX__ 32767
2698// I386-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002699// I386-NETBSD:#define __INT_FAST32_FMTd__ "d"
2700// I386-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002701// I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2702// I386-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002703// I386-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2704// I386-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002705// I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2706// I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002707// I386-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2708// I386-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002709// I386-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002710// I386-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002711// I386-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2712// I386-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002713// I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
2714// I386-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002715// I386-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2716// I386-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002717// I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2718// I386-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002719// I386-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2720// I386-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002721// I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2722// I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002723// I386-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2724// I386-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002725// I386-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002726// I386-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002727// I386-NETBSD:#define __INT_MAX__ 2147483647
2728// I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2729// I386-NETBSD:#define __LDBL_DIG__ 18
2730// I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2731// I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
2732// I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2733// I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2734// I386-NETBSD:#define __LDBL_MANT_DIG__ 64
2735// I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
2736// I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
2737// I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2738// I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
2739// I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
2740// I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2741// I386-NETBSD:#define __LITTLE_ENDIAN__ 1
2742// I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2743// I386-NETBSD:#define __LONG_MAX__ 2147483647L
2744// I386-NETBSD-NOT:#define __LP64__
2745// I386-NETBSD:#define __NO_MATH_INLINES 1
2746// I386-NETBSD:#define __POINTER_WIDTH__ 32
2747// I386-NETBSD:#define __PTRDIFF_TYPE__ int
2748// I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002749// I386-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002750// I386-NETBSD:#define __SCHAR_MAX__ 127
2751// I386-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002752// I386-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002753// I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2754// I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
2755// I386-NETBSD:#define __SIZEOF_FLOAT__ 4
2756// I386-NETBSD:#define __SIZEOF_INT__ 4
2757// I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
2758// I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2759// I386-NETBSD:#define __SIZEOF_LONG__ 4
2760// I386-NETBSD:#define __SIZEOF_POINTER__ 4
2761// I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2762// I386-NETBSD:#define __SIZEOF_SHORT__ 2
2763// I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
2764// I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2765// I386-NETBSD:#define __SIZEOF_WINT_T__ 4
2766// I386-NETBSD:#define __SIZE_MAX__ 4294967295U
2767// I386-NETBSD:#define __SIZE_TYPE__ unsigned int
2768// I386-NETBSD:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002769// I386-NETBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
James Y Knightc97efa42016-02-11 16:51:29 +00002770// I386-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002771// I386-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002772// I386-NETBSD:#define __UINT16_TYPE__ unsigned short
2773// I386-NETBSD:#define __UINT32_C_SUFFIX__ U
2774// I386-NETBSD:#define __UINT32_MAX__ 4294967295U
2775// I386-NETBSD:#define __UINT32_TYPE__ unsigned int
2776// I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2777// I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2778// I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002779// I386-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002780// I386-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002781// I386-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002782// I386-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002783// I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002784// I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002785// I386-NETBSD:#define __UINTMAX_WIDTH__ 64
2786// I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
2787// I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
2788// I386-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002789// I386-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002790// I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2791// I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2792// I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2793// I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2794// I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002795// I386-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002796// I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002797// I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002798// I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2799// I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2800// I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2801// I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2802// I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002803// I386-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002804// I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002805// I386-NETBSD:#define __USER_LABEL_PREFIX__
2806// I386-NETBSD:#define __WCHAR_MAX__ 2147483647
2807// I386-NETBSD:#define __WCHAR_TYPE__ int
2808// I386-NETBSD:#define __WCHAR_WIDTH__ 32
2809// I386-NETBSD:#define __WINT_TYPE__ int
2810// I386-NETBSD:#define __WINT_WIDTH__ 32
2811// I386-NETBSD:#define __i386 1
2812// I386-NETBSD:#define __i386__ 1
2813// I386-NETBSD:#define i386 1
2814//
James Y Knightc97efa42016-02-11 16:51:29 +00002815// 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 +00002816// I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
James Y Knightc97efa42016-02-11 16:51:29 +00002817// 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 +00002818// I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002819// 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 +00002820// I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
2821
James Y Knightc97efa42016-02-11 16:51:29 +00002822// RUN: %clang_cc1 -E -dM -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2823// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2824// RUN: %clang_cc1 -E -dM -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2825// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2826// I386-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00002827
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002828//
Richard Smith59139022016-09-30 22:41:36 +00002829// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-C %s
2830// 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 +00002831//
2832// MIPS32BE:#define MIPSEB 1
2833// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002834// MIPS32BE-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002835// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00002836// MIPS32BE:#define _MIPS_ARCH "mips32r2"
2837// MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00002838// MIPS32BE:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002839// MIPS32BE:#define _MIPS_SIM _ABIO32
2840// MIPS32BE:#define _MIPS_SZINT 32
2841// MIPS32BE:#define _MIPS_SZLONG 32
2842// MIPS32BE:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00002843// MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00002844// MIPS32BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002845// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002846// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
2847// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
2848// MIPS32BE:#define __CHAR_BIT__ 8
2849// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
2850// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2851// MIPS32BE:#define __DBL_DIG__ 15
2852// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
2853// MIPS32BE:#define __DBL_HAS_DENORM__ 1
2854// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
2855// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
2856// MIPS32BE:#define __DBL_MANT_DIG__ 53
2857// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
2858// MIPS32BE:#define __DBL_MAX_EXP__ 1024
2859// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
2860// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
2861// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
2862// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002863// MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002864// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2865// MIPS32BE:#define __FLT_DIG__ 6
2866// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
2867// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
2868// MIPS32BE:#define __FLT_HAS_DENORM__ 1
2869// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
2870// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
2871// MIPS32BE:#define __FLT_MANT_DIG__ 24
2872// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
2873// MIPS32BE:#define __FLT_MAX_EXP__ 128
2874// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
2875// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
2876// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
2877// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
2878// MIPS32BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002879// MIPS32BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002880// MIPS32BE:#define __INT16_FMTd__ "hd"
2881// MIPS32BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002882// MIPS32BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002883// MIPS32BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002884// MIPS32BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002885// MIPS32BE:#define __INT32_FMTd__ "d"
2886// MIPS32BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002887// MIPS32BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002888// MIPS32BE:#define __INT32_TYPE__ int
2889// MIPS32BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002890// MIPS32BE:#define __INT64_FMTd__ "lld"
2891// MIPS32BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002892// MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002893// MIPS32BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002894// MIPS32BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002895// MIPS32BE:#define __INT8_FMTd__ "hhd"
2896// MIPS32BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002897// MIPS32BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002898// MIPS32BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002899// MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002900// MIPS32BE:#define __INTMAX_FMTd__ "lld"
2901// MIPS32BE:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002902// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
2903// MIPS32BE:#define __INTMAX_TYPE__ long long int
2904// MIPS32BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002905// MIPS32BE:#define __INTPTR_FMTd__ "ld"
2906// MIPS32BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002907// MIPS32BE:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002908// MIPS32BE:#define __INTPTR_TYPE__ long int
2909// MIPS32BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002910// MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
2911// MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002912// MIPS32BE:#define __INT_FAST16_MAX__ 32767
2913// MIPS32BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002914// MIPS32BE:#define __INT_FAST32_FMTd__ "d"
2915// MIPS32BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002916// MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
2917// MIPS32BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002918// MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
2919// MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002920// MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
2921// MIPS32BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002922// MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
2923// MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002924// MIPS32BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002925// MIPS32BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002926// MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
2927// MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002928// MIPS32BE:#define __INT_LEAST16_MAX__ 32767
2929// MIPS32BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002930// MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
2931// MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002932// MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
2933// MIPS32BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002934// MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
2935// MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002936// MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2937// MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002938// MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
2939// MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002940// MIPS32BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002941// MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002942// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002943// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002944// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002945// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002946// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
2947// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
2948// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
2949// MIPS32BE:#define __LDBL_MANT_DIG__ 53
2950// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
2951// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002952// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002953// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
2954// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002955// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002956// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
2957// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002958// MIPS32BE-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002959// MIPS32BE:#define __MIPSEB 1
2960// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002961// MIPS32BE:#define __POINTER_WIDTH__ 32
2962// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
2963// MIPS32BE:#define __PTRDIFF_TYPE__ int
2964// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002965// MIPS32BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002966// MIPS32BE:#define __SCHAR_MAX__ 127
2967// MIPS32BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002968// MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002969// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
2970// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
2971// MIPS32BE:#define __SIZEOF_FLOAT__ 4
2972// MIPS32BE:#define __SIZEOF_INT__ 4
2973// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
2974// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
2975// MIPS32BE:#define __SIZEOF_LONG__ 4
2976// MIPS32BE:#define __SIZEOF_POINTER__ 4
2977// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
2978// MIPS32BE:#define __SIZEOF_SHORT__ 2
2979// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
2980// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
2981// MIPS32BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002982// MIPS32BE:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002983// MIPS32BE:#define __SIZE_TYPE__ unsigned int
2984// MIPS32BE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002985// MIPS32BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002986// MIPS32BE:#define __STDC_HOSTED__ 0
Richard Smith59139022016-09-30 22:41:36 +00002987// MIPS32BE-C:#define __STDC_VERSION__ 201112L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002988// MIPS32BE:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002989// MIPS32BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002990// MIPS32BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002991// MIPS32BE:#define __UINT16_TYPE__ unsigned short
2992// MIPS32BE:#define __UINT32_C_SUFFIX__ U
2993// MIPS32BE:#define __UINT32_MAX__ 4294967295U
2994// MIPS32BE:#define __UINT32_TYPE__ unsigned int
2995// MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
2996// MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
2997// MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002998// MIPS32BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002999// MIPS32BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003000// MIPS32BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003001// MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003002// MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003003// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003004// MIPS32BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003005// MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003006// MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003007// MIPS32BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003008// MIPS32BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003009// MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
3010// MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
3011// MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
3012// MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3013// MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003014// MIPS32BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003015// MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003016// MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003017// MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
3018// MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
3019// MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
3020// MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3021// MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003022// MIPS32BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003023// MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003024// MIPS32BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003025// MIPS32BE:#define __WCHAR_MAX__ 2147483647
3026// MIPS32BE:#define __WCHAR_TYPE__ int
3027// MIPS32BE:#define __WCHAR_WIDTH__ 32
3028// MIPS32BE:#define __WINT_TYPE__ int
3029// MIPS32BE:#define __WINT_WIDTH__ 32
3030// MIPS32BE:#define __clang__ 1
3031// MIPS32BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003032// MIPS32BE:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003033// MIPS32BE:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003034// MIPS32BE:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003035// MIPS32BE:#define __mips_hard_float 1
3036// MIPS32BE:#define __mips_o32 1
3037// MIPS32BE:#define _mips 1
3038// MIPS32BE:#define mips 1
3039//
James Y Knightc97efa42016-02-11 16:51:29 +00003040// 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 +00003041//
3042// MIPS32EL:#define MIPSEL 1
3043// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003044// MIPS32EL-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003045// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003046// MIPS32EL:#define _MIPS_ARCH "mips32r2"
3047// MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003048// MIPS32EL:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003049// MIPS32EL:#define _MIPS_SIM _ABIO32
3050// MIPS32EL:#define _MIPS_SZINT 32
3051// MIPS32EL:#define _MIPS_SZLONG 32
3052// MIPS32EL:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003053// MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003054// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003055// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
3056// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
3057// MIPS32EL:#define __CHAR_BIT__ 8
3058// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
3059// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3060// MIPS32EL:#define __DBL_DIG__ 15
3061// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
3062// MIPS32EL:#define __DBL_HAS_DENORM__ 1
3063// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
3064// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
3065// MIPS32EL:#define __DBL_MANT_DIG__ 53
3066// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
3067// MIPS32EL:#define __DBL_MAX_EXP__ 1024
3068// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
3069// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
3070// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
3071// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003072// MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003073// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3074// MIPS32EL:#define __FLT_DIG__ 6
3075// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
3076// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
3077// MIPS32EL:#define __FLT_HAS_DENORM__ 1
3078// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
3079// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
3080// MIPS32EL:#define __FLT_MANT_DIG__ 24
3081// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
3082// MIPS32EL:#define __FLT_MAX_EXP__ 128
3083// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
3084// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
3085// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
3086// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
3087// MIPS32EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003088// MIPS32EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003089// MIPS32EL:#define __INT16_FMTd__ "hd"
3090// MIPS32EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003091// MIPS32EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003092// MIPS32EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003093// MIPS32EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003094// MIPS32EL:#define __INT32_FMTd__ "d"
3095// MIPS32EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003096// MIPS32EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003097// MIPS32EL:#define __INT32_TYPE__ int
3098// MIPS32EL:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003099// MIPS32EL:#define __INT64_FMTd__ "lld"
3100// MIPS32EL:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003101// MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003102// MIPS32EL:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003103// MIPS32EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003104// MIPS32EL:#define __INT8_FMTd__ "hhd"
3105// MIPS32EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003106// MIPS32EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003107// MIPS32EL:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003108// MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003109// MIPS32EL:#define __INTMAX_FMTd__ "lld"
3110// MIPS32EL:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003111// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
3112// MIPS32EL:#define __INTMAX_TYPE__ long long int
3113// MIPS32EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003114// MIPS32EL:#define __INTPTR_FMTd__ "ld"
3115// MIPS32EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003116// MIPS32EL:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003117// MIPS32EL:#define __INTPTR_TYPE__ long int
3118// MIPS32EL:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003119// MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
3120// MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003121// MIPS32EL:#define __INT_FAST16_MAX__ 32767
3122// MIPS32EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003123// MIPS32EL:#define __INT_FAST32_FMTd__ "d"
3124// MIPS32EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003125// MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
3126// MIPS32EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003127// MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
3128// MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003129// MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
3130// MIPS32EL:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003131// MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
3132// MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003133// MIPS32EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003134// MIPS32EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003135// MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
3136// MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003137// MIPS32EL:#define __INT_LEAST16_MAX__ 32767
3138// MIPS32EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003139// MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
3140// MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003141// MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
3142// MIPS32EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003143// MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
3144// MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003145// MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3146// MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003147// MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
3148// MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003149// MIPS32EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003150// MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003151// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003152// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003153// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003154// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003155// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
3156// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
3157// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
3158// MIPS32EL:#define __LDBL_MANT_DIG__ 53
3159// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
3160// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003161// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003162// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
3163// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003164// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00003165// MIPS32EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003166// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
3167// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003168// MIPS32EL-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003169// MIPS32EL:#define __MIPSEL 1
3170// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003171// MIPS32EL:#define __POINTER_WIDTH__ 32
3172// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
3173// MIPS32EL:#define __PTRDIFF_TYPE__ int
3174// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003175// MIPS32EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003176// MIPS32EL:#define __SCHAR_MAX__ 127
3177// MIPS32EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003178// MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003179// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
3180// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
3181// MIPS32EL:#define __SIZEOF_FLOAT__ 4
3182// MIPS32EL:#define __SIZEOF_INT__ 4
3183// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
3184// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
3185// MIPS32EL:#define __SIZEOF_LONG__ 4
3186// MIPS32EL:#define __SIZEOF_POINTER__ 4
3187// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
3188// MIPS32EL:#define __SIZEOF_SHORT__ 2
3189// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
3190// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
3191// MIPS32EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003192// MIPS32EL:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003193// MIPS32EL:#define __SIZE_TYPE__ unsigned int
3194// MIPS32EL:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003195// MIPS32EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003196// MIPS32EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003197// MIPS32EL:#define __UINT16_TYPE__ unsigned short
3198// MIPS32EL:#define __UINT32_C_SUFFIX__ U
3199// MIPS32EL:#define __UINT32_MAX__ 4294967295U
3200// MIPS32EL:#define __UINT32_TYPE__ unsigned int
3201// MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
3202// MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
3203// MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003204// MIPS32EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003205// MIPS32EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003206// MIPS32EL:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003207// MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003208// MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003209// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003210// MIPS32EL:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003211// MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003212// MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003213// MIPS32EL:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003214// MIPS32EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003215// MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
3216// MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
3217// MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
3218// MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3219// MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003220// MIPS32EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003221// MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003222// MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003223// MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
3224// MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
3225// MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
3226// MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3227// MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003228// MIPS32EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003229// MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003230// MIPS32EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003231// MIPS32EL:#define __WCHAR_MAX__ 2147483647
3232// MIPS32EL:#define __WCHAR_TYPE__ int
3233// MIPS32EL:#define __WCHAR_WIDTH__ 32
3234// MIPS32EL:#define __WINT_TYPE__ int
3235// MIPS32EL:#define __WINT_WIDTH__ 32
3236// MIPS32EL:#define __clang__ 1
3237// MIPS32EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003238// MIPS32EL:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003239// MIPS32EL:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003240// MIPS32EL:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003241// MIPS32EL:#define __mips_hard_float 1
3242// MIPS32EL:#define __mips_o32 1
3243// MIPS32EL:#define _mips 1
3244// MIPS32EL:#define mips 1
3245//
Simon Atanasyan495523e42015-01-22 23:16:48 +00003246// RUN: %clang_cc1 -E -dM -ffreestanding \
3247// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
Richard Smith59139022016-09-30 22:41:36 +00003248// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-C %s
3249// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding \
3250// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
3251// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-CXX %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003252//
3253// MIPSN32BE: #define MIPSEB 1
3254// MIPSN32BE: #define _ABIN32 2
3255// MIPSN32BE: #define _ILP32 1
3256// MIPSN32BE: #define _MIPSEB 1
3257// MIPSN32BE: #define _MIPS_ARCH "mips64r2"
3258// MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
3259// MIPSN32BE: #define _MIPS_FPSET 32
3260// MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
3261// MIPSN32BE: #define _MIPS_SIM _ABIN32
3262// MIPSN32BE: #define _MIPS_SZINT 32
3263// MIPSN32BE: #define _MIPS_SZLONG 32
3264// MIPSN32BE: #define _MIPS_SZPTR 32
3265// MIPSN32BE: #define __ATOMIC_ACQUIRE 2
3266// MIPSN32BE: #define __ATOMIC_ACQ_REL 4
3267// MIPSN32BE: #define __ATOMIC_CONSUME 1
3268// MIPSN32BE: #define __ATOMIC_RELAXED 0
3269// MIPSN32BE: #define __ATOMIC_RELEASE 3
3270// MIPSN32BE: #define __ATOMIC_SEQ_CST 5
3271// MIPSN32BE: #define __BIG_ENDIAN__ 1
3272// MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3273// MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
3274// MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
3275// MIPSN32BE: #define __CHAR_BIT__ 8
3276// MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
3277// MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3278// MIPSN32BE: #define __DBL_DIG__ 15
3279// MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
3280// MIPSN32BE: #define __DBL_HAS_DENORM__ 1
3281// MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
3282// MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
3283// MIPSN32BE: #define __DBL_MANT_DIG__ 53
3284// MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
3285// MIPSN32BE: #define __DBL_MAX_EXP__ 1024
3286// MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
3287// MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
3288// MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
3289// MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003290// MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003291// MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
3292// MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3293// MIPSN32BE: #define __FLT_DIG__ 6
3294// MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
3295// MIPSN32BE: #define __FLT_EVAL_METHOD__ 0
3296// MIPSN32BE: #define __FLT_HAS_DENORM__ 1
3297// MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
3298// MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
3299// MIPSN32BE: #define __FLT_MANT_DIG__ 24
3300// MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
3301// MIPSN32BE: #define __FLT_MAX_EXP__ 128
3302// MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
3303// MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
3304// MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
3305// MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
3306// MIPSN32BE: #define __FLT_RADIX__ 2
3307// MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3308// MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3309// MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3310// MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3311// MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3312// MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3313// MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3314// MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3315// MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3316// MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3317// MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3318// MIPSN32BE: #define __GNUC_MINOR__ 2
3319// MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
Richard Smith59139022016-09-30 22:41:36 +00003320// MIPSN32BE-C: #define __GNUC_STDC_INLINE__ 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003321// MIPSN32BE: #define __GNUC__ 4
3322// MIPSN32BE: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003323// MIPSN32BE: #define __ILP32__ 1
3324// MIPSN32BE: #define __INT16_C_SUFFIX__
3325// MIPSN32BE: #define __INT16_FMTd__ "hd"
3326// MIPSN32BE: #define __INT16_FMTi__ "hi"
3327// MIPSN32BE: #define __INT16_MAX__ 32767
3328// MIPSN32BE: #define __INT16_TYPE__ short
3329// MIPSN32BE: #define __INT32_C_SUFFIX__
3330// MIPSN32BE: #define __INT32_FMTd__ "d"
3331// MIPSN32BE: #define __INT32_FMTi__ "i"
3332// MIPSN32BE: #define __INT32_MAX__ 2147483647
3333// MIPSN32BE: #define __INT32_TYPE__ int
3334// MIPSN32BE: #define __INT64_C_SUFFIX__ LL
3335// MIPSN32BE: #define __INT64_FMTd__ "lld"
3336// MIPSN32BE: #define __INT64_FMTi__ "lli"
3337// MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
3338// MIPSN32BE: #define __INT64_TYPE__ long long int
3339// MIPSN32BE: #define __INT8_C_SUFFIX__
3340// MIPSN32BE: #define __INT8_FMTd__ "hhd"
3341// MIPSN32BE: #define __INT8_FMTi__ "hhi"
3342// MIPSN32BE: #define __INT8_MAX__ 127
3343// MIPSN32BE: #define __INT8_TYPE__ signed char
3344// MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
3345// MIPSN32BE: #define __INTMAX_FMTd__ "lld"
3346// MIPSN32BE: #define __INTMAX_FMTi__ "lli"
3347// MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
3348// MIPSN32BE: #define __INTMAX_TYPE__ long long int
3349// MIPSN32BE: #define __INTMAX_WIDTH__ 64
3350// MIPSN32BE: #define __INTPTR_FMTd__ "ld"
3351// MIPSN32BE: #define __INTPTR_FMTi__ "li"
3352// MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
3353// MIPSN32BE: #define __INTPTR_TYPE__ long int
3354// MIPSN32BE: #define __INTPTR_WIDTH__ 32
3355// MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
3356// MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
3357// MIPSN32BE: #define __INT_FAST16_MAX__ 32767
3358// MIPSN32BE: #define __INT_FAST16_TYPE__ short
3359// MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
3360// MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
3361// MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
3362// MIPSN32BE: #define __INT_FAST32_TYPE__ int
3363// MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
3364// MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
3365// MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
3366// MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
3367// MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
3368// MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
3369// MIPSN32BE: #define __INT_FAST8_MAX__ 127
3370// MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
3371// MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
3372// MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
3373// MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
3374// MIPSN32BE: #define __INT_LEAST16_TYPE__ short
3375// MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
3376// MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
3377// MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
3378// MIPSN32BE: #define __INT_LEAST32_TYPE__ int
3379// MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
3380// MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
3381// MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3382// MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
3383// MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
3384// MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
3385// MIPSN32BE: #define __INT_LEAST8_MAX__ 127
3386// MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
3387// MIPSN32BE: #define __INT_MAX__ 2147483647
3388// MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3389// MIPSN32BE: #define __LDBL_DIG__ 33
3390// MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3391// MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
3392// MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
3393// MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
3394// MIPSN32BE: #define __LDBL_MANT_DIG__ 113
3395// MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
3396// MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
3397// MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3398// MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
3399// MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
3400// MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3401// MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
3402// MIPSN32BE: #define __LONG_MAX__ 2147483647L
3403// MIPSN32BE: #define __MIPSEB 1
3404// MIPSN32BE: #define __MIPSEB__ 1
3405// MIPSN32BE: #define __NO_INLINE__ 1
3406// MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
3407// MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
3408// MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
3409// MIPSN32BE: #define __POINTER_WIDTH__ 32
3410// MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
3411// MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
3412// MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
3413// MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
3414// MIPSN32BE: #define __PTRDIFF_TYPE__ int
3415// MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
3416// MIPSN32BE: #define __REGISTER_PREFIX__
3417// MIPSN32BE: #define __SCHAR_MAX__ 127
3418// MIPSN32BE: #define __SHRT_MAX__ 32767
3419// MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
3420// MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
3421// MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
3422// MIPSN32BE: #define __SIZEOF_FLOAT__ 4
3423// MIPSN32BE: #define __SIZEOF_INT__ 4
3424// MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
3425// MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
3426// MIPSN32BE: #define __SIZEOF_LONG__ 4
3427// MIPSN32BE: #define __SIZEOF_POINTER__ 4
3428// MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
3429// MIPSN32BE: #define __SIZEOF_SHORT__ 2
3430// MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
3431// MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
3432// MIPSN32BE: #define __SIZEOF_WINT_T__ 4
3433// MIPSN32BE: #define __SIZE_FMTX__ "X"
3434// MIPSN32BE: #define __SIZE_FMTo__ "o"
3435// MIPSN32BE: #define __SIZE_FMTu__ "u"
3436// MIPSN32BE: #define __SIZE_FMTx__ "x"
3437// MIPSN32BE: #define __SIZE_MAX__ 4294967295U
3438// MIPSN32BE: #define __SIZE_TYPE__ unsigned int
3439// MIPSN32BE: #define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003440// MIPSN32BE-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
Simon Atanasyan495523e42015-01-22 23:16:48 +00003441// MIPSN32BE: #define __STDC_HOSTED__ 0
3442// MIPSN32BE: #define __STDC_UTF_16__ 1
3443// MIPSN32BE: #define __STDC_UTF_32__ 1
Richard Smith59139022016-09-30 22:41:36 +00003444// MIPSN32BE-C: #define __STDC_VERSION__ 201112L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003445// MIPSN32BE: #define __STDC__ 1
3446// MIPSN32BE: #define __UINT16_C_SUFFIX__
3447// MIPSN32BE: #define __UINT16_FMTX__ "hX"
3448// MIPSN32BE: #define __UINT16_FMTo__ "ho"
3449// MIPSN32BE: #define __UINT16_FMTu__ "hu"
3450// MIPSN32BE: #define __UINT16_FMTx__ "hx"
3451// MIPSN32BE: #define __UINT16_MAX__ 65535
3452// MIPSN32BE: #define __UINT16_TYPE__ unsigned short
3453// MIPSN32BE: #define __UINT32_C_SUFFIX__ U
3454// MIPSN32BE: #define __UINT32_FMTX__ "X"
3455// MIPSN32BE: #define __UINT32_FMTo__ "o"
3456// MIPSN32BE: #define __UINT32_FMTu__ "u"
3457// MIPSN32BE: #define __UINT32_FMTx__ "x"
3458// MIPSN32BE: #define __UINT32_MAX__ 4294967295U
3459// MIPSN32BE: #define __UINT32_TYPE__ unsigned int
3460// MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
3461// MIPSN32BE: #define __UINT64_FMTX__ "llX"
3462// MIPSN32BE: #define __UINT64_FMTo__ "llo"
3463// MIPSN32BE: #define __UINT64_FMTu__ "llu"
3464// MIPSN32BE: #define __UINT64_FMTx__ "llx"
3465// MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
3466// MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
3467// MIPSN32BE: #define __UINT8_C_SUFFIX__
3468// MIPSN32BE: #define __UINT8_FMTX__ "hhX"
3469// MIPSN32BE: #define __UINT8_FMTo__ "hho"
3470// MIPSN32BE: #define __UINT8_FMTu__ "hhu"
3471// MIPSN32BE: #define __UINT8_FMTx__ "hhx"
3472// MIPSN32BE: #define __UINT8_MAX__ 255
3473// MIPSN32BE: #define __UINT8_TYPE__ unsigned char
3474// MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
3475// MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
3476// MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
3477// MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
3478// MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
3479// MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
3480// MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
3481// MIPSN32BE: #define __UINTMAX_WIDTH__ 64
3482// MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
3483// MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
3484// MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
3485// MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
3486// MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
3487// MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
3488// MIPSN32BE: #define __UINTPTR_WIDTH__ 32
3489// MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
3490// MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
3491// MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
3492// MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
3493// MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
3494// MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
3495// MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
3496// MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
3497// MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
3498// MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
3499// MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
3500// MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
3501// MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
3502// MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
3503// MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
3504// MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
3505// MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3506// MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
3507// MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
3508// MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
3509// MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
3510// MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
3511// MIPSN32BE: #define __UINT_FAST8_MAX__ 255
3512// MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
3513// MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
3514// MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
3515// MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
3516// MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
3517// MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
3518// MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
3519// MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
3520// MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
3521// MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
3522// MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
3523// MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
3524// MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
3525// MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
3526// MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
3527// MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
3528// MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
3529// MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3530// MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
3531// MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
3532// MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
3533// MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
3534// MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
3535// MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
3536// MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003537// MIPSN32BE: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003538// MIPSN32BE: #define __WCHAR_MAX__ 2147483647
3539// MIPSN32BE: #define __WCHAR_TYPE__ int
3540// MIPSN32BE: #define __WCHAR_WIDTH__ 32
3541// MIPSN32BE: #define __WINT_TYPE__ int
3542// MIPSN32BE: #define __WINT_WIDTH__ 32
3543// MIPSN32BE: #define __clang__ 1
3544// MIPSN32BE: #define __llvm__ 1
3545// MIPSN32BE: #define __mips 64
3546// MIPSN32BE: #define __mips64 1
3547// MIPSN32BE: #define __mips64__ 1
3548// MIPSN32BE: #define __mips__ 1
3549// MIPSN32BE: #define __mips_fpr 64
3550// MIPSN32BE: #define __mips_hard_float 1
3551// MIPSN32BE: #define __mips_isa_rev 2
3552// MIPSN32BE: #define __mips_n32 1
3553// MIPSN32BE: #define _mips 1
3554// MIPSN32BE: #define mips 1
3555//
3556// RUN: %clang_cc1 -E -dM -ffreestanding \
3557// RUN: -triple=mips64el-none-none -target-abi n32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00003558// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003559//
3560// MIPSN32EL: #define MIPSEL 1
3561// MIPSN32EL: #define _ABIN32 2
3562// MIPSN32EL: #define _ILP32 1
3563// MIPSN32EL: #define _MIPSEL 1
3564// MIPSN32EL: #define _MIPS_ARCH "mips64r2"
3565// MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
3566// MIPSN32EL: #define _MIPS_FPSET 32
3567// MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
3568// MIPSN32EL: #define _MIPS_SIM _ABIN32
3569// MIPSN32EL: #define _MIPS_SZINT 32
3570// MIPSN32EL: #define _MIPS_SZLONG 32
3571// MIPSN32EL: #define _MIPS_SZPTR 32
3572// MIPSN32EL: #define __ATOMIC_ACQUIRE 2
3573// MIPSN32EL: #define __ATOMIC_ACQ_REL 4
3574// MIPSN32EL: #define __ATOMIC_CONSUME 1
3575// MIPSN32EL: #define __ATOMIC_RELAXED 0
3576// MIPSN32EL: #define __ATOMIC_RELEASE 3
3577// MIPSN32EL: #define __ATOMIC_SEQ_CST 5
3578// MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3579// MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
3580// MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
3581// MIPSN32EL: #define __CHAR_BIT__ 8
3582// MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
3583// MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3584// MIPSN32EL: #define __DBL_DIG__ 15
3585// MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
3586// MIPSN32EL: #define __DBL_HAS_DENORM__ 1
3587// MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
3588// MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
3589// MIPSN32EL: #define __DBL_MANT_DIG__ 53
3590// MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
3591// MIPSN32EL: #define __DBL_MAX_EXP__ 1024
3592// MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
3593// MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
3594// MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
3595// MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003596// MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003597// MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
3598// MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3599// MIPSN32EL: #define __FLT_DIG__ 6
3600// MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
3601// MIPSN32EL: #define __FLT_EVAL_METHOD__ 0
3602// MIPSN32EL: #define __FLT_HAS_DENORM__ 1
3603// MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
3604// MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
3605// MIPSN32EL: #define __FLT_MANT_DIG__ 24
3606// MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
3607// MIPSN32EL: #define __FLT_MAX_EXP__ 128
3608// MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
3609// MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
3610// MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
3611// MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
3612// MIPSN32EL: #define __FLT_RADIX__ 2
3613// MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3614// MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3615// MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3616// MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3617// MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3618// MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3619// MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3620// MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3621// MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3622// MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3623// MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3624// MIPSN32EL: #define __GNUC_MINOR__ 2
3625// MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
3626// MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
3627// MIPSN32EL: #define __GNUC__ 4
3628// MIPSN32EL: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003629// MIPSN32EL: #define __ILP32__ 1
3630// MIPSN32EL: #define __INT16_C_SUFFIX__
3631// MIPSN32EL: #define __INT16_FMTd__ "hd"
3632// MIPSN32EL: #define __INT16_FMTi__ "hi"
3633// MIPSN32EL: #define __INT16_MAX__ 32767
3634// MIPSN32EL: #define __INT16_TYPE__ short
3635// MIPSN32EL: #define __INT32_C_SUFFIX__
3636// MIPSN32EL: #define __INT32_FMTd__ "d"
3637// MIPSN32EL: #define __INT32_FMTi__ "i"
3638// MIPSN32EL: #define __INT32_MAX__ 2147483647
3639// MIPSN32EL: #define __INT32_TYPE__ int
3640// MIPSN32EL: #define __INT64_C_SUFFIX__ LL
3641// MIPSN32EL: #define __INT64_FMTd__ "lld"
3642// MIPSN32EL: #define __INT64_FMTi__ "lli"
3643// MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
3644// MIPSN32EL: #define __INT64_TYPE__ long long int
3645// MIPSN32EL: #define __INT8_C_SUFFIX__
3646// MIPSN32EL: #define __INT8_FMTd__ "hhd"
3647// MIPSN32EL: #define __INT8_FMTi__ "hhi"
3648// MIPSN32EL: #define __INT8_MAX__ 127
3649// MIPSN32EL: #define __INT8_TYPE__ signed char
3650// MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
3651// MIPSN32EL: #define __INTMAX_FMTd__ "lld"
3652// MIPSN32EL: #define __INTMAX_FMTi__ "lli"
3653// MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
3654// MIPSN32EL: #define __INTMAX_TYPE__ long long int
3655// MIPSN32EL: #define __INTMAX_WIDTH__ 64
3656// MIPSN32EL: #define __INTPTR_FMTd__ "ld"
3657// MIPSN32EL: #define __INTPTR_FMTi__ "li"
3658// MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
3659// MIPSN32EL: #define __INTPTR_TYPE__ long int
3660// MIPSN32EL: #define __INTPTR_WIDTH__ 32
3661// MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
3662// MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
3663// MIPSN32EL: #define __INT_FAST16_MAX__ 32767
3664// MIPSN32EL: #define __INT_FAST16_TYPE__ short
3665// MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
3666// MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
3667// MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
3668// MIPSN32EL: #define __INT_FAST32_TYPE__ int
3669// MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
3670// MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
3671// MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
3672// MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
3673// MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
3674// MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
3675// MIPSN32EL: #define __INT_FAST8_MAX__ 127
3676// MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
3677// MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
3678// MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
3679// MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
3680// MIPSN32EL: #define __INT_LEAST16_TYPE__ short
3681// MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
3682// MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
3683// MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
3684// MIPSN32EL: #define __INT_LEAST32_TYPE__ int
3685// MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
3686// MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
3687// MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3688// MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
3689// MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
3690// MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
3691// MIPSN32EL: #define __INT_LEAST8_MAX__ 127
3692// MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
3693// MIPSN32EL: #define __INT_MAX__ 2147483647
3694// MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3695// MIPSN32EL: #define __LDBL_DIG__ 33
3696// MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3697// MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
3698// MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
3699// MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
3700// MIPSN32EL: #define __LDBL_MANT_DIG__ 113
3701// MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
3702// MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
3703// MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3704// MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
3705// MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
3706// MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3707// MIPSN32EL: #define __LITTLE_ENDIAN__ 1
3708// MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
3709// MIPSN32EL: #define __LONG_MAX__ 2147483647L
3710// MIPSN32EL: #define __MIPSEL 1
3711// MIPSN32EL: #define __MIPSEL__ 1
3712// MIPSN32EL: #define __NO_INLINE__ 1
3713// MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
3714// MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
3715// MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
3716// MIPSN32EL: #define __POINTER_WIDTH__ 32
3717// MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
3718// MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
3719// MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
3720// MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
3721// MIPSN32EL: #define __PTRDIFF_TYPE__ int
3722// MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
3723// MIPSN32EL: #define __REGISTER_PREFIX__
3724// MIPSN32EL: #define __SCHAR_MAX__ 127
3725// MIPSN32EL: #define __SHRT_MAX__ 32767
3726// MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
3727// MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
3728// MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
3729// MIPSN32EL: #define __SIZEOF_FLOAT__ 4
3730// MIPSN32EL: #define __SIZEOF_INT__ 4
3731// MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
3732// MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
3733// MIPSN32EL: #define __SIZEOF_LONG__ 4
3734// MIPSN32EL: #define __SIZEOF_POINTER__ 4
3735// MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
3736// MIPSN32EL: #define __SIZEOF_SHORT__ 2
3737// MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
3738// MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
3739// MIPSN32EL: #define __SIZEOF_WINT_T__ 4
3740// MIPSN32EL: #define __SIZE_FMTX__ "X"
3741// MIPSN32EL: #define __SIZE_FMTo__ "o"
3742// MIPSN32EL: #define __SIZE_FMTu__ "u"
3743// MIPSN32EL: #define __SIZE_FMTx__ "x"
3744// MIPSN32EL: #define __SIZE_MAX__ 4294967295U
3745// MIPSN32EL: #define __SIZE_TYPE__ unsigned int
3746// MIPSN32EL: #define __SIZE_WIDTH__ 32
3747// MIPSN32EL: #define __STDC_HOSTED__ 0
3748// MIPSN32EL: #define __STDC_UTF_16__ 1
3749// MIPSN32EL: #define __STDC_UTF_32__ 1
3750// MIPSN32EL: #define __STDC_VERSION__ 201112L
3751// MIPSN32EL: #define __STDC__ 1
3752// MIPSN32EL: #define __UINT16_C_SUFFIX__
3753// MIPSN32EL: #define __UINT16_FMTX__ "hX"
3754// MIPSN32EL: #define __UINT16_FMTo__ "ho"
3755// MIPSN32EL: #define __UINT16_FMTu__ "hu"
3756// MIPSN32EL: #define __UINT16_FMTx__ "hx"
3757// MIPSN32EL: #define __UINT16_MAX__ 65535
3758// MIPSN32EL: #define __UINT16_TYPE__ unsigned short
3759// MIPSN32EL: #define __UINT32_C_SUFFIX__ U
3760// MIPSN32EL: #define __UINT32_FMTX__ "X"
3761// MIPSN32EL: #define __UINT32_FMTo__ "o"
3762// MIPSN32EL: #define __UINT32_FMTu__ "u"
3763// MIPSN32EL: #define __UINT32_FMTx__ "x"
3764// MIPSN32EL: #define __UINT32_MAX__ 4294967295U
3765// MIPSN32EL: #define __UINT32_TYPE__ unsigned int
3766// MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
3767// MIPSN32EL: #define __UINT64_FMTX__ "llX"
3768// MIPSN32EL: #define __UINT64_FMTo__ "llo"
3769// MIPSN32EL: #define __UINT64_FMTu__ "llu"
3770// MIPSN32EL: #define __UINT64_FMTx__ "llx"
3771// MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
3772// MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
3773// MIPSN32EL: #define __UINT8_C_SUFFIX__
3774// MIPSN32EL: #define __UINT8_FMTX__ "hhX"
3775// MIPSN32EL: #define __UINT8_FMTo__ "hho"
3776// MIPSN32EL: #define __UINT8_FMTu__ "hhu"
3777// MIPSN32EL: #define __UINT8_FMTx__ "hhx"
3778// MIPSN32EL: #define __UINT8_MAX__ 255
3779// MIPSN32EL: #define __UINT8_TYPE__ unsigned char
3780// MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
3781// MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
3782// MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
3783// MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
3784// MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
3785// MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
3786// MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
3787// MIPSN32EL: #define __UINTMAX_WIDTH__ 64
3788// MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
3789// MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
3790// MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
3791// MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
3792// MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
3793// MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
3794// MIPSN32EL: #define __UINTPTR_WIDTH__ 32
3795// MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
3796// MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
3797// MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
3798// MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
3799// MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
3800// MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
3801// MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
3802// MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
3803// MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
3804// MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
3805// MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
3806// MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
3807// MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
3808// MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
3809// MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
3810// MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
3811// MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3812// MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
3813// MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
3814// MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
3815// MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
3816// MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
3817// MIPSN32EL: #define __UINT_FAST8_MAX__ 255
3818// MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
3819// MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
3820// MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
3821// MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
3822// MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
3823// MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
3824// MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
3825// MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
3826// MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
3827// MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
3828// MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
3829// MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
3830// MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
3831// MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
3832// MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
3833// MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
3834// MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
3835// MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3836// MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
3837// MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
3838// MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
3839// MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
3840// MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
3841// MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
3842// MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003843// MIPSN32EL: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003844// MIPSN32EL: #define __WCHAR_MAX__ 2147483647
3845// MIPSN32EL: #define __WCHAR_TYPE__ int
3846// MIPSN32EL: #define __WCHAR_WIDTH__ 32
3847// MIPSN32EL: #define __WINT_TYPE__ int
3848// MIPSN32EL: #define __WINT_WIDTH__ 32
3849// MIPSN32EL: #define __clang__ 1
3850// MIPSN32EL: #define __llvm__ 1
3851// MIPSN32EL: #define __mips 64
3852// MIPSN32EL: #define __mips64 1
3853// MIPSN32EL: #define __mips64__ 1
3854// MIPSN32EL: #define __mips__ 1
3855// MIPSN32EL: #define __mips_fpr 64
3856// MIPSN32EL: #define __mips_hard_float 1
3857// MIPSN32EL: #define __mips_isa_rev 2
3858// MIPSN32EL: #define __mips_n32 1
3859// MIPSN32EL: #define _mips 1
3860// MIPSN32EL: #define mips 1
3861//
James Y Knightc97efa42016-02-11 16:51:29 +00003862// 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 +00003863// 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 +00003864//
3865// MIPS64BE:#define MIPSEB 1
3866// MIPS64BE:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003867// MIPS64BE:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003868// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003869// MIPS64BE:#define _MIPS_ARCH "mips64r2"
3870// MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003871// MIPS64BE:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003872// MIPS64BE:#define _MIPS_SIM _ABI64
3873// MIPS64BE:#define _MIPS_SZINT 32
3874// MIPS64BE:#define _MIPS_SZLONG 64
3875// MIPS64BE:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00003876// MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
Robert Lytton2c942c62014-03-10 12:06:29 +00003877// MIPS64BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003878// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003879// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
3880// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
3881// MIPS64BE:#define __CHAR_BIT__ 8
3882// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
3883// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3884// MIPS64BE:#define __DBL_DIG__ 15
3885// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
3886// MIPS64BE:#define __DBL_HAS_DENORM__ 1
3887// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
3888// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
3889// MIPS64BE:#define __DBL_MANT_DIG__ 53
3890// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
3891// MIPS64BE:#define __DBL_MAX_EXP__ 1024
3892// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
3893// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
3894// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
3895// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003896// MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003897// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3898// MIPS64BE:#define __FLT_DIG__ 6
3899// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
3900// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
3901// MIPS64BE:#define __FLT_HAS_DENORM__ 1
3902// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
3903// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
3904// MIPS64BE:#define __FLT_MANT_DIG__ 24
3905// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
3906// MIPS64BE:#define __FLT_MAX_EXP__ 128
3907// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
3908// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
3909// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
3910// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
3911// MIPS64BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003912// MIPS64BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003913// MIPS64BE:#define __INT16_FMTd__ "hd"
3914// MIPS64BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003915// MIPS64BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003916// MIPS64BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003917// MIPS64BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003918// MIPS64BE:#define __INT32_FMTd__ "d"
3919// MIPS64BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003920// MIPS64BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003921// MIPS64BE:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00003922// MIPS64BE:#define __INT64_C_SUFFIX__ L
3923// MIPS64BE:#define __INT64_FMTd__ "ld"
3924// MIPS64BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003925// MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003926// MIPS64BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00003927// MIPS64BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003928// MIPS64BE:#define __INT8_FMTd__ "hhd"
3929// MIPS64BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003930// MIPS64BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003931// MIPS64BE:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00003932// MIPS64BE:#define __INTMAX_C_SUFFIX__ L
3933// MIPS64BE:#define __INTMAX_FMTd__ "ld"
3934// MIPS64BE:#define __INTMAX_FMTi__ "li"
3935// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
3936// MIPS64BE:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003937// MIPS64BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003938// MIPS64BE:#define __INTPTR_FMTd__ "ld"
3939// MIPS64BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003940// MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003941// MIPS64BE:#define __INTPTR_TYPE__ long int
3942// MIPS64BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003943// MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
3944// MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003945// MIPS64BE:#define __INT_FAST16_MAX__ 32767
3946// MIPS64BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003947// MIPS64BE:#define __INT_FAST32_FMTd__ "d"
3948// MIPS64BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003949// MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
3950// MIPS64BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003951// MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
3952// MIPS64BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003953// MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
3954// MIPS64BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003955// MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
3956// MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003957// MIPS64BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003958// MIPS64BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003959// MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
3960// MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003961// MIPS64BE:#define __INT_LEAST16_MAX__ 32767
3962// MIPS64BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003963// MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
3964// MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003965// MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
3966// MIPS64BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003967// MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
3968// MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003969// MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
3970// MIPS64BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003971// MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
3972// MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003973// MIPS64BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003974// MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003975// MIPS64BE:#define __INT_MAX__ 2147483647
3976// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3977// MIPS64BE:#define __LDBL_DIG__ 33
3978// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3979// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
3980// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
3981// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
3982// MIPS64BE:#define __LDBL_MANT_DIG__ 113
3983// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
3984// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
3985// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3986// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
3987// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
3988// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3989// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
3990// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003991// MIPS64BE:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003992// MIPS64BE:#define __MIPSEB 1
3993// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003994// MIPS64BE:#define __POINTER_WIDTH__ 64
3995// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
3996// MIPS64BE:#define __PTRDIFF_TYPE__ long int
3997// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003998// MIPS64BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003999// MIPS64BE:#define __SCHAR_MAX__ 127
4000// MIPS64BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004001// MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004002// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
4003// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
4004// MIPS64BE:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004005// MIPS64BE:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004006// MIPS64BE:#define __SIZEOF_INT__ 4
4007// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
4008// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
4009// MIPS64BE:#define __SIZEOF_LONG__ 8
4010// MIPS64BE:#define __SIZEOF_POINTER__ 8
4011// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
4012// MIPS64BE:#define __SIZEOF_SHORT__ 2
4013// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
4014// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
4015// MIPS64BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004016// MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004017// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
4018// MIPS64BE:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00004019// MIPS64BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00004020// MIPS64BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004021// MIPS64BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004022// MIPS64BE:#define __UINT16_TYPE__ unsigned short
4023// MIPS64BE:#define __UINT32_C_SUFFIX__ U
4024// MIPS64BE:#define __UINT32_MAX__ 4294967295U
4025// MIPS64BE:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004026// MIPS64BE:#define __UINT64_C_SUFFIX__ UL
4027// MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
4028// MIPS64BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004029// MIPS64BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004030// MIPS64BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004031// MIPS64BE:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004032// MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
4033// MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
4034// MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004035// MIPS64BE:#define __UINTMAX_WIDTH__ 64
4036// MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
4037// MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
4038// MIPS64BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004039// MIPS64BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004040// MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
4041// MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
4042// MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
4043// MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4044// MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004045// MIPS64BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004046// MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004047// MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004048// MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
4049// MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
4050// MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
4051// MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4052// MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004053// MIPS64BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004054// MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004055// MIPS64BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004056// MIPS64BE:#define __WCHAR_MAX__ 2147483647
4057// MIPS64BE:#define __WCHAR_TYPE__ int
4058// MIPS64BE:#define __WCHAR_WIDTH__ 32
4059// MIPS64BE:#define __WINT_TYPE__ int
4060// MIPS64BE:#define __WINT_WIDTH__ 32
4061// MIPS64BE:#define __clang__ 1
4062// MIPS64BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004063// MIPS64BE:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004064// MIPS64BE:#define __mips64 1
4065// MIPS64BE:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004066// MIPS64BE:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004067// MIPS64BE:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004068// MIPS64BE:#define __mips_hard_float 1
4069// MIPS64BE:#define __mips_n64 1
4070// MIPS64BE:#define _mips 1
4071// MIPS64BE:#define mips 1
4072//
James Y Knightc97efa42016-02-11 16:51:29 +00004073// 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 +00004074//
4075// MIPS64EL:#define MIPSEL 1
4076// MIPS64EL:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004077// MIPS64EL:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004078// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004079// MIPS64EL:#define _MIPS_ARCH "mips64r2"
4080// MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004081// MIPS64EL:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004082// MIPS64EL:#define _MIPS_SIM _ABI64
4083// MIPS64EL:#define _MIPS_SZINT 32
4084// MIPS64EL:#define _MIPS_SZLONG 64
4085// MIPS64EL:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004086// MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004087// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004088// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
4089// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
4090// MIPS64EL:#define __CHAR_BIT__ 8
4091// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
4092// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4093// MIPS64EL:#define __DBL_DIG__ 15
4094// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
4095// MIPS64EL:#define __DBL_HAS_DENORM__ 1
4096// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
4097// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
4098// MIPS64EL:#define __DBL_MANT_DIG__ 53
4099// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
4100// MIPS64EL:#define __DBL_MAX_EXP__ 1024
4101// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
4102// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
4103// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
4104// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004105// MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004106// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4107// MIPS64EL:#define __FLT_DIG__ 6
4108// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
4109// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
4110// MIPS64EL:#define __FLT_HAS_DENORM__ 1
4111// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
4112// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
4113// MIPS64EL:#define __FLT_MANT_DIG__ 24
4114// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
4115// MIPS64EL:#define __FLT_MAX_EXP__ 128
4116// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
4117// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
4118// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
4119// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
4120// MIPS64EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004121// MIPS64EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004122// MIPS64EL:#define __INT16_FMTd__ "hd"
4123// MIPS64EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004124// MIPS64EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004125// MIPS64EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004126// MIPS64EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004127// MIPS64EL:#define __INT32_FMTd__ "d"
4128// MIPS64EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004129// MIPS64EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004130// MIPS64EL:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004131// MIPS64EL:#define __INT64_C_SUFFIX__ L
4132// MIPS64EL:#define __INT64_FMTd__ "ld"
4133// MIPS64EL:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004134// MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004135// MIPS64EL:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004136// MIPS64EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004137// MIPS64EL:#define __INT8_FMTd__ "hhd"
4138// MIPS64EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004139// MIPS64EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004140// MIPS64EL:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004141// MIPS64EL:#define __INTMAX_C_SUFFIX__ L
4142// MIPS64EL:#define __INTMAX_FMTd__ "ld"
4143// MIPS64EL:#define __INTMAX_FMTi__ "li"
4144// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
4145// MIPS64EL:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004146// MIPS64EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004147// MIPS64EL:#define __INTPTR_FMTd__ "ld"
4148// MIPS64EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004149// MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004150// MIPS64EL:#define __INTPTR_TYPE__ long int
4151// MIPS64EL:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004152// MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
4153// MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004154// MIPS64EL:#define __INT_FAST16_MAX__ 32767
4155// MIPS64EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004156// MIPS64EL:#define __INT_FAST32_FMTd__ "d"
4157// MIPS64EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004158// MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
4159// MIPS64EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004160// MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
4161// MIPS64EL:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004162// MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
4163// MIPS64EL:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004164// MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
4165// MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004166// MIPS64EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004167// MIPS64EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004168// MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
4169// MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004170// MIPS64EL:#define __INT_LEAST16_MAX__ 32767
4171// MIPS64EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004172// MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
4173// MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004174// MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
4175// MIPS64EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004176// MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
4177// MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004178// MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
4179// MIPS64EL:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004180// MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
4181// MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004182// MIPS64EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004183// MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004184// MIPS64EL:#define __INT_MAX__ 2147483647
4185// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4186// MIPS64EL:#define __LDBL_DIG__ 33
4187// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4188// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
4189// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
4190// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
4191// MIPS64EL:#define __LDBL_MANT_DIG__ 113
4192// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
4193// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
4194// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4195// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
4196// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
4197// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
Robert Lytton2c942c62014-03-10 12:06:29 +00004198// MIPS64EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004199// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
4200// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004201// MIPS64EL:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004202// MIPS64EL:#define __MIPSEL 1
4203// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004204// MIPS64EL:#define __POINTER_WIDTH__ 64
4205// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
4206// MIPS64EL:#define __PTRDIFF_TYPE__ long int
4207// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004208// MIPS64EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004209// MIPS64EL:#define __SCHAR_MAX__ 127
4210// MIPS64EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004211// MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004212// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
4213// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
4214// MIPS64EL:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004215// MIPS64EL:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004216// MIPS64EL:#define __SIZEOF_INT__ 4
4217// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
4218// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
4219// MIPS64EL:#define __SIZEOF_LONG__ 8
4220// MIPS64EL:#define __SIZEOF_POINTER__ 8
4221// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
4222// MIPS64EL:#define __SIZEOF_SHORT__ 2
4223// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
4224// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
4225// MIPS64EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004226// MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004227// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
4228// MIPS64EL:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004229// MIPS64EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004230// MIPS64EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004231// MIPS64EL:#define __UINT16_TYPE__ unsigned short
4232// MIPS64EL:#define __UINT32_C_SUFFIX__ U
4233// MIPS64EL:#define __UINT32_MAX__ 4294967295U
4234// MIPS64EL:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004235// MIPS64EL:#define __UINT64_C_SUFFIX__ UL
4236// MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
4237// MIPS64EL:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004238// MIPS64EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004239// MIPS64EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004240// MIPS64EL:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004241// MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
4242// MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
4243// MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004244// MIPS64EL:#define __UINTMAX_WIDTH__ 64
4245// MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
4246// MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
4247// MIPS64EL:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004248// MIPS64EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004249// MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
4250// MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
4251// MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
4252// MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4253// MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004254// MIPS64EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004255// MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004256// MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004257// MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
4258// MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
4259// MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
4260// MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4261// MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004262// MIPS64EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004263// MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004264// MIPS64EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004265// MIPS64EL:#define __WCHAR_MAX__ 2147483647
4266// MIPS64EL:#define __WCHAR_TYPE__ int
4267// MIPS64EL:#define __WCHAR_WIDTH__ 32
4268// MIPS64EL:#define __WINT_TYPE__ int
4269// MIPS64EL:#define __WINT_WIDTH__ 32
4270// MIPS64EL:#define __clang__ 1
4271// MIPS64EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004272// MIPS64EL:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004273// MIPS64EL:#define __mips64 1
4274// MIPS64EL:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004275// MIPS64EL:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004276// MIPS64EL:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004277// MIPS64EL:#define __mips_hard_float 1
4278// MIPS64EL:#define __mips_n64 1
4279// MIPS64EL:#define _mips 1
4280// MIPS64EL:#define mips 1
4281//
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004282// Check MIPS arch and isa macros
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004283//
4284// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4285// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004286// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004287//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004288// MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
4289// MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004290// MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4291// MIPS-ARCH-DEF32:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004292//
4293// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
4294// RUN: -target-cpu mips32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004295// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004296//
4297// MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
4298// MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004299// MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4300// MIPS-ARCH-32:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004301//
4302// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4303// RUN: -target-cpu mips32r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004304// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004305//
4306// MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
4307// MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004308// MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
4309// MIPS-ARCH-32R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004310//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004311// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004312// RUN: -target-cpu mips32r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004313// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004314//
4315// MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
4316// MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
4317// MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
4318// MIPS-ARCH-32R3:#define __mips_isa_rev 3
4319//
4320// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4321// RUN: -target-cpu mips32r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004322// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004323//
4324// MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
4325// MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
4326// MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
4327// MIPS-ARCH-32R5:#define __mips_isa_rev 5
4328//
4329// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004330// RUN: -target-cpu mips32r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004331// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004332//
4333// MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
4334// MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
4335// MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
4336// MIPS-ARCH-32R6:#define __mips_isa_rev 6
4337//
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004338// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4339// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004340// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004341//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004342// MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
4343// MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004344// MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4345// MIPS-ARCH-DEF64:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004346//
4347// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4348// RUN: -target-cpu mips64 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004349// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004350//
4351// MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
4352// MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004353// MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4354// MIPS-ARCH-64:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004355//
4356// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4357// RUN: -target-cpu mips64r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004358// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004359//
4360// MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
4361// MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004362// MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
4363// MIPS-ARCH-64R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004364//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004365// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004366// RUN: -target-cpu mips64r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004367// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004368//
4369// MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
4370// MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
4371// MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
4372// MIPS-ARCH-64R3:#define __mips_isa_rev 3
4373//
4374// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4375// RUN: -target-cpu mips64r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004376// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004377//
4378// MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
4379// MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
4380// MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
4381// MIPS-ARCH-64R5:#define __mips_isa_rev 5
4382//
4383// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004384// RUN: -target-cpu mips64r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004385// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004386//
4387// MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
4388// MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
4389// MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
4390// MIPS-ARCH-64R6:#define __mips_isa_rev 6
4391//
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004392// Check MIPS float ABI macros
4393//
4394// RUN: %clang_cc1 -E -dM -ffreestanding \
4395// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004396// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004397// MIPS-FABI-HARD:#define __mips_hard_float 1
4398//
4399// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
4400// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004401// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004402// MIPS-FABI-SOFT:#define __mips_soft_float 1
4403//
4404// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
4405// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004406// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyand3d173d2012-06-05 13:06:56 +00004407// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004408// MIPS-FABI-SINGLE:#define __mips_single_float 1
4409//
Simon Atanasyan16071912013-04-14 14:07:30 +00004410// RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
4411// RUN: -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004412// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
Simon Atanasyan16071912013-04-14 14:07:30 +00004413// MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
4414// MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
4415//
Simon Atanasyan72244b62012-07-05 16:06:06 +00004416// Check MIPS features macros
4417//
4418// RUN: %clang_cc1 -target-feature +mips16 \
4419// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004420// RUN: | FileCheck -match-full-lines -check-prefix MIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004421// MIPS16:#define __mips16 1
4422//
4423// RUN: %clang_cc1 -target-feature -mips16 \
4424// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004425// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004426// NOMIPS16-NOT:#define __mips16 1
4427//
Simon Atanasyan60777612013-04-14 14:07:51 +00004428// RUN: %clang_cc1 -target-feature +micromips \
4429// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004430// RUN: | FileCheck -match-full-lines -check-prefix MICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004431// MICROMIPS:#define __mips_micromips 1
4432//
4433// RUN: %clang_cc1 -target-feature -micromips \
4434// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004435// RUN: | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004436// NOMICROMIPS-NOT:#define __mips_micromips 1
4437//
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004438// RUN: %clang_cc1 -target-feature +dsp \
4439// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004440// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004441// MIPS-DSP:#define __mips_dsp 1
4442// MIPS-DSP:#define __mips_dsp_rev 1
4443// MIPS-DSP-NOT:#define __mips_dspr2 1
4444//
4445// RUN: %clang_cc1 -target-feature +dspr2 \
4446// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004447// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004448// MIPS-DSPR2:#define __mips_dsp 1
4449// MIPS-DSPR2:#define __mips_dsp_rev 2
4450// MIPS-DSPR2:#define __mips_dspr2 1
4451//
Jack Carter44ff1e52013-08-12 17:20:29 +00004452// RUN: %clang_cc1 -target-feature +msa \
4453// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004454// RUN: | FileCheck -match-full-lines -check-prefix MIPS-MSA %s
Jack Carter44ff1e52013-08-12 17:20:29 +00004455// MIPS-MSA:#define __mips_msa 1
4456//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004457// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004458// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004459// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004460// MIPS-NAN2008:#define __mips_nan2008 1
4461//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004462// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
4463// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004464// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS-NAN2008 %s
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004465// NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
4466//
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004467// RUN: %clang_cc1 -target-feature -fp64 \
4468// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004469// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004470// MIPS32-MFP32:#define _MIPS_FPSET 16
4471// MIPS32-MFP32:#define __mips_fpr 32
4472//
4473// RUN: %clang_cc1 -target-feature +fp64 \
4474// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004475// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004476// MIPS32-MFP64:#define _MIPS_FPSET 32
4477// MIPS32-MFP64:#define __mips_fpr 64
4478//
4479// RUN: %clang_cc1 -target-feature +single-float \
4480// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004481// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004482// MIPS32-MFP32SF:#define _MIPS_FPSET 32
4483// MIPS32-MFP32SF:#define __mips_fpr 32
4484//
4485// RUN: %clang_cc1 -target-feature +fp64 \
4486// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004487// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004488// MIPS64-MFP64:#define _MIPS_FPSET 32
4489// MIPS64-MFP64:#define __mips_fpr 64
4490//
4491// RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
4492// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004493// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004494// MIPS64-NOMFP64:#define _MIPS_FPSET 32
4495// MIPS64-NOMFP64:#define __mips_fpr 32
4496//
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004497// RUN: %clang_cc1 -target-cpu mips32r6 \
4498// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004499// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004500// RUN: %clang_cc1 -target-cpu mips64r6 \
4501// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004502// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004503// MIPS-XXR6:#define _MIPS_FPSET 32
4504// MIPS-XXR6:#define __mips_fpr 64
4505// MIPS-XXR6:#define __mips_nan2008 1
4506//
James Y Knightc97efa42016-02-11 16:51:29 +00004507// 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 +00004508// 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 +00004509//
4510// MSP430:#define MSP430 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004511// MSP430-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004512// MSP430:#define __BIGGEST_ALIGNMENT__ 2
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004513// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00004514// MSP430:#define __CHAR16_TYPE__ unsigned short
4515// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00004516// MSP430:#define __CHAR_BIT__ 8
4517// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4518// MSP430:#define __DBL_DIG__ 15
4519// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
4520// MSP430:#define __DBL_HAS_DENORM__ 1
4521// MSP430:#define __DBL_HAS_INFINITY__ 1
4522// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
4523// MSP430:#define __DBL_MANT_DIG__ 53
4524// MSP430:#define __DBL_MAX_10_EXP__ 308
4525// MSP430:#define __DBL_MAX_EXP__ 1024
4526// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
4527// MSP430:#define __DBL_MIN_10_EXP__ (-307)
4528// MSP430:#define __DBL_MIN_EXP__ (-1021)
4529// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004530// MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00004531// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4532// MSP430:#define __FLT_DIG__ 6
4533// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
4534// MSP430:#define __FLT_EVAL_METHOD__ 0
4535// MSP430:#define __FLT_HAS_DENORM__ 1
4536// MSP430:#define __FLT_HAS_INFINITY__ 1
4537// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
4538// MSP430:#define __FLT_MANT_DIG__ 24
4539// MSP430:#define __FLT_MAX_10_EXP__ 38
4540// MSP430:#define __FLT_MAX_EXP__ 128
4541// MSP430:#define __FLT_MAX__ 3.40282347e+38F
4542// MSP430:#define __FLT_MIN_10_EXP__ (-37)
4543// MSP430:#define __FLT_MIN_EXP__ (-125)
4544// MSP430:#define __FLT_MIN__ 1.17549435e-38F
4545// MSP430:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004546// MSP430:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004547// MSP430:#define __INT16_FMTd__ "hd"
4548// MSP430:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004549// MSP430:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004550// MSP430:#define __INT16_TYPE__ short
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00004551// MSP430:#define __INT32_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004552// MSP430:#define __INT32_FMTd__ "ld"
4553// MSP430:#define __INT32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004554// MSP430:#define __INT32_MAX__ 2147483647L
Chris Lattner55c98772009-11-12 08:08:27 +00004555// MSP430:#define __INT32_TYPE__ long int
JF Bastienab8d0a02014-06-25 01:31:33 +00004556// MSP430:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004557// MSP430:#define __INT64_FMTd__ "lld"
4558// MSP430:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004559// MSP430:#define __INT64_MAX__ 9223372036854775807LL
4560// MSP430:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004561// MSP430:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004562// MSP430:#define __INT8_FMTd__ "hhd"
4563// MSP430:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004564// MSP430:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004565// MSP430:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004566// MSP430:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004567// MSP430:#define __INTMAX_FMTd__ "lld"
4568// MSP430:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikovef412902013-07-01 19:42:40 +00004569// MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
4570// MSP430:#define __INTMAX_TYPE__ long long int
4571// MSP430:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004572// MSP430:#define __INTPTR_FMTd__ "d"
4573// MSP430:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004574// MSP430:#define __INTPTR_MAX__ 32767
Anton Korobeynikovef412902013-07-01 19:42:40 +00004575// MSP430:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00004576// MSP430:#define __INTPTR_WIDTH__ 16
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004577// MSP430:#define __INT_FAST16_FMTd__ "hd"
4578// MSP430:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004579// MSP430:#define __INT_FAST16_MAX__ 32767
4580// MSP430:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004581// MSP430:#define __INT_FAST32_FMTd__ "ld"
4582// MSP430:#define __INT_FAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004583// MSP430:#define __INT_FAST32_MAX__ 2147483647L
4584// MSP430:#define __INT_FAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004585// MSP430:#define __INT_FAST64_FMTd__ "lld"
4586// MSP430:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004587// MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
4588// MSP430:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004589// MSP430:#define __INT_FAST8_FMTd__ "hhd"
4590// MSP430:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004591// MSP430:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004592// MSP430:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004593// MSP430:#define __INT_LEAST16_FMTd__ "hd"
4594// MSP430:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004595// MSP430:#define __INT_LEAST16_MAX__ 32767
4596// MSP430:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004597// MSP430:#define __INT_LEAST32_FMTd__ "ld"
4598// MSP430:#define __INT_LEAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004599// MSP430:#define __INT_LEAST32_MAX__ 2147483647L
4600// MSP430:#define __INT_LEAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004601// MSP430:#define __INT_LEAST64_FMTd__ "lld"
4602// MSP430:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004603// MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
4604// MSP430:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004605// MSP430:#define __INT_LEAST8_FMTd__ "hhd"
4606// MSP430:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004607// MSP430:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004608// MSP430:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00004609// MSP430:#define __INT_MAX__ 32767
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004610// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00004611// MSP430:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004612// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00004613// MSP430:#define __LDBL_HAS_DENORM__ 1
4614// MSP430:#define __LDBL_HAS_INFINITY__ 1
4615// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
4616// MSP430:#define __LDBL_MANT_DIG__ 53
4617// MSP430:#define __LDBL_MAX_10_EXP__ 308
4618// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004619// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00004620// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
4621// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004622// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004623// MSP430:#define __LITTLE_ENDIAN__ 1
Anton Korobeynikov485810e2010-01-14 21:36:52 +00004624// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00004625// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004626// MSP430-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00004627// MSP430:#define __MSP430__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00004628// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck9b25f782009-11-19 13:18:59 +00004629// MSP430:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00004630// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004631// MSP430:#define __SCHAR_MAX__ 127
4632// MSP430:#define __SHRT_MAX__ 32767
James Y Knightc97efa42016-02-11 16:51:29 +00004633// MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
Ken Dyckadc85112009-11-22 15:41:04 +00004634// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00004635// MSP430:#define __SIZEOF_DOUBLE__ 8
4636// MSP430:#define __SIZEOF_FLOAT__ 4
4637// MSP430:#define __SIZEOF_INT__ 2
4638// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
4639// MSP430:#define __SIZEOF_LONG_LONG__ 8
4640// MSP430:#define __SIZEOF_LONG__ 4
4641// MSP430:#define __SIZEOF_POINTER__ 2
4642// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
4643// MSP430:#define __SIZEOF_SHORT__ 2
4644// MSP430:#define __SIZEOF_SIZE_T__ 2
4645// MSP430:#define __SIZEOF_WCHAR_T__ 2
4646// MSP430:#define __SIZEOF_WINT_T__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004647// MSP430:#define __SIZE_MAX__ 65535U
Chris Lattnere963d092009-10-29 04:55:36 +00004648// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00004649// MSP430:#define __SIZE_WIDTH__ 16
Richard Smith59139022016-09-30 22:41:36 +00004650// MSP430-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
JF Bastienab8d0a02014-06-25 01:31:33 +00004651// MSP430:#define __UINT16_C_SUFFIX__ U
James Y Knightc97efa42016-02-11 16:51:29 +00004652// MSP430:#define __UINT16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004653// MSP430:#define __UINT16_TYPE__ unsigned short
4654// MSP430:#define __UINT32_C_SUFFIX__ UL
4655// MSP430:#define __UINT32_MAX__ 4294967295UL
4656// MSP430:#define __UINT32_TYPE__ long unsigned int
4657// MSP430:#define __UINT64_C_SUFFIX__ ULL
4658// MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
4659// MSP430:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004660// MSP430:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004661// MSP430:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004662// MSP430:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004663// MSP430:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00004664// MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikovef412902013-07-01 19:42:40 +00004665// MSP430:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004666// MSP430:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004667// MSP430:#define __UINTPTR_MAX__ 65535U
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00004668// MSP430:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004669// MSP430:#define __UINTPTR_WIDTH__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00004670// MSP430:#define __UINT_FAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004671// MSP430:#define __UINT_FAST16_TYPE__ unsigned short
4672// MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
4673// MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
4674// MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
4675// MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004676// MSP430:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004677// MSP430:#define __UINT_FAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00004678// MSP430:#define __UINT_LEAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004679// MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
4680// MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
4681// MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
4682// MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4683// MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004684// MSP430:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004685// MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004686// MSP430:#define __USER_LABEL_PREFIX__
Chris Lattner0fb5bbd2009-11-12 08:04:33 +00004687// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004688// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00004689// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004690// MSP430:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00004691// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004692// MSP430:#define __clang__ 1
4693//
James Y Knightc97efa42016-02-11 16:51:29 +00004694// 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 +00004695// 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 +00004696//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004697// NVPTX32-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004698// NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004699// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004700// NVPTX32:#define __CHAR16_TYPE__ unsigned short
4701// NVPTX32:#define __CHAR32_TYPE__ unsigned int
4702// NVPTX32:#define __CHAR_BIT__ 8
4703// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
4704// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4705// NVPTX32:#define __DBL_DIG__ 15
4706// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
4707// NVPTX32:#define __DBL_HAS_DENORM__ 1
4708// NVPTX32:#define __DBL_HAS_INFINITY__ 1
4709// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
4710// NVPTX32:#define __DBL_MANT_DIG__ 53
4711// NVPTX32:#define __DBL_MAX_10_EXP__ 308
4712// NVPTX32:#define __DBL_MAX_EXP__ 1024
4713// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
4714// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
4715// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
4716// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004717// NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004718// NVPTX32:#define __FINITE_MATH_ONLY__ 0
4719// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4720// NVPTX32:#define __FLT_DIG__ 6
4721// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
4722// NVPTX32:#define __FLT_EVAL_METHOD__ 0
4723// NVPTX32:#define __FLT_HAS_DENORM__ 1
4724// NVPTX32:#define __FLT_HAS_INFINITY__ 1
4725// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
4726// NVPTX32:#define __FLT_MANT_DIG__ 24
4727// NVPTX32:#define __FLT_MAX_10_EXP__ 38
4728// NVPTX32:#define __FLT_MAX_EXP__ 128
4729// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
4730// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
4731// NVPTX32:#define __FLT_MIN_EXP__ (-125)
4732// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
4733// NVPTX32:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004734// NVPTX32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004735// NVPTX32:#define __INT16_FMTd__ "hd"
4736// NVPTX32:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004737// NVPTX32:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004738// NVPTX32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004739// NVPTX32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004740// NVPTX32:#define __INT32_FMTd__ "d"
4741// NVPTX32:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004742// NVPTX32:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004743// NVPTX32:#define __INT32_TYPE__ int
4744// NVPTX32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004745// NVPTX32:#define __INT64_FMTd__ "lld"
4746// NVPTX32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004747// NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004748// NVPTX32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004749// NVPTX32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004750// NVPTX32:#define __INT8_FMTd__ "hhd"
4751// NVPTX32:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004752// NVPTX32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004753// NVPTX32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004754// NVPTX32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004755// NVPTX32:#define __INTMAX_FMTd__ "lld"
4756// NVPTX32:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004757// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
4758// NVPTX32:#define __INTMAX_TYPE__ long long int
4759// NVPTX32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004760// NVPTX32:#define __INTPTR_FMTd__ "d"
4761// NVPTX32:#define __INTPTR_FMTi__ "i"
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00004762// NVPTX32:#define __INTPTR_MAX__ 2147483647
4763// NVPTX32:#define __INTPTR_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004764// NVPTX32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004765// NVPTX32:#define __INT_FAST16_FMTd__ "hd"
4766// NVPTX32:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004767// NVPTX32:#define __INT_FAST16_MAX__ 32767
4768// NVPTX32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004769// NVPTX32:#define __INT_FAST32_FMTd__ "d"
4770// NVPTX32:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004771// NVPTX32:#define __INT_FAST32_MAX__ 2147483647
4772// NVPTX32:#define __INT_FAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00004773// NVPTX32:#define __INT_FAST64_FMTd__ "lld"
4774// NVPTX32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004775// NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004776// NVPTX32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004777// NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
4778// NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004779// NVPTX32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004780// NVPTX32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004781// NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
4782// NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004783// NVPTX32:#define __INT_LEAST16_MAX__ 32767
4784// NVPTX32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004785// NVPTX32:#define __INT_LEAST32_FMTd__ "d"
4786// NVPTX32:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004787// NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
4788// NVPTX32:#define __INT_LEAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00004789// NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
4790// NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004791// NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004792// NVPTX32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004793// NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
4794// NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004795// NVPTX32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004796// NVPTX32:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004797// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004798// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004799// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004800// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004801// NVPTX32:#define __LDBL_HAS_DENORM__ 1
4802// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
4803// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
4804// NVPTX32:#define __LDBL_MANT_DIG__ 53
4805// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
4806// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004807// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004808// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
4809// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004810// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004811// NVPTX32:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004812// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004813// NVPTX32:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004814// NVPTX32-NOT:#define __LP64__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004815// NVPTX32:#define __NVPTX__ 1
4816// NVPTX32:#define __POINTER_WIDTH__ 32
4817// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00004818// NVPTX32:#define __PTRDIFF_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004819// NVPTX32:#define __PTRDIFF_WIDTH__ 32
4820// NVPTX32:#define __PTX__ 1
4821// NVPTX32:#define __SCHAR_MAX__ 127
4822// NVPTX32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004823// NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004824// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
4825// NVPTX32:#define __SIZEOF_DOUBLE__ 8
4826// NVPTX32:#define __SIZEOF_FLOAT__ 4
4827// NVPTX32:#define __SIZEOF_INT__ 4
4828// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
4829// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
Artem Belevich236cfdc2015-09-28 22:54:08 +00004830// NVPTX32:#define __SIZEOF_LONG__ 4
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004831// NVPTX32:#define __SIZEOF_POINTER__ 4
4832// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
4833// NVPTX32:#define __SIZEOF_SHORT__ 2
4834// NVPTX32:#define __SIZEOF_SIZE_T__ 4
4835// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
4836// NVPTX32:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004837// NVPTX32:#define __SIZE_MAX__ 4294967295U
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004838// NVPTX32:#define __SIZE_TYPE__ unsigned int
4839// NVPTX32:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00004840// NVPTX32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00004841// NVPTX32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004842// NVPTX32:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004843// NVPTX32:#define __UINT16_TYPE__ unsigned short
4844// NVPTX32:#define __UINT32_C_SUFFIX__ U
4845// NVPTX32:#define __UINT32_MAX__ 4294967295U
4846// NVPTX32:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00004847// NVPTX32:#define __UINT64_C_SUFFIX__ ULL
4848// NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
4849// NVPTX32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004850// NVPTX32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004851// NVPTX32:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004852// NVPTX32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004853// NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00004854// NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004855// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004856// NVPTX32:#define __UINTMAX_WIDTH__ 64
4857// NVPTX32:#define __UINTPTR_MAX__ 4294967295U
4858// NVPTX32:#define __UINTPTR_TYPE__ unsigned int
4859// NVPTX32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004860// NVPTX32:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004861// NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
4862// NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
4863// NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004864// NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004865// NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004866// NVPTX32:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004867// NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004868// NVPTX32:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004869// NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
4870// NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
4871// NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004872// NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004873// NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004874// NVPTX32:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004875// NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004876// NVPTX32:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004877// NVPTX32:#define __WCHAR_MAX__ 2147483647
4878// NVPTX32:#define __WCHAR_TYPE__ int
4879// NVPTX32:#define __WCHAR_WIDTH__ 32
4880// NVPTX32:#define __WINT_TYPE__ int
4881// NVPTX32:#define __WINT_WIDTH__ 32
4882//
James Y Knightc97efa42016-02-11 16:51:29 +00004883// 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 +00004884// 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 +00004885//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004886// NVPTX64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00004887// NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004888// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004889// NVPTX64:#define __CHAR16_TYPE__ unsigned short
4890// NVPTX64:#define __CHAR32_TYPE__ unsigned int
4891// NVPTX64:#define __CHAR_BIT__ 8
4892// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
4893// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4894// NVPTX64:#define __DBL_DIG__ 15
4895// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
4896// NVPTX64:#define __DBL_HAS_DENORM__ 1
4897// NVPTX64:#define __DBL_HAS_INFINITY__ 1
4898// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
4899// NVPTX64:#define __DBL_MANT_DIG__ 53
4900// NVPTX64:#define __DBL_MAX_10_EXP__ 308
4901// NVPTX64:#define __DBL_MAX_EXP__ 1024
4902// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
4903// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
4904// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
4905// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004906// NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004907// NVPTX64:#define __FINITE_MATH_ONLY__ 0
4908// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4909// NVPTX64:#define __FLT_DIG__ 6
4910// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
4911// NVPTX64:#define __FLT_EVAL_METHOD__ 0
4912// NVPTX64:#define __FLT_HAS_DENORM__ 1
4913// NVPTX64:#define __FLT_HAS_INFINITY__ 1
4914// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
4915// NVPTX64:#define __FLT_MANT_DIG__ 24
4916// NVPTX64:#define __FLT_MAX_10_EXP__ 38
4917// NVPTX64:#define __FLT_MAX_EXP__ 128
4918// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
4919// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
4920// NVPTX64:#define __FLT_MIN_EXP__ (-125)
4921// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
4922// NVPTX64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004923// NVPTX64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004924// NVPTX64:#define __INT16_FMTd__ "hd"
4925// NVPTX64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004926// NVPTX64:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004927// NVPTX64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004928// NVPTX64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004929// NVPTX64:#define __INT32_FMTd__ "d"
4930// NVPTX64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004931// NVPTX64:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004932// NVPTX64:#define __INT32_TYPE__ int
4933// NVPTX64:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004934// NVPTX64:#define __INT64_FMTd__ "lld"
4935// NVPTX64:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004936// NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004937// NVPTX64:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004938// NVPTX64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004939// NVPTX64:#define __INT8_FMTd__ "hhd"
4940// NVPTX64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004941// NVPTX64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004942// NVPTX64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004943// NVPTX64:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004944// NVPTX64:#define __INTMAX_FMTd__ "lld"
4945// NVPTX64:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004946// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
4947// NVPTX64:#define __INTMAX_TYPE__ long long int
4948// NVPTX64:#define __INTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00004949// NVPTX64:#define __INTPTR_FMTd__ "ld"
4950// NVPTX64:#define __INTPTR_FMTi__ "li"
4951// NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
4952// NVPTX64:#define __INTPTR_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004953// NVPTX64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004954// NVPTX64:#define __INT_FAST16_FMTd__ "hd"
4955// NVPTX64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004956// NVPTX64:#define __INT_FAST16_MAX__ 32767
4957// NVPTX64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004958// NVPTX64:#define __INT_FAST32_FMTd__ "d"
4959// NVPTX64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004960// NVPTX64:#define __INT_FAST32_MAX__ 2147483647
4961// NVPTX64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004962// NVPTX64:#define __INT_FAST64_FMTd__ "ld"
4963// NVPTX64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004964// NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
4965// NVPTX64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004966// NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
4967// NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004968// NVPTX64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004969// NVPTX64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004970// NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
4971// NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004972// NVPTX64:#define __INT_LEAST16_MAX__ 32767
4973// NVPTX64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004974// NVPTX64:#define __INT_LEAST32_FMTd__ "d"
4975// NVPTX64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004976// NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
4977// NVPTX64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004978// NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
4979// NVPTX64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004980// NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
4981// NVPTX64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004982// NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
4983// NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004984// NVPTX64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004985// NVPTX64:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004986// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004987// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004988// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004989// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004990// NVPTX64:#define __LDBL_HAS_DENORM__ 1
4991// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
4992// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
4993// NVPTX64:#define __LDBL_MANT_DIG__ 53
4994// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
4995// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004996// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004997// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
4998// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004999// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005000// NVPTX64:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005001// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5002// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005003// NVPTX64:#define __LP64__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005004// NVPTX64:#define __NVPTX__ 1
5005// NVPTX64:#define __POINTER_WIDTH__ 64
5006// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005007// NVPTX64:#define __PTRDIFF_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005008// NVPTX64:#define __PTRDIFF_WIDTH__ 64
5009// NVPTX64:#define __PTX__ 1
5010// NVPTX64:#define __SCHAR_MAX__ 127
5011// NVPTX64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005012// NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005013// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
5014// NVPTX64:#define __SIZEOF_DOUBLE__ 8
5015// NVPTX64:#define __SIZEOF_FLOAT__ 4
5016// NVPTX64:#define __SIZEOF_INT__ 4
5017// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
5018// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
5019// NVPTX64:#define __SIZEOF_LONG__ 8
5020// NVPTX64:#define __SIZEOF_POINTER__ 8
5021// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
5022// NVPTX64:#define __SIZEOF_SHORT__ 2
5023// NVPTX64:#define __SIZEOF_SIZE_T__ 8
5024// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
5025// NVPTX64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005026// NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
Eli Bendersky15f63422015-04-01 18:29:27 +00005027// NVPTX64:#define __SIZE_TYPE__ long unsigned int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005028// NVPTX64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005029// NVPTX64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00005030// NVPTX64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005031// NVPTX64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005032// NVPTX64:#define __UINT16_TYPE__ unsigned short
5033// NVPTX64:#define __UINT32_C_SUFFIX__ U
5034// NVPTX64:#define __UINT32_MAX__ 4294967295U
5035// NVPTX64:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005036// NVPTX64:#define __UINT64_C_SUFFIX__ ULL
5037// NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
5038// NVPTX64:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005039// NVPTX64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005040// NVPTX64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005041// NVPTX64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005042// NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005043// NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005044// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005045// NVPTX64:#define __UINTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005046// NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
5047// NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005048// NVPTX64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005049// NVPTX64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005050// NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
5051// NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
5052// NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
5053// NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5054// NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005055// NVPTX64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005056// NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005057// NVPTX64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005058// NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
5059// NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
5060// NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
5061// NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5062// NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005063// NVPTX64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005064// NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005065// NVPTX64:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005066// NVPTX64:#define __WCHAR_MAX__ 2147483647
5067// NVPTX64:#define __WCHAR_TYPE__ int
5068// NVPTX64:#define __WCHAR_WIDTH__ 32
5069// NVPTX64:#define __WINT_TYPE__ int
5070// NVPTX64:#define __WINT_WIDTH__ 32
5071//
James Y Knightc97efa42016-02-11 16:51:29 +00005072// 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 +00005073// 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 +00005074//
5075// PPC603E:#define _ARCH_603 1
5076// PPC603E:#define _ARCH_603E 1
5077// PPC603E:#define _ARCH_PPC 1
5078// PPC603E:#define _ARCH_PPCGR 1
5079// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005080// PPC603E-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00005081// PPC603E:#define __BIGGEST_ALIGNMENT__ 8
Hal Finkel6b984f02012-07-03 16:51:04 +00005082// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005083// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel6b984f02012-07-03 16:51:04 +00005084// PPC603E:#define __CHAR16_TYPE__ unsigned short
5085// PPC603E:#define __CHAR32_TYPE__ unsigned int
5086// PPC603E:#define __CHAR_BIT__ 8
5087// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5088// PPC603E:#define __DBL_DIG__ 15
5089// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
5090// PPC603E:#define __DBL_HAS_DENORM__ 1
5091// PPC603E:#define __DBL_HAS_INFINITY__ 1
5092// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
5093// PPC603E:#define __DBL_MANT_DIG__ 53
5094// PPC603E:#define __DBL_MAX_10_EXP__ 308
5095// PPC603E:#define __DBL_MAX_EXP__ 1024
5096// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
5097// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
5098// PPC603E:#define __DBL_MIN_EXP__ (-1021)
5099// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005100// PPC603E:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Hal Finkel6b984f02012-07-03 16:51:04 +00005101// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5102// PPC603E:#define __FLT_DIG__ 6
5103// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
5104// PPC603E:#define __FLT_EVAL_METHOD__ 0
5105// PPC603E:#define __FLT_HAS_DENORM__ 1
5106// PPC603E:#define __FLT_HAS_INFINITY__ 1
5107// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
5108// PPC603E:#define __FLT_MANT_DIG__ 24
5109// PPC603E:#define __FLT_MAX_10_EXP__ 38
5110// PPC603E:#define __FLT_MAX_EXP__ 128
5111// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
5112// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
5113// PPC603E:#define __FLT_MIN_EXP__ (-125)
5114// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
5115// PPC603E:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005116// PPC603E:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005117// PPC603E:#define __INT16_FMTd__ "hd"
5118// PPC603E:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005119// PPC603E:#define __INT16_MAX__ 32767
Hal Finkel6b984f02012-07-03 16:51:04 +00005120// PPC603E:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005121// PPC603E:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005122// PPC603E:#define __INT32_FMTd__ "d"
5123// PPC603E:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005124// PPC603E:#define __INT32_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005125// PPC603E:#define __INT32_TYPE__ int
5126// PPC603E:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005127// PPC603E:#define __INT64_FMTd__ "lld"
5128// PPC603E:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005129// PPC603E:#define __INT64_MAX__ 9223372036854775807LL
Hal Finkel6b984f02012-07-03 16:51:04 +00005130// PPC603E:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005131// PPC603E:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005132// PPC603E:#define __INT8_FMTd__ "hhd"
5133// PPC603E:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005134// PPC603E:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005135// PPC603E:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005136// PPC603E:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005137// PPC603E:#define __INTMAX_FMTd__ "lld"
5138// PPC603E:#define __INTMAX_FMTi__ "lli"
Hal Finkel6b984f02012-07-03 16:51:04 +00005139// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
5140// PPC603E:#define __INTMAX_TYPE__ long long int
5141// PPC603E:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005142// PPC603E:#define __INTPTR_FMTd__ "ld"
5143// PPC603E:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005144// PPC603E:#define __INTPTR_MAX__ 2147483647L
Hal Finkel6b984f02012-07-03 16:51:04 +00005145// PPC603E:#define __INTPTR_TYPE__ long int
5146// PPC603E:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005147// PPC603E:#define __INT_FAST16_FMTd__ "hd"
5148// PPC603E:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005149// PPC603E:#define __INT_FAST16_MAX__ 32767
5150// PPC603E:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005151// PPC603E:#define __INT_FAST32_FMTd__ "d"
5152// PPC603E:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005153// PPC603E:#define __INT_FAST32_MAX__ 2147483647
5154// PPC603E:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005155// PPC603E:#define __INT_FAST64_FMTd__ "lld"
5156// PPC603E:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005157// PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
5158// PPC603E:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005159// PPC603E:#define __INT_FAST8_FMTd__ "hhd"
5160// PPC603E:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005161// PPC603E:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005162// PPC603E:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005163// PPC603E:#define __INT_LEAST16_FMTd__ "hd"
5164// PPC603E:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005165// PPC603E:#define __INT_LEAST16_MAX__ 32767
5166// PPC603E:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005167// PPC603E:#define __INT_LEAST32_FMTd__ "d"
5168// PPC603E:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005169// PPC603E:#define __INT_LEAST32_MAX__ 2147483647
5170// PPC603E:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005171// PPC603E:#define __INT_LEAST64_FMTd__ "lld"
5172// PPC603E:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005173// PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5174// PPC603E:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005175// PPC603E:#define __INT_LEAST8_FMTd__ "hhd"
5176// PPC603E:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005177// PPC603E:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005178// PPC603E:#define __INT_LEAST8_TYPE__ signed char
Hal Finkel6b984f02012-07-03 16:51:04 +00005179// PPC603E:#define __INT_MAX__ 2147483647
5180// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5181// PPC603E:#define __LDBL_DIG__ 31
5182// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5183// PPC603E:#define __LDBL_HAS_DENORM__ 1
5184// PPC603E:#define __LDBL_HAS_INFINITY__ 1
5185// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
5186// PPC603E:#define __LDBL_MANT_DIG__ 106
5187// PPC603E:#define __LDBL_MAX_10_EXP__ 308
5188// PPC603E:#define __LDBL_MAX_EXP__ 1024
5189// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5190// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
5191// PPC603E:#define __LDBL_MIN_EXP__ (-968)
5192// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5193// PPC603E:#define __LONG_DOUBLE_128__ 1
5194// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
5195// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005196// PPC603E-NOT:#define __LP64__
Hal Finkel6b984f02012-07-03 16:51:04 +00005197// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005198// PPC603E:#define __POINTER_WIDTH__ 32
5199// PPC603E:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005200// PPC603E:#define __PPC__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005201// PPC603E:#define __PTRDIFF_TYPE__ long int
5202// PPC603E:#define __PTRDIFF_WIDTH__ 32
5203// PPC603E:#define __REGISTER_PREFIX__
5204// PPC603E:#define __SCHAR_MAX__ 127
5205// PPC603E:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005206// PPC603E:#define __SIG_ATOMIC_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005207// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
5208// PPC603E:#define __SIZEOF_DOUBLE__ 8
5209// PPC603E:#define __SIZEOF_FLOAT__ 4
5210// PPC603E:#define __SIZEOF_INT__ 4
5211// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
5212// PPC603E:#define __SIZEOF_LONG_LONG__ 8
5213// PPC603E:#define __SIZEOF_LONG__ 4
5214// PPC603E:#define __SIZEOF_POINTER__ 4
5215// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
5216// PPC603E:#define __SIZEOF_SHORT__ 2
5217// PPC603E:#define __SIZEOF_SIZE_T__ 4
5218// PPC603E:#define __SIZEOF_WCHAR_T__ 4
5219// PPC603E:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00005220// PPC603E:#define __SIZE_MAX__ 4294967295UL
Hal Finkel6b984f02012-07-03 16:51:04 +00005221// PPC603E:#define __SIZE_TYPE__ long unsigned int
5222// PPC603E:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005223// PPC603E-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005224// PPC603E:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005225// PPC603E:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005226// PPC603E:#define __UINT16_TYPE__ unsigned short
5227// PPC603E:#define __UINT32_C_SUFFIX__ U
5228// PPC603E:#define __UINT32_MAX__ 4294967295U
5229// PPC603E:#define __UINT32_TYPE__ unsigned int
5230// PPC603E:#define __UINT64_C_SUFFIX__ ULL
5231// PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
5232// PPC603E:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005233// PPC603E:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005234// PPC603E:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005235// PPC603E:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005236// PPC603E:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005237// PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
Hal Finkel6b984f02012-07-03 16:51:04 +00005238// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005239// PPC603E:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005240// PPC603E:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005241// PPC603E:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005242// PPC603E:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005243// PPC603E:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005244// PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
5245// PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
5246// PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
5247// PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5248// PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005249// PPC603E:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005250// PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005251// PPC603E:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005252// PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
5253// PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
5254// PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
5255// PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5256// PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005257// PPC603E:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005258// PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005259// PPC603E:#define __USER_LABEL_PREFIX__
Hal Finkel6b984f02012-07-03 16:51:04 +00005260// PPC603E:#define __WCHAR_MAX__ 2147483647
5261// PPC603E:#define __WCHAR_TYPE__ int
5262// PPC603E:#define __WCHAR_WIDTH__ 32
5263// PPC603E:#define __WINT_TYPE__ int
5264// PPC603E:#define __WINT_WIDTH__ 32
5265// PPC603E:#define __powerpc__ 1
5266// PPC603E:#define __ppc__ 1
5267//
James Y Knightc97efa42016-02-11 16:51:29 +00005268// 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 +00005269// 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 +00005270//
5271// PPC64:#define _ARCH_PPC 1
5272// PPC64:#define _ARCH_PPC64 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005273// PPC64:#define _ARCH_PPCGR 1
5274// PPC64:#define _ARCH_PPCSQ 1
5275// PPC64:#define _ARCH_PWR4 1
5276// PPC64:#define _ARCH_PWR5 1
5277// PPC64:#define _ARCH_PWR6 1
Hal Finkel8eb59282012-06-11 22:35:19 +00005278// PPC64:#define _ARCH_PWR7 1
Chris Lattnere963d092009-10-29 04:55:36 +00005279// PPC64:#define _BIG_ENDIAN 1
5280// PPC64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005281// PPC64:#define __BIGGEST_ALIGNMENT__ 8
Chris Lattnere963d092009-10-29 04:55:36 +00005282// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005283// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00005284// PPC64:#define __CHAR16_TYPE__ unsigned short
5285// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00005286// PPC64:#define __CHAR_BIT__ 8
5287// PPC64:#define __CHAR_UNSIGNED__ 1
5288// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5289// PPC64:#define __DBL_DIG__ 15
5290// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5291// PPC64:#define __DBL_HAS_DENORM__ 1
5292// PPC64:#define __DBL_HAS_INFINITY__ 1
5293// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
5294// PPC64:#define __DBL_MANT_DIG__ 53
5295// PPC64:#define __DBL_MAX_10_EXP__ 308
5296// PPC64:#define __DBL_MAX_EXP__ 1024
5297// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
5298// PPC64:#define __DBL_MIN_10_EXP__ (-307)
5299// PPC64:#define __DBL_MIN_EXP__ (-1021)
5300// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005301// PPC64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00005302// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5303// PPC64:#define __FLT_DIG__ 6
5304// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
5305// PPC64:#define __FLT_EVAL_METHOD__ 0
5306// PPC64:#define __FLT_HAS_DENORM__ 1
5307// PPC64:#define __FLT_HAS_INFINITY__ 1
5308// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
5309// PPC64:#define __FLT_MANT_DIG__ 24
5310// PPC64:#define __FLT_MAX_10_EXP__ 38
5311// PPC64:#define __FLT_MAX_EXP__ 128
5312// PPC64:#define __FLT_MAX__ 3.40282347e+38F
5313// PPC64:#define __FLT_MIN_10_EXP__ (-37)
5314// PPC64:#define __FLT_MIN_EXP__ (-125)
5315// PPC64:#define __FLT_MIN__ 1.17549435e-38F
5316// PPC64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005317// PPC64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005318// PPC64:#define __INT16_FMTd__ "hd"
5319// PPC64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005320// PPC64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005321// PPC64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005322// PPC64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005323// PPC64:#define __INT32_FMTd__ "d"
5324// PPC64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005325// PPC64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00005326// PPC64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00005327// PPC64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005328// PPC64:#define __INT64_FMTd__ "ld"
5329// PPC64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005330// PPC64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00005331// PPC64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005332// PPC64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005333// PPC64:#define __INT8_FMTd__ "hhd"
5334// PPC64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005335// PPC64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005336// PPC64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005337// PPC64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005338// PPC64:#define __INTMAX_FMTd__ "ld"
5339// PPC64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00005340// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005341// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00005342// PPC64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005343// PPC64:#define __INTPTR_FMTd__ "ld"
5344// PPC64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005345// PPC64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005346// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005347// PPC64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005348// PPC64:#define __INT_FAST16_FMTd__ "hd"
5349// PPC64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005350// PPC64:#define __INT_FAST16_MAX__ 32767
5351// PPC64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005352// PPC64:#define __INT_FAST32_FMTd__ "d"
5353// PPC64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005354// PPC64:#define __INT_FAST32_MAX__ 2147483647
5355// PPC64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005356// PPC64:#define __INT_FAST64_FMTd__ "ld"
5357// PPC64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005358// PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
5359// PPC64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005360// PPC64:#define __INT_FAST8_FMTd__ "hhd"
5361// PPC64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005362// PPC64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005363// PPC64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005364// PPC64:#define __INT_LEAST16_FMTd__ "hd"
5365// PPC64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005366// PPC64:#define __INT_LEAST16_MAX__ 32767
5367// PPC64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005368// PPC64:#define __INT_LEAST32_FMTd__ "d"
5369// PPC64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005370// PPC64:#define __INT_LEAST32_MAX__ 2147483647
5371// PPC64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005372// PPC64:#define __INT_LEAST64_FMTd__ "ld"
5373// PPC64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005374// PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5375// PPC64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005376// PPC64:#define __INT_LEAST8_FMTd__ "hhd"
5377// PPC64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005378// PPC64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005379// PPC64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005380// PPC64:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005381// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5382// PPC64:#define __LDBL_DIG__ 31
5383// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005384// PPC64:#define __LDBL_HAS_DENORM__ 1
5385// PPC64:#define __LDBL_HAS_INFINITY__ 1
5386// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005387// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00005388// PPC64:#define __LDBL_MAX_10_EXP__ 308
5389// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00005390// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5391// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
5392// PPC64:#define __LDBL_MIN_EXP__ (-968)
5393// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnere963d092009-10-29 04:55:36 +00005394// PPC64:#define __LONG_DOUBLE_128__ 1
5395// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5396// PPC64:#define __LONG_MAX__ 9223372036854775807L
5397// PPC64:#define __LP64__ 1
5398// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005399// PPC64:#define __POINTER_WIDTH__ 64
5400// PPC64:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005401// PPC64:#define __PPC64__ 1
5402// PPC64:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00005403// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00005404// PPC64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005405// PPC64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005406// PPC64:#define __SCHAR_MAX__ 127
5407// PPC64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005408// PPC64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00005409// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005410// PPC64:#define __SIZEOF_DOUBLE__ 8
5411// PPC64:#define __SIZEOF_FLOAT__ 4
5412// PPC64:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00005413// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00005414// PPC64:#define __SIZEOF_LONG_LONG__ 8
5415// PPC64:#define __SIZEOF_LONG__ 8
5416// PPC64:#define __SIZEOF_POINTER__ 8
5417// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
5418// PPC64:#define __SIZEOF_SHORT__ 2
5419// PPC64:#define __SIZEOF_SIZE_T__ 8
5420// PPC64:#define __SIZEOF_WCHAR_T__ 4
5421// PPC64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005422// PPC64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00005423// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005424// PPC64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005425// PPC64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005426// PPC64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005427// PPC64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005428// PPC64:#define __UINT16_TYPE__ unsigned short
5429// PPC64:#define __UINT32_C_SUFFIX__ U
5430// PPC64:#define __UINT32_MAX__ 4294967295U
5431// PPC64:#define __UINT32_TYPE__ unsigned int
5432// PPC64:#define __UINT64_C_SUFFIX__ UL
5433// PPC64:#define __UINT64_MAX__ 18446744073709551615UL
5434// PPC64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005435// PPC64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005436// PPC64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005437// PPC64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005438// PPC64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005439// PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00005440// PPC64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005441// PPC64:#define __UINTMAX_WIDTH__ 64
5442// PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
5443// PPC64:#define __UINTPTR_TYPE__ long unsigned int
5444// PPC64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005445// PPC64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005446// PPC64:#define __UINT_FAST16_TYPE__ unsigned short
5447// PPC64:#define __UINT_FAST32_MAX__ 4294967295U
5448// PPC64:#define __UINT_FAST32_TYPE__ unsigned int
5449// PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5450// PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005451// PPC64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005452// PPC64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005453// PPC64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005454// PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
5455// PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
5456// PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
5457// PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5458// PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005459// PPC64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005460// PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005461// PPC64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005462// PPC64:#define __WCHAR_MAX__ 2147483647
5463// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005464// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005465// PPC64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005466// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005467// PPC64:#define __ppc64__ 1
5468// PPC64:#define __ppc__ 1
5469//
James Y Knightc97efa42016-02-11 16:51:29 +00005470// 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 +00005471//
5472// PPC64LE:#define _ARCH_PPC 1
5473// PPC64LE:#define _ARCH_PPC64 1
5474// PPC64LE:#define _ARCH_PPCGR 1
5475// PPC64LE:#define _ARCH_PPCSQ 1
5476// PPC64LE:#define _ARCH_PWR4 1
5477// PPC64LE:#define _ARCH_PWR5 1
5478// PPC64LE:#define _ARCH_PWR5X 1
5479// PPC64LE:#define _ARCH_PWR6 1
5480// PPC64LE:#define _ARCH_PWR6X 1
5481// PPC64LE:#define _ARCH_PWR7 1
Will Schmidt5fa50f3c2014-03-24 21:09:16 +00005482// PPC64LE:#define _CALL_ELF 2
Bill Schmidt778d3872013-07-26 01:36:11 +00005483// PPC64LE:#define _LITTLE_ENDIAN 1
5484// PPC64LE:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005485// PPC64LE:#define __BIGGEST_ALIGNMENT__ 8
Bill Schmidt778d3872013-07-26 01:36:11 +00005486// PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5487// PPC64LE:#define __CHAR16_TYPE__ unsigned short
5488// PPC64LE:#define __CHAR32_TYPE__ unsigned int
5489// PPC64LE:#define __CHAR_BIT__ 8
5490// PPC64LE:#define __CHAR_UNSIGNED__ 1
5491// PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5492// PPC64LE:#define __DBL_DIG__ 15
5493// PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
5494// PPC64LE:#define __DBL_HAS_DENORM__ 1
5495// PPC64LE:#define __DBL_HAS_INFINITY__ 1
5496// PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
5497// PPC64LE:#define __DBL_MANT_DIG__ 53
5498// PPC64LE:#define __DBL_MAX_10_EXP__ 308
5499// PPC64LE:#define __DBL_MAX_EXP__ 1024
5500// PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
5501// PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
5502// PPC64LE:#define __DBL_MIN_EXP__ (-1021)
5503// PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005504// PPC64LE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Bill Schmidt778d3872013-07-26 01:36:11 +00005505// PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5506// PPC64LE:#define __FLT_DIG__ 6
5507// PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
5508// PPC64LE:#define __FLT_EVAL_METHOD__ 0
5509// PPC64LE:#define __FLT_HAS_DENORM__ 1
5510// PPC64LE:#define __FLT_HAS_INFINITY__ 1
5511// PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
5512// PPC64LE:#define __FLT_MANT_DIG__ 24
5513// PPC64LE:#define __FLT_MAX_10_EXP__ 38
5514// PPC64LE:#define __FLT_MAX_EXP__ 128
5515// PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
5516// PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
5517// PPC64LE:#define __FLT_MIN_EXP__ (-125)
5518// PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
5519// PPC64LE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005520// PPC64LE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005521// PPC64LE:#define __INT16_FMTd__ "hd"
5522// PPC64LE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005523// PPC64LE:#define __INT16_MAX__ 32767
Bill Schmidt778d3872013-07-26 01:36:11 +00005524// PPC64LE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005525// PPC64LE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005526// PPC64LE:#define __INT32_FMTd__ "d"
5527// PPC64LE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005528// PPC64LE:#define __INT32_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005529// PPC64LE:#define __INT32_TYPE__ int
5530// PPC64LE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005531// PPC64LE:#define __INT64_FMTd__ "ld"
5532// PPC64LE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005533// PPC64LE:#define __INT64_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005534// PPC64LE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005535// PPC64LE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005536// PPC64LE:#define __INT8_FMTd__ "hhd"
5537// PPC64LE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005538// PPC64LE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005539// PPC64LE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005540// PPC64LE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005541// PPC64LE:#define __INTMAX_FMTd__ "ld"
5542// PPC64LE:#define __INTMAX_FMTi__ "li"
Bill Schmidt778d3872013-07-26 01:36:11 +00005543// PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
5544// PPC64LE:#define __INTMAX_TYPE__ long int
5545// PPC64LE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005546// PPC64LE:#define __INTPTR_FMTd__ "ld"
5547// PPC64LE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005548// PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005549// PPC64LE:#define __INTPTR_TYPE__ long int
5550// PPC64LE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005551// PPC64LE:#define __INT_FAST16_FMTd__ "hd"
5552// PPC64LE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005553// PPC64LE:#define __INT_FAST16_MAX__ 32767
5554// PPC64LE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005555// PPC64LE:#define __INT_FAST32_FMTd__ "d"
5556// PPC64LE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005557// PPC64LE:#define __INT_FAST32_MAX__ 2147483647
5558// PPC64LE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005559// PPC64LE:#define __INT_FAST64_FMTd__ "ld"
5560// PPC64LE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005561// PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
5562// PPC64LE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005563// PPC64LE:#define __INT_FAST8_FMTd__ "hhd"
5564// PPC64LE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005565// PPC64LE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005566// PPC64LE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005567// PPC64LE:#define __INT_LEAST16_FMTd__ "hd"
5568// PPC64LE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005569// PPC64LE:#define __INT_LEAST16_MAX__ 32767
5570// PPC64LE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005571// PPC64LE:#define __INT_LEAST32_FMTd__ "d"
5572// PPC64LE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005573// PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
5574// PPC64LE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005575// PPC64LE:#define __INT_LEAST64_FMTd__ "ld"
5576// PPC64LE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005577// PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
5578// PPC64LE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005579// PPC64LE:#define __INT_LEAST8_FMTd__ "hhd"
5580// PPC64LE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005581// PPC64LE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005582// PPC64LE:#define __INT_LEAST8_TYPE__ signed char
Bill Schmidt778d3872013-07-26 01:36:11 +00005583// PPC64LE:#define __INT_MAX__ 2147483647
5584// PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5585// PPC64LE:#define __LDBL_DIG__ 31
5586// PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5587// PPC64LE:#define __LDBL_HAS_DENORM__ 1
5588// PPC64LE:#define __LDBL_HAS_INFINITY__ 1
5589// PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
5590// PPC64LE:#define __LDBL_MANT_DIG__ 106
5591// PPC64LE:#define __LDBL_MAX_10_EXP__ 308
5592// PPC64LE:#define __LDBL_MAX_EXP__ 1024
5593// PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5594// PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
5595// PPC64LE:#define __LDBL_MIN_EXP__ (-968)
5596// PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5597// PPC64LE:#define __LITTLE_ENDIAN__ 1
5598// PPC64LE:#define __LONG_DOUBLE_128__ 1
5599// PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
5600// PPC64LE:#define __LONG_MAX__ 9223372036854775807L
5601// PPC64LE:#define __LP64__ 1
5602// PPC64LE:#define __NATURAL_ALIGNMENT__ 1
5603// PPC64LE:#define __POINTER_WIDTH__ 64
5604// PPC64LE:#define __POWERPC__ 1
5605// PPC64LE:#define __PPC64__ 1
5606// PPC64LE:#define __PPC__ 1
5607// PPC64LE:#define __PTRDIFF_TYPE__ long int
5608// PPC64LE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005609// PPC64LE:#define __REGISTER_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005610// PPC64LE:#define __SCHAR_MAX__ 127
5611// PPC64LE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005612// PPC64LE:#define __SIG_ATOMIC_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005613// PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
5614// PPC64LE:#define __SIZEOF_DOUBLE__ 8
5615// PPC64LE:#define __SIZEOF_FLOAT__ 4
5616// PPC64LE:#define __SIZEOF_INT__ 4
5617// PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
5618// PPC64LE:#define __SIZEOF_LONG_LONG__ 8
5619// PPC64LE:#define __SIZEOF_LONG__ 8
5620// PPC64LE:#define __SIZEOF_POINTER__ 8
5621// PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
5622// PPC64LE:#define __SIZEOF_SHORT__ 2
5623// PPC64LE:#define __SIZEOF_SIZE_T__ 8
5624// PPC64LE:#define __SIZEOF_WCHAR_T__ 4
5625// PPC64LE:#define __SIZEOF_WINT_T__ 4
5626// PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
5627// PPC64LE:#define __SIZE_TYPE__ long unsigned int
5628// PPC64LE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005629// PPC64LE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005630// PPC64LE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005631// PPC64LE:#define __UINT16_TYPE__ unsigned short
5632// PPC64LE:#define __UINT32_C_SUFFIX__ U
5633// PPC64LE:#define __UINT32_MAX__ 4294967295U
5634// PPC64LE:#define __UINT32_TYPE__ unsigned int
5635// PPC64LE:#define __UINT64_C_SUFFIX__ UL
5636// PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
5637// PPC64LE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005638// PPC64LE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005639// PPC64LE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005640// PPC64LE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005641// PPC64LE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005642// PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
Bill Schmidt778d3872013-07-26 01:36:11 +00005643// PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005644// PPC64LE:#define __UINTMAX_WIDTH__ 64
5645// PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
5646// PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
5647// PPC64LE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005648// PPC64LE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005649// PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
5650// PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
5651// PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
5652// PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5653// PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005654// PPC64LE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005655// PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005656// PPC64LE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005657// PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
5658// PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
5659// PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
5660// PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5661// PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005662// PPC64LE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005663// PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005664// PPC64LE:#define __USER_LABEL_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005665// PPC64LE:#define __WCHAR_MAX__ 2147483647
5666// PPC64LE:#define __WCHAR_TYPE__ int
5667// PPC64LE:#define __WCHAR_WIDTH__ 32
5668// PPC64LE:#define __WINT_TYPE__ int
5669// PPC64LE:#define __WINT_WIDTH__ 32
5670// PPC64LE:#define __ppc64__ 1
5671// PPC64LE:#define __ppc__ 1
5672//
James Y Knightc97efa42016-02-11 16:51:29 +00005673// 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 +00005674//
5675// PPCA2Q:#define _ARCH_A2 1
5676// PPCA2Q:#define _ARCH_A2Q 1
5677// PPCA2Q:#define _ARCH_PPC 1
5678// PPCA2Q:#define _ARCH_PPC64 1
5679// PPCA2Q:#define _ARCH_QP 1
5680//
James Y Knightc97efa42016-02-11 16:51:29 +00005681// 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 +00005682//
5683// PPCBGQ:#define __THW_BLUEGENE__ 1
5684// PPCBGQ:#define __TOS_BGQ__ 1
5685// PPCBGQ:#define __bg__ 1
5686// PPCBGQ:#define __bgq__ 1
5687//
James Y Knightc97efa42016-02-11 16:51:29 +00005688// 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 +00005689//
5690// PPC630:#define _ARCH_630 1
5691// PPC630:#define _ARCH_PPC 1
5692// PPC630:#define _ARCH_PPC64 1
5693// PPC630:#define _ARCH_PPCGR 1
5694//
James Y Knightc97efa42016-02-11 16:51:29 +00005695// 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 +00005696//
5697// PPCPWR3:#define _ARCH_PPC 1
5698// PPCPWR3:#define _ARCH_PPC64 1
5699// PPCPWR3:#define _ARCH_PPCGR 1
5700//
James Y Knightc97efa42016-02-11 16:51:29 +00005701// 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 +00005702//
5703// PPCPOWER3:#define _ARCH_PPC 1
5704// PPCPOWER3:#define _ARCH_PPC64 1
5705// PPCPOWER3:#define _ARCH_PPCGR 1
5706//
James Y Knightc97efa42016-02-11 16:51:29 +00005707// 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 +00005708//
5709// PPCPWR4:#define _ARCH_PPC 1
5710// PPCPWR4:#define _ARCH_PPC64 1
5711// PPCPWR4:#define _ARCH_PPCGR 1
5712// PPCPWR4:#define _ARCH_PPCSQ 1
5713// PPCPWR4:#define _ARCH_PWR4 1
5714//
James Y Knightc97efa42016-02-11 16:51:29 +00005715// 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 +00005716//
5717// PPCPOWER4:#define _ARCH_PPC 1
5718// PPCPOWER4:#define _ARCH_PPC64 1
5719// PPCPOWER4:#define _ARCH_PPCGR 1
5720// PPCPOWER4:#define _ARCH_PPCSQ 1
5721// PPCPOWER4:#define _ARCH_PWR4 1
5722//
James Y Knightc97efa42016-02-11 16:51:29 +00005723// 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 +00005724//
5725// PPCPWR5:#define _ARCH_PPC 1
5726// PPCPWR5:#define _ARCH_PPC64 1
5727// PPCPWR5:#define _ARCH_PPCGR 1
5728// PPCPWR5:#define _ARCH_PPCSQ 1
5729// PPCPWR5:#define _ARCH_PWR4 1
5730// PPCPWR5:#define _ARCH_PWR5 1
5731//
James Y Knightc97efa42016-02-11 16:51:29 +00005732// 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 +00005733//
5734// PPCPOWER5:#define _ARCH_PPC 1
5735// PPCPOWER5:#define _ARCH_PPC64 1
5736// PPCPOWER5:#define _ARCH_PPCGR 1
5737// PPCPOWER5:#define _ARCH_PPCSQ 1
5738// PPCPOWER5:#define _ARCH_PWR4 1
5739// PPCPOWER5:#define _ARCH_PWR5 1
5740//
James Y Knightc97efa42016-02-11 16:51:29 +00005741// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr5x -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR5X %s
Bill Schmidt38378a02013-02-01 20:23:10 +00005742//
5743// PPCPWR5X:#define _ARCH_PPC 1
5744// PPCPWR5X:#define _ARCH_PPC64 1
5745// PPCPWR5X:#define _ARCH_PPCGR 1
5746// PPCPWR5X:#define _ARCH_PPCSQ 1
5747// PPCPWR5X:#define _ARCH_PWR4 1
5748// PPCPWR5X:#define _ARCH_PWR5 1
5749// PPCPWR5X:#define _ARCH_PWR5X 1
5750//
James Y Knightc97efa42016-02-11 16:51:29 +00005751// 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 +00005752//
5753// PPCPOWER5X:#define _ARCH_PPC 1
5754// PPCPOWER5X:#define _ARCH_PPC64 1
5755// PPCPOWER5X:#define _ARCH_PPCGR 1
5756// PPCPOWER5X:#define _ARCH_PPCSQ 1
5757// PPCPOWER5X:#define _ARCH_PWR4 1
5758// PPCPOWER5X:#define _ARCH_PWR5 1
5759// PPCPOWER5X:#define _ARCH_PWR5X 1
5760//
James Y Knightc97efa42016-02-11 16:51:29 +00005761// 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 +00005762//
5763// PPCPWR6:#define _ARCH_PPC 1
5764// PPCPWR6:#define _ARCH_PPC64 1
5765// PPCPWR6:#define _ARCH_PPCGR 1
5766// PPCPWR6:#define _ARCH_PPCSQ 1
5767// PPCPWR6:#define _ARCH_PWR4 1
5768// PPCPWR6:#define _ARCH_PWR5 1
5769// PPCPWR6:#define _ARCH_PWR5X 1
5770// PPCPWR6:#define _ARCH_PWR6 1
5771//
James Y Knightc97efa42016-02-11 16:51:29 +00005772// 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 +00005773//
5774// PPCPOWER6:#define _ARCH_PPC 1
5775// PPCPOWER6:#define _ARCH_PPC64 1
5776// PPCPOWER6:#define _ARCH_PPCGR 1
5777// PPCPOWER6:#define _ARCH_PPCSQ 1
5778// PPCPOWER6:#define _ARCH_PWR4 1
5779// PPCPOWER6:#define _ARCH_PWR5 1
5780// PPCPOWER6:#define _ARCH_PWR5X 1
5781// PPCPOWER6:#define _ARCH_PWR6 1
5782//
James Y Knightc97efa42016-02-11 16:51:29 +00005783// 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 +00005784//
5785// PPCPWR6X:#define _ARCH_PPC 1
5786// PPCPWR6X:#define _ARCH_PPC64 1
5787// PPCPWR6X:#define _ARCH_PPCGR 1
5788// PPCPWR6X:#define _ARCH_PPCSQ 1
5789// PPCPWR6X:#define _ARCH_PWR4 1
5790// PPCPWR6X:#define _ARCH_PWR5 1
5791// PPCPWR6X:#define _ARCH_PWR5X 1
5792// PPCPWR6X:#define _ARCH_PWR6 1
5793// PPCPWR6X:#define _ARCH_PWR6X 1
5794//
James Y Knightc97efa42016-02-11 16:51:29 +00005795// 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 +00005796//
5797// PPCPOWER6X:#define _ARCH_PPC 1
5798// PPCPOWER6X:#define _ARCH_PPC64 1
5799// PPCPOWER6X:#define _ARCH_PPCGR 1
5800// PPCPOWER6X:#define _ARCH_PPCSQ 1
5801// PPCPOWER6X:#define _ARCH_PWR4 1
5802// PPCPOWER6X:#define _ARCH_PWR5 1
5803// PPCPOWER6X:#define _ARCH_PWR5X 1
5804// PPCPOWER6X:#define _ARCH_PWR6 1
5805// PPCPOWER6X:#define _ARCH_PWR6X 1
5806//
James Y Knightc97efa42016-02-11 16:51:29 +00005807// 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 +00005808//
5809// PPCPWR7:#define _ARCH_PPC 1
5810// PPCPWR7:#define _ARCH_PPC64 1
5811// PPCPWR7:#define _ARCH_PPCGR 1
5812// PPCPWR7:#define _ARCH_PPCSQ 1
5813// PPCPWR7:#define _ARCH_PWR4 1
5814// PPCPWR7:#define _ARCH_PWR5 1
5815// PPCPWR7:#define _ARCH_PWR5X 1
5816// PPCPWR7:#define _ARCH_PWR6 1
5817// PPCPWR7:#define _ARCH_PWR6X 1
5818// PPCPWR7:#define _ARCH_PWR7 1
5819//
James Y Knightc97efa42016-02-11 16:51:29 +00005820// 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 +00005821//
5822// PPCPOWER7:#define _ARCH_PPC 1
5823// PPCPOWER7:#define _ARCH_PPC64 1
5824// PPCPOWER7:#define _ARCH_PPCGR 1
5825// PPCPOWER7:#define _ARCH_PPCSQ 1
5826// PPCPOWER7:#define _ARCH_PWR4 1
5827// PPCPOWER7:#define _ARCH_PWR5 1
5828// PPCPOWER7:#define _ARCH_PWR5X 1
5829// PPCPOWER7:#define _ARCH_PWR6 1
5830// PPCPOWER7:#define _ARCH_PWR6X 1
5831// PPCPOWER7:#define _ARCH_PWR7 1
5832//
James Y Knightc97efa42016-02-11 16:51:29 +00005833// 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 +00005834//
5835// PPCPWR8:#define _ARCH_PPC 1
5836// PPCPWR8:#define _ARCH_PPC64 1
5837// PPCPWR8:#define _ARCH_PPCGR 1
5838// PPCPWR8:#define _ARCH_PPCSQ 1
5839// PPCPWR8:#define _ARCH_PWR4 1
5840// PPCPWR8:#define _ARCH_PWR5 1
5841// PPCPWR8:#define _ARCH_PWR5X 1
5842// PPCPWR8:#define _ARCH_PWR6 1
5843// PPCPWR8:#define _ARCH_PWR6X 1
5844// PPCPWR8:#define _ARCH_PWR7 1
5845// PPCPWR8:#define _ARCH_PWR8 1
5846//
James Y Knightc97efa42016-02-11 16:51:29 +00005847// 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 +00005848//
5849// PPCPOWER8:#define _ARCH_PPC 1
5850// PPCPOWER8:#define _ARCH_PPC64 1
5851// PPCPOWER8:#define _ARCH_PPCGR 1
5852// PPCPOWER8:#define _ARCH_PPCSQ 1
5853// PPCPOWER8:#define _ARCH_PWR4 1
5854// PPCPOWER8:#define _ARCH_PWR5 1
5855// PPCPOWER8:#define _ARCH_PWR5X 1
5856// PPCPOWER8:#define _ARCH_PWR6 1
5857// PPCPOWER8:#define _ARCH_PWR6X 1
5858// PPCPOWER8:#define _ARCH_PWR7 1
5859// PPCPOWER8:#define _ARCH_PWR8 1
5860//
Nemanja Ivanovicd99f21b2016-05-09 18:58:02 +00005861// 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
5862//
5863// PPCPWR9:#define _ARCH_PPC 1
5864// PPCPWR9:#define _ARCH_PPC64 1
5865// PPCPWR9:#define _ARCH_PPCGR 1
5866// PPCPWR9:#define _ARCH_PPCSQ 1
5867// PPCPWR9:#define _ARCH_PWR4 1
5868// PPCPWR9:#define _ARCH_PWR5 1
5869// PPCPWR9:#define _ARCH_PWR5X 1
5870// PPCPWR9:#define _ARCH_PWR6 1
5871// PPCPWR9:#define _ARCH_PWR6X 1
5872// PPCPWR9:#define _ARCH_PWR7 1
5873// PPCPWR9:#define _ARCH_PWR9 1
5874//
5875// 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
5876//
5877// PPCPOWER9:#define _ARCH_PPC 1
5878// PPCPOWER9:#define _ARCH_PPC64 1
5879// PPCPOWER9:#define _ARCH_PPCGR 1
5880// PPCPOWER9:#define _ARCH_PPCSQ 1
5881// PPCPOWER9:#define _ARCH_PWR4 1
5882// PPCPOWER9:#define _ARCH_PWR5 1
5883// PPCPOWER9:#define _ARCH_PWR5X 1
5884// PPCPOWER9:#define _ARCH_PWR6 1
5885// PPCPOWER9:#define _ARCH_PWR6X 1
5886// PPCPOWER9:#define _ARCH_PWR7 1
5887// PPCPOWER9:#define _ARCH_PWR9 1
5888//
Nemanja Ivanovicbb1ea2d2016-05-09 08:52:33 +00005889// 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
5890// PPC-FLOAT128:#define __FLOAT128__ 1
5891//
James Y Knightc97efa42016-02-11 16:51:29 +00005892// 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 +00005893//
5894// PPC64-LINUX:#define _ARCH_PPC 1
5895// PPC64-LINUX:#define _ARCH_PPC64 1
5896// PPC64-LINUX:#define _BIG_ENDIAN 1
5897// PPC64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005898// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 8
Nico Weber3435ede2012-01-31 02:07:33 +00005899// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005900// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00005901// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
5902// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
5903// PPC64-LINUX:#define __CHAR_BIT__ 8
5904// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
5905// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5906// PPC64-LINUX:#define __DBL_DIG__ 15
5907// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
5908// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
5909// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
5910// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
5911// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
5912// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
5913// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
5914// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
5915// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
5916// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
5917// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005918// PPC64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00005919// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5920// PPC64-LINUX:#define __FLT_DIG__ 6
5921// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
5922// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
5923// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
5924// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
5925// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
5926// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
5927// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
5928// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
5929// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
5930// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
5931// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
5932// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
5933// PPC64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005934// PPC64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005935// PPC64-LINUX:#define __INT16_FMTd__ "hd"
5936// PPC64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005937// PPC64-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00005938// PPC64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005939// PPC64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005940// PPC64-LINUX:#define __INT32_FMTd__ "d"
5941// PPC64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005942// PPC64-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005943// PPC64-LINUX:#define __INT32_TYPE__ int
5944// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005945// PPC64-LINUX:#define __INT64_FMTd__ "ld"
5946// PPC64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005947// PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00005948// PPC64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005949// PPC64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005950// PPC64-LINUX:#define __INT8_FMTd__ "hhd"
5951// PPC64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005952// PPC64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005953// PPC64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005954// PPC64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005955// PPC64-LINUX:#define __INTMAX_FMTd__ "ld"
5956// PPC64-LINUX:#define __INTMAX_FMTi__ "li"
Nico Weber3435ede2012-01-31 02:07:33 +00005957// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
5958// PPC64-LINUX:#define __INTMAX_TYPE__ long int
5959// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005960// PPC64-LINUX:#define __INTPTR_FMTd__ "ld"
5961// PPC64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005962// PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00005963// PPC64-LINUX:#define __INTPTR_TYPE__ long int
5964// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005965// PPC64-LINUX:#define __INT_FAST16_FMTd__ "hd"
5966// PPC64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005967// PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
5968// PPC64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005969// PPC64-LINUX:#define __INT_FAST32_FMTd__ "d"
5970// PPC64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005971// PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
5972// PPC64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005973// PPC64-LINUX:#define __INT_FAST64_FMTd__ "ld"
5974// PPC64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005975// PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
5976// PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005977// PPC64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
5978// PPC64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005979// PPC64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005980// PPC64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005981// PPC64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
5982// PPC64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005983// PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
5984// PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005985// PPC64-LINUX:#define __INT_LEAST32_FMTd__ "d"
5986// PPC64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005987// PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
5988// PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005989// PPC64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
5990// PPC64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005991// PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
5992// PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005993// PPC64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
5994// PPC64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005995// PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005996// PPC64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00005997// PPC64-LINUX:#define __INT_MAX__ 2147483647
5998// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5999// PPC64-LINUX:#define __LDBL_DIG__ 31
6000// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6001// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
6002// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
6003// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6004// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
6005// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
6006// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
6007// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6008// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6009// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
6010// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6011// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
6012// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6013// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
6014// PPC64-LINUX:#define __LP64__ 1
6015// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006016// PPC64-LINUX:#define __POINTER_WIDTH__ 64
6017// PPC64-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006018// PPC64-LINUX:#define __PPC64__ 1
6019// PPC64-LINUX:#define __PPC__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006020// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
6021// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
6022// PPC64-LINUX:#define __REGISTER_PREFIX__
6023// PPC64-LINUX:#define __SCHAR_MAX__ 127
6024// PPC64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006025// PPC64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006026// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6027// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
6028// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
6029// PPC64-LINUX:#define __SIZEOF_INT__ 4
6030// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6031// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
6032// PPC64-LINUX:#define __SIZEOF_LONG__ 8
6033// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
6034// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
6035// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
6036// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
6037// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
6038// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006039// PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006040// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
6041// PPC64-LINUX:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006042// PPC64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006043// PPC64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006044// PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
6045// PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
6046// PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
6047// PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
6048// PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
6049// PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
6050// PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006051// PPC64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006052// PPC64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006053// PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006054// PPC64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00006055// PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006056// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006057// PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
6058// PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
6059// PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
6060// PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006061// PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006062// PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6063// PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6064// PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6065// PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6066// PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006067// PPC64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006068// PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006069// PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006070// PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6071// PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6072// PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6073// PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6074// PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006075// PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006076// PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006077// PPC64-LINUX:#define __USER_LABEL_PREFIX__
6078// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
6079// PPC64-LINUX:#define __WCHAR_TYPE__ int
6080// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
6081// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
6082// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
6083// PPC64-LINUX:#define __WINT_WIDTH__ 32
6084// PPC64-LINUX:#define __powerpc64__ 1
6085// PPC64-LINUX:#define __powerpc__ 1
6086// PPC64-LINUX:#define __ppc64__ 1
6087// PPC64-LINUX:#define __ppc__ 1
Ulrich Weigand8afad612014-07-28 13:17:52 +00006088
James Y Knightc97efa42016-02-11 16:51:29 +00006089// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6090// 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
6091// 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
6092// 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
6093// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6094// 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
6095// 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 +00006096// PPC64-ELFv1:#define _CALL_ELF 1
6097// PPC64-ELFv2:#define _CALL_ELF 2
Nico Weber3435ede2012-01-31 02:07:33 +00006098//
James Y Knightc97efa42016-02-11 16:51:29 +00006099// 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 +00006100//
6101// PPC:#define _ARCH_PPC 1
6102// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006103// PPC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006104// PPC:#define __BIGGEST_ALIGNMENT__ 8
Chris Lattnere963d092009-10-29 04:55:36 +00006105// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006106// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006107// PPC:#define __CHAR16_TYPE__ unsigned short
6108// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006109// PPC:#define __CHAR_BIT__ 8
6110// PPC:#define __CHAR_UNSIGNED__ 1
6111// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6112// PPC:#define __DBL_DIG__ 15
6113// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6114// PPC:#define __DBL_HAS_DENORM__ 1
6115// PPC:#define __DBL_HAS_INFINITY__ 1
6116// PPC:#define __DBL_HAS_QUIET_NAN__ 1
6117// PPC:#define __DBL_MANT_DIG__ 53
6118// PPC:#define __DBL_MAX_10_EXP__ 308
6119// PPC:#define __DBL_MAX_EXP__ 1024
6120// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
6121// PPC:#define __DBL_MIN_10_EXP__ (-307)
6122// PPC:#define __DBL_MIN_EXP__ (-1021)
6123// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006124// PPC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006125// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6126// PPC:#define __FLT_DIG__ 6
6127// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
6128// PPC:#define __FLT_EVAL_METHOD__ 0
6129// PPC:#define __FLT_HAS_DENORM__ 1
6130// PPC:#define __FLT_HAS_INFINITY__ 1
6131// PPC:#define __FLT_HAS_QUIET_NAN__ 1
6132// PPC:#define __FLT_MANT_DIG__ 24
6133// PPC:#define __FLT_MAX_10_EXP__ 38
6134// PPC:#define __FLT_MAX_EXP__ 128
6135// PPC:#define __FLT_MAX__ 3.40282347e+38F
6136// PPC:#define __FLT_MIN_10_EXP__ (-37)
6137// PPC:#define __FLT_MIN_EXP__ (-125)
6138// PPC:#define __FLT_MIN__ 1.17549435e-38F
6139// PPC:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006140// PPC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006141// PPC:#define __INT16_FMTd__ "hd"
6142// PPC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006143// PPC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006144// PPC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006145// PPC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006146// PPC:#define __INT32_FMTd__ "d"
6147// PPC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006148// PPC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006149// PPC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006150// PPC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006151// PPC:#define __INT64_FMTd__ "lld"
6152// PPC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006153// PPC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006154// PPC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006155// PPC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006156// PPC:#define __INT8_FMTd__ "hhd"
6157// PPC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006158// PPC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006159// PPC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006160// PPC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006161// PPC:#define __INTMAX_FMTd__ "lld"
6162// PPC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006163// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006164// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006165// PPC:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006166// PPC:#define __INTPTR_FMTd__ "ld"
6167// PPC:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006168// PPC:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00006169// PPC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006170// PPC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006171// PPC:#define __INT_FAST16_FMTd__ "hd"
6172// PPC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006173// PPC:#define __INT_FAST16_MAX__ 32767
6174// PPC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006175// PPC:#define __INT_FAST32_FMTd__ "d"
6176// PPC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006177// PPC:#define __INT_FAST32_MAX__ 2147483647
6178// PPC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006179// PPC:#define __INT_FAST64_FMTd__ "lld"
6180// PPC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006181// PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6182// PPC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006183// PPC:#define __INT_FAST8_FMTd__ "hhd"
6184// PPC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006185// PPC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006186// PPC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006187// PPC:#define __INT_LEAST16_FMTd__ "hd"
6188// PPC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006189// PPC:#define __INT_LEAST16_MAX__ 32767
6190// PPC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006191// PPC:#define __INT_LEAST32_FMTd__ "d"
6192// PPC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006193// PPC:#define __INT_LEAST32_MAX__ 2147483647
6194// PPC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006195// PPC:#define __INT_LEAST64_FMTd__ "lld"
6196// PPC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006197// PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6198// PPC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006199// PPC:#define __INT_LEAST8_FMTd__ "hhd"
6200// PPC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006201// PPC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006202// PPC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006203// PPC:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006204// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6205// PPC:#define __LDBL_DIG__ 31
6206// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006207// PPC:#define __LDBL_HAS_DENORM__ 1
6208// PPC:#define __LDBL_HAS_INFINITY__ 1
6209// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006210// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00006211// PPC:#define __LDBL_MAX_10_EXP__ 308
6212// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00006213// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6214// PPC:#define __LDBL_MIN_10_EXP__ (-291)
6215// PPC:#define __LDBL_MIN_EXP__ (-968)
6216// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnere963d092009-10-29 04:55:36 +00006217// PPC:#define __LONG_DOUBLE_128__ 1
6218// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6219// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006220// PPC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00006221// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00006222// PPC:#define __POINTER_WIDTH__ 32
6223// PPC:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006224// PPC:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00006225// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00006226// PPC:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006227// PPC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006228// PPC:#define __SCHAR_MAX__ 127
6229// PPC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006230// PPC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00006231// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00006232// PPC:#define __SIZEOF_DOUBLE__ 8
6233// PPC:#define __SIZEOF_FLOAT__ 4
6234// PPC:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00006235// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00006236// PPC:#define __SIZEOF_LONG_LONG__ 8
6237// PPC:#define __SIZEOF_LONG__ 4
6238// PPC:#define __SIZEOF_POINTER__ 4
6239// PPC:#define __SIZEOF_PTRDIFF_T__ 4
6240// PPC:#define __SIZEOF_SHORT__ 2
6241// PPC:#define __SIZEOF_SIZE_T__ 4
6242// PPC:#define __SIZEOF_WCHAR_T__ 4
6243// PPC:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00006244// PPC:#define __SIZE_MAX__ 4294967295UL
Chris Lattnere963d092009-10-29 04:55:36 +00006245// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00006246// PPC:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006247// PPC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006248// PPC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006249// PPC:#define __UINT16_TYPE__ unsigned short
6250// PPC:#define __UINT32_C_SUFFIX__ U
6251// PPC:#define __UINT32_MAX__ 4294967295U
6252// PPC:#define __UINT32_TYPE__ unsigned int
6253// PPC:#define __UINT64_C_SUFFIX__ ULL
6254// PPC:#define __UINT64_MAX__ 18446744073709551615ULL
6255// PPC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006256// PPC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006257// PPC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006258// PPC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006259// PPC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006260// PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00006261// PPC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006262// PPC:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006263// PPC:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006264// PPC:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006265// PPC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006266// PPC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006267// PPC:#define __UINT_FAST16_TYPE__ unsigned short
6268// PPC:#define __UINT_FAST32_MAX__ 4294967295U
6269// PPC:#define __UINT_FAST32_TYPE__ unsigned int
6270// PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6271// PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006272// PPC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006273// PPC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006274// PPC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006275// PPC:#define __UINT_LEAST16_TYPE__ unsigned short
6276// PPC:#define __UINT_LEAST32_MAX__ 4294967295U
6277// PPC:#define __UINT_LEAST32_TYPE__ unsigned int
6278// PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6279// PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006280// PPC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006281// PPC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006282// PPC:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006283// PPC:#define __WCHAR_MAX__ 2147483647
6284// PPC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00006285// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006286// PPC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00006287// PPC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006288// PPC:#define __ppc__ 1
6289//
James Y Knightc97efa42016-02-11 16:51:29 +00006290// 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 +00006291//
6292// PPC-LINUX:#define _ARCH_PPC 1
6293// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006294// PPC-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006295// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 8
Nico Weber3435ede2012-01-31 02:07:33 +00006296// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006297// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006298// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
6299// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
6300// PPC-LINUX:#define __CHAR_BIT__ 8
6301// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
6302// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6303// PPC-LINUX:#define __DBL_DIG__ 15
6304// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6305// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
6306// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
6307// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6308// PPC-LINUX:#define __DBL_MANT_DIG__ 53
6309// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
6310// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
6311// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6312// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6313// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
6314// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006315// PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006316// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6317// PPC-LINUX:#define __FLT_DIG__ 6
6318// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6319// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
6320// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
6321// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
6322// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6323// PPC-LINUX:#define __FLT_MANT_DIG__ 24
6324// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
6325// PPC-LINUX:#define __FLT_MAX_EXP__ 128
6326// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6327// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6328// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
6329// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6330// PPC-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006331// PPC-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006332// PPC-LINUX:#define __INT16_FMTd__ "hd"
6333// PPC-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006334// PPC-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006335// PPC-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006336// PPC-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006337// PPC-LINUX:#define __INT32_FMTd__ "d"
6338// PPC-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006339// PPC-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006340// PPC-LINUX:#define __INT32_TYPE__ int
6341// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006342// PPC-LINUX:#define __INT64_FMTd__ "lld"
6343// PPC-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006344// PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Nico Weber3435ede2012-01-31 02:07:33 +00006345// PPC-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006346// PPC-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006347// PPC-LINUX:#define __INT8_FMTd__ "hhd"
6348// PPC-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006349// PPC-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006350// PPC-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006351// PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006352// PPC-LINUX:#define __INTMAX_FMTd__ "lld"
6353// PPC-LINUX:#define __INTMAX_FMTi__ "lli"
Nico Weber3435ede2012-01-31 02:07:33 +00006354// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
6355// PPC-LINUX:#define __INTMAX_TYPE__ long long int
6356// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006357// PPC-LINUX:#define __INTPTR_FMTd__ "d"
6358// PPC-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006359// PPC-LINUX:#define __INTPTR_MAX__ 2147483647
Hal Finkel26908382012-03-02 20:54:36 +00006360// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006361// PPC-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006362// PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
6363// PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006364// PPC-LINUX:#define __INT_FAST16_MAX__ 32767
6365// PPC-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006366// PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
6367// PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006368// PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
6369// PPC-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006370// PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
6371// PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006372// PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
6373// PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006374// PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6375// PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006376// PPC-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006377// PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006378// PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6379// PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006380// PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
6381// PPC-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006382// PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
6383// PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006384// PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6385// PPC-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006386// PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
6387// PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006388// PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6389// PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006390// PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6391// PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006392// PPC-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006393// PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006394// PPC-LINUX:#define __INT_MAX__ 2147483647
6395// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6396// PPC-LINUX:#define __LDBL_DIG__ 31
6397// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6398// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
6399// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
6400// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6401// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
6402// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
6403// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
6404// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6405// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6406// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
6407// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6408// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
6409// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6410// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006411// PPC-LINUX-NOT:#define __LP64__
Nico Weber3435ede2012-01-31 02:07:33 +00006412// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006413// PPC-LINUX:#define __POINTER_WIDTH__ 32
6414// PPC-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006415// PPC-LINUX:#define __PPC__ 1
Hal Finkel26908382012-03-02 20:54:36 +00006416// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006417// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
6418// PPC-LINUX:#define __REGISTER_PREFIX__
6419// PPC-LINUX:#define __SCHAR_MAX__ 127
6420// PPC-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006421// PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006422// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6423// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
6424// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
6425// PPC-LINUX:#define __SIZEOF_INT__ 4
6426// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6427// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
6428// PPC-LINUX:#define __SIZEOF_LONG__ 4
6429// PPC-LINUX:#define __SIZEOF_POINTER__ 4
6430// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
6431// PPC-LINUX:#define __SIZEOF_SHORT__ 2
6432// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
6433// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
6434// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006435// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
Nico Weber3435ede2012-01-31 02:07:33 +00006436// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
6437// PPC-LINUX:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006438// PPC-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006439// PPC-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006440// PPC-LINUX:#define __UINT16_TYPE__ unsigned short
6441// PPC-LINUX:#define __UINT32_C_SUFFIX__ U
6442// PPC-LINUX:#define __UINT32_MAX__ 4294967295U
6443// PPC-LINUX:#define __UINT32_TYPE__ unsigned int
6444// PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
6445// PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
6446// PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006447// PPC-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006448// PPC-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006449// PPC-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006450// PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006451// PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Nico Weber3435ede2012-01-31 02:07:33 +00006452// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006453// PPC-LINUX:#define __UINTMAX_WIDTH__ 64
6454// PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
6455// PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
6456// PPC-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006457// PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006458// PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6459// PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6460// PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6461// PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6462// PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006463// PPC-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006464// PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006465// PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006466// PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6467// PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6468// PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6469// PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6470// PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006471// PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006472// PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006473// PPC-LINUX:#define __USER_LABEL_PREFIX__
6474// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
6475// PPC-LINUX:#define __WCHAR_TYPE__ int
6476// PPC-LINUX:#define __WCHAR_WIDTH__ 32
6477// PPC-LINUX:#define __WINT_TYPE__ unsigned int
6478// PPC-LINUX:#define __WINT_UNSIGNED__ 1
6479// PPC-LINUX:#define __WINT_WIDTH__ 32
6480// PPC-LINUX:#define __powerpc__ 1
6481// PPC-LINUX:#define __ppc__ 1
6482//
James Y Knightc97efa42016-02-11 16:51:29 +00006483// 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 +00006484//
6485// PPC-DARWIN:#define _ARCH_PPC 1
6486// PPC-DARWIN:#define _BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00006487// PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
David Fang072d47b2013-05-16 17:51:48 +00006488// PPC-DARWIN:#define __BIG_ENDIAN__ 1
6489// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6490// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
6491// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
6492// PPC-DARWIN:#define __CHAR_BIT__ 8
6493// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6494// PPC-DARWIN:#define __DBL_DIG__ 15
6495// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
6496// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
6497// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
6498// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
6499// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
6500// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
6501// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
6502// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
6503// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
6504// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
6505// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006506// PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
David Fang072d47b2013-05-16 17:51:48 +00006507// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6508// PPC-DARWIN:#define __FLT_DIG__ 6
6509// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
6510// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
6511// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
6512// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
6513// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
6514// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
6515// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
6516// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
6517// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
6518// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
6519// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
6520// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
6521// PPC-DARWIN:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006522// PPC-DARWIN:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006523// PPC-DARWIN:#define __INT16_FMTd__ "hd"
6524// PPC-DARWIN:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006525// PPC-DARWIN:#define __INT16_MAX__ 32767
David Fang072d47b2013-05-16 17:51:48 +00006526// PPC-DARWIN:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006527// PPC-DARWIN:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006528// PPC-DARWIN:#define __INT32_FMTd__ "d"
6529// PPC-DARWIN:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006530// PPC-DARWIN:#define __INT32_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006531// PPC-DARWIN:#define __INT32_TYPE__ int
6532// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006533// PPC-DARWIN:#define __INT64_FMTd__ "lld"
6534// PPC-DARWIN:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006535// PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
David Fang072d47b2013-05-16 17:51:48 +00006536// PPC-DARWIN:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006537// PPC-DARWIN:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006538// PPC-DARWIN:#define __INT8_FMTd__ "hhd"
6539// PPC-DARWIN:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006540// PPC-DARWIN:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006541// PPC-DARWIN:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006542// PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006543// PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
6544// PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
David Fang072d47b2013-05-16 17:51:48 +00006545// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
6546// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
6547// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006548// PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
6549// PPC-DARWIN:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006550// PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
David Fang072d47b2013-05-16 17:51:48 +00006551// PPC-DARWIN:#define __INTPTR_TYPE__ long int
6552// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006553// PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
6554// PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006555// PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
6556// PPC-DARWIN:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006557// PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
6558// PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006559// PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
6560// PPC-DARWIN:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006561// PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
6562// PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006563// PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
6564// PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006565// PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
6566// PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006567// PPC-DARWIN:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006568// PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006569// PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
6570// PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006571// PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
6572// PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006573// PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
6574// PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006575// PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
6576// PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006577// PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
6578// PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006579// PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6580// PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006581// PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
6582// PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006583// PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006584// PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
David Fang072d47b2013-05-16 17:51:48 +00006585// PPC-DARWIN:#define __INT_MAX__ 2147483647
6586// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6587// PPC-DARWIN:#define __LDBL_DIG__ 31
6588// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6589// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
6590// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
6591// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
6592// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
6593// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
6594// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
6595// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6596// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
6597// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
6598// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6599// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
6600// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
6601// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
6602// PPC-DARWIN:#define __MACH__ 1
6603// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
6604// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
6605// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
6606// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
6607// PPC-DARWIN:#define __POINTER_WIDTH__ 32
6608// PPC-DARWIN:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006609// PPC-DARWIN:#define __PPC__ 1
David Fang072d47b2013-05-16 17:51:48 +00006610// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
6611// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006612// PPC-DARWIN:#define __REGISTER_PREFIX__
David Fang072d47b2013-05-16 17:51:48 +00006613// PPC-DARWIN:#define __SCHAR_MAX__ 127
6614// PPC-DARWIN:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006615// PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006616// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
6617// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
6618// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
6619// PPC-DARWIN:#define __SIZEOF_INT__ 4
6620// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
6621// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
6622// PPC-DARWIN:#define __SIZEOF_LONG__ 4
6623// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
6624// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
6625// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
6626// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
6627// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
6628// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
6629// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
6630// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
6631// PPC-DARWIN:#define __SIZE_WIDTH__ 32
6632// PPC-DARWIN:#define __STDC_HOSTED__ 0
Richard Smithab506ad2014-10-20 23:26:58 +00006633// PPC-DARWIN:#define __STDC_VERSION__ 201112L
David Fang072d47b2013-05-16 17:51:48 +00006634// PPC-DARWIN:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006635// PPC-DARWIN:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006636// PPC-DARWIN:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006637// PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
6638// PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
6639// PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
6640// PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
6641// PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
6642// PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
6643// PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006644// PPC-DARWIN:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006645// PPC-DARWIN:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006646// PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006647// PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006648// PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
David Fang072d47b2013-05-16 17:51:48 +00006649// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006650// PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006651// PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006652// PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006653// PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006654// PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006655// PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
6656// PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
6657// PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
6658// PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6659// PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006660// PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006661// PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006662// PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006663// PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
6664// PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
6665// PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
6666// PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6667// PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006668// PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006669// PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
David Fang072d47b2013-05-16 17:51:48 +00006670// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
6671// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
6672// PPC-DARWIN:#define __WCHAR_TYPE__ int
6673// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
6674// PPC-DARWIN:#define __WINT_TYPE__ int
6675// PPC-DARWIN:#define __WINT_WIDTH__ 32
6676// PPC-DARWIN:#define __powerpc__ 1
6677// PPC-DARWIN:#define __ppc__ 1
6678//
James Y Knightc97efa42016-02-11 16:51:29 +00006679// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
6680// 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 +00006681//
Matt Arsenaultf333de32016-09-07 07:08:02 +00006682// AMDGPU:#define __ENDIAN_LITTLE__ 1
Tom Stellard22041372015-07-17 13:16:52 +00006683// AMDGPU:#define cl_khr_byte_addressable_store 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006684// AMDGCN:#define cl_khr_fp64 1
Tom Stellard22041372015-07-17 13:16:52 +00006685// AMDGPU:#define cl_khr_global_int32_base_atomics 1
6686// AMDGPU:#define cl_khr_global_int32_extended_atomics 1
6687// AMDGPU:#define cl_khr_local_int32_base_atomics 1
6688// AMDGPU:#define cl_khr_local_int32_extended_atomics 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006689
James Y Knightc97efa42016-02-11 16:51:29 +00006690// 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 +00006691// 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 +00006692//
Tim Northovera6a19f12015-02-06 01:25:07 +00006693// S390X:#define __BIGGEST_ALIGNMENT__ 8
Ulrich Weigand47445072013-05-06 16:26:41 +00006694// S390X:#define __CHAR16_TYPE__ unsigned short
6695// S390X:#define __CHAR32_TYPE__ unsigned int
6696// S390X:#define __CHAR_BIT__ 8
6697// S390X:#define __CHAR_UNSIGNED__ 1
6698// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6699// S390X:#define __DBL_DIG__ 15
6700// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
6701// S390X:#define __DBL_HAS_DENORM__ 1
6702// S390X:#define __DBL_HAS_INFINITY__ 1
6703// S390X:#define __DBL_HAS_QUIET_NAN__ 1
6704// S390X:#define __DBL_MANT_DIG__ 53
6705// S390X:#define __DBL_MAX_10_EXP__ 308
6706// S390X:#define __DBL_MAX_EXP__ 1024
6707// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
6708// S390X:#define __DBL_MIN_10_EXP__ (-307)
6709// S390X:#define __DBL_MIN_EXP__ (-1021)
6710// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006711// S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ulrich Weigand47445072013-05-06 16:26:41 +00006712// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6713// S390X:#define __FLT_DIG__ 6
6714// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
6715// S390X:#define __FLT_EVAL_METHOD__ 0
6716// S390X:#define __FLT_HAS_DENORM__ 1
6717// S390X:#define __FLT_HAS_INFINITY__ 1
6718// S390X:#define __FLT_HAS_QUIET_NAN__ 1
6719// S390X:#define __FLT_MANT_DIG__ 24
6720// S390X:#define __FLT_MAX_10_EXP__ 38
6721// S390X:#define __FLT_MAX_EXP__ 128
6722// S390X:#define __FLT_MAX__ 3.40282347e+38F
6723// S390X:#define __FLT_MIN_10_EXP__ (-37)
6724// S390X:#define __FLT_MIN_EXP__ (-125)
6725// S390X:#define __FLT_MIN__ 1.17549435e-38F
6726// S390X:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006727// S390X:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006728// S390X:#define __INT16_FMTd__ "hd"
6729// S390X:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006730// S390X:#define __INT16_MAX__ 32767
Ulrich Weigand47445072013-05-06 16:26:41 +00006731// S390X:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006732// S390X:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006733// S390X:#define __INT32_FMTd__ "d"
6734// S390X:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006735// S390X:#define __INT32_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00006736// S390X:#define __INT32_TYPE__ int
Ulrich Weigand881497a2015-03-30 13:50:21 +00006737// S390X:#define __INT64_C_SUFFIX__ L
6738// S390X:#define __INT64_FMTd__ "ld"
6739// S390X:#define __INT64_FMTi__ "li"
6740// S390X:#define __INT64_MAX__ 9223372036854775807L
6741// S390X:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00006742// S390X:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006743// S390X:#define __INT8_FMTd__ "hhd"
6744// S390X:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006745// S390X:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006746// S390X:#define __INT8_TYPE__ signed char
Ulrich Weigand881497a2015-03-30 13:50:21 +00006747// S390X:#define __INTMAX_C_SUFFIX__ L
6748// S390X:#define __INTMAX_FMTd__ "ld"
6749// S390X:#define __INTMAX_FMTi__ "li"
6750// S390X:#define __INTMAX_MAX__ 9223372036854775807L
6751// S390X:#define __INTMAX_TYPE__ long int
Ulrich Weigand47445072013-05-06 16:26:41 +00006752// S390X:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006753// S390X:#define __INTPTR_FMTd__ "ld"
6754// S390X:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006755// S390X:#define __INTPTR_MAX__ 9223372036854775807L
Ulrich Weigand47445072013-05-06 16:26:41 +00006756// S390X:#define __INTPTR_TYPE__ long int
6757// S390X:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006758// S390X:#define __INT_FAST16_FMTd__ "hd"
6759// S390X:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006760// S390X:#define __INT_FAST16_MAX__ 32767
6761// S390X:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006762// S390X:#define __INT_FAST32_FMTd__ "d"
6763// S390X:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006764// S390X:#define __INT_FAST32_MAX__ 2147483647
6765// S390X:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006766// S390X:#define __INT_FAST64_FMTd__ "ld"
6767// S390X:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006768// S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
6769// S390X:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006770// S390X:#define __INT_FAST8_FMTd__ "hhd"
6771// S390X:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006772// S390X:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006773// S390X:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006774// S390X:#define __INT_LEAST16_FMTd__ "hd"
6775// S390X:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006776// S390X:#define __INT_LEAST16_MAX__ 32767
6777// S390X:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006778// S390X:#define __INT_LEAST32_FMTd__ "d"
6779// S390X:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006780// S390X:#define __INT_LEAST32_MAX__ 2147483647
6781// S390X:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006782// S390X:#define __INT_LEAST64_FMTd__ "ld"
6783// S390X:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006784// S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
6785// S390X:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006786// S390X:#define __INT_LEAST8_FMTd__ "hhd"
6787// S390X:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006788// S390X:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006789// S390X:#define __INT_LEAST8_TYPE__ signed char
Ulrich Weigand47445072013-05-06 16:26:41 +00006790// S390X:#define __INT_MAX__ 2147483647
6791// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
6792// S390X:#define __LDBL_DIG__ 33
6793// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
6794// S390X:#define __LDBL_HAS_DENORM__ 1
6795// S390X:#define __LDBL_HAS_INFINITY__ 1
6796// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
6797// S390X:#define __LDBL_MANT_DIG__ 113
6798// S390X:#define __LDBL_MAX_10_EXP__ 4932
6799// S390X:#define __LDBL_MAX_EXP__ 16384
6800// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
6801// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
6802// S390X:#define __LDBL_MIN_EXP__ (-16381)
6803// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
6804// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
6805// S390X:#define __LONG_MAX__ 9223372036854775807L
6806// S390X:#define __NO_INLINE__ 1
6807// S390X:#define __POINTER_WIDTH__ 64
6808// S390X:#define __PTRDIFF_TYPE__ long int
6809// S390X:#define __PTRDIFF_WIDTH__ 64
6810// S390X:#define __SCHAR_MAX__ 127
6811// S390X:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006812// S390X:#define __SIG_ATOMIC_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00006813// S390X:#define __SIG_ATOMIC_WIDTH__ 32
6814// S390X:#define __SIZEOF_DOUBLE__ 8
6815// S390X:#define __SIZEOF_FLOAT__ 4
6816// S390X:#define __SIZEOF_INT__ 4
6817// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
6818// S390X:#define __SIZEOF_LONG_LONG__ 8
6819// S390X:#define __SIZEOF_LONG__ 8
6820// S390X:#define __SIZEOF_POINTER__ 8
6821// S390X:#define __SIZEOF_PTRDIFF_T__ 8
6822// S390X:#define __SIZEOF_SHORT__ 2
6823// S390X:#define __SIZEOF_SIZE_T__ 8
6824// S390X:#define __SIZEOF_WCHAR_T__ 4
6825// S390X:#define __SIZEOF_WINT_T__ 4
6826// S390X:#define __SIZE_TYPE__ long unsigned int
6827// S390X:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00006828// S390X-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00006829// S390X:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006830// S390X:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006831// S390X:#define __UINT16_TYPE__ unsigned short
6832// S390X:#define __UINT32_C_SUFFIX__ U
6833// S390X:#define __UINT32_MAX__ 4294967295U
6834// S390X:#define __UINT32_TYPE__ unsigned int
Ulrich Weigand881497a2015-03-30 13:50:21 +00006835// S390X:#define __UINT64_C_SUFFIX__ UL
6836// S390X:#define __UINT64_MAX__ 18446744073709551615UL
6837// S390X:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006838// S390X:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006839// S390X:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006840// S390X:#define __UINT8_TYPE__ unsigned char
Ulrich Weigand881497a2015-03-30 13:50:21 +00006841// S390X:#define __UINTMAX_C_SUFFIX__ UL
6842// S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
6843// S390X:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006844// S390X:#define __UINTMAX_WIDTH__ 64
6845// S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
6846// S390X:#define __UINTPTR_TYPE__ long unsigned int
6847// S390X:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006848// S390X:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006849// S390X:#define __UINT_FAST16_TYPE__ unsigned short
6850// S390X:#define __UINT_FAST32_MAX__ 4294967295U
6851// S390X:#define __UINT_FAST32_TYPE__ unsigned int
6852// S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6853// S390X:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006854// S390X:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006855// S390X:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006856// S390X:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006857// S390X:#define __UINT_LEAST16_TYPE__ unsigned short
6858// S390X:#define __UINT_LEAST32_MAX__ 4294967295U
6859// S390X:#define __UINT_LEAST32_TYPE__ unsigned int
6860// S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6861// S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006862// S390X:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006863// S390X:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006864// S390X:#define __USER_LABEL_PREFIX__
Ulrich Weigand47445072013-05-06 16:26:41 +00006865// S390X:#define __WCHAR_MAX__ 2147483647
6866// S390X:#define __WCHAR_TYPE__ int
6867// S390X:#define __WCHAR_WIDTH__ 32
6868// S390X:#define __WINT_TYPE__ int
6869// S390X:#define __WINT_WIDTH__ 32
6870// S390X:#define __s390__ 1
6871// S390X:#define __s390x__ 1
6872//
James Y Knightb214cbc2016-03-04 19:00:41 +00006873// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
6874// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
6875// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
6876// 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 +00006877// 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
6878// 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 +00006879//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006880// SPARC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006881// SPARC:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00006882// SPARC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006883// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006884// SPARC:#define __CHAR16_TYPE__ unsigned short
6885// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006886// SPARC:#define __CHAR_BIT__ 8
6887// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6888// SPARC:#define __DBL_DIG__ 15
6889// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6890// SPARC:#define __DBL_HAS_DENORM__ 1
6891// SPARC:#define __DBL_HAS_INFINITY__ 1
6892// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
6893// SPARC:#define __DBL_MANT_DIG__ 53
6894// SPARC:#define __DBL_MAX_10_EXP__ 308
6895// SPARC:#define __DBL_MAX_EXP__ 1024
6896// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
6897// SPARC:#define __DBL_MIN_10_EXP__ (-307)
6898// SPARC:#define __DBL_MIN_EXP__ (-1021)
6899// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006900// SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006901// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6902// SPARC:#define __FLT_DIG__ 6
6903// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
6904// SPARC:#define __FLT_EVAL_METHOD__ 0
6905// SPARC:#define __FLT_HAS_DENORM__ 1
6906// SPARC:#define __FLT_HAS_INFINITY__ 1
6907// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
6908// SPARC:#define __FLT_MANT_DIG__ 24
6909// SPARC:#define __FLT_MAX_10_EXP__ 38
6910// SPARC:#define __FLT_MAX_EXP__ 128
6911// SPARC:#define __FLT_MAX__ 3.40282347e+38F
6912// SPARC:#define __FLT_MIN_10_EXP__ (-37)
6913// SPARC:#define __FLT_MIN_EXP__ (-125)
6914// SPARC:#define __FLT_MIN__ 1.17549435e-38F
6915// SPARC:#define __FLT_RADIX__ 2
Douglas Katzman13f4a912016-11-09 15:43:51 +00006916// SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
James Y Knightc97efa42016-02-11 16:51:29 +00006917// SPARC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006918// SPARC:#define __INT16_FMTd__ "hd"
6919// SPARC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006920// SPARC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006921// SPARC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006922// SPARC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006923// SPARC:#define __INT32_FMTd__ "d"
6924// SPARC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006925// SPARC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006926// SPARC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006927// SPARC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006928// SPARC:#define __INT64_FMTd__ "lld"
6929// SPARC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006930// SPARC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006931// SPARC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006932// SPARC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006933// SPARC:#define __INT8_FMTd__ "hhd"
6934// SPARC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006935// SPARC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006936// SPARC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006937// SPARC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006938// SPARC:#define __INTMAX_FMTd__ "lld"
6939// SPARC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006940// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006941// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006942// SPARC:#define __INTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00006943// SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
6944// SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
6945// SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
6946// SPARC-DEFAULT:#define __INTPTR_TYPE__ int
6947// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
6948// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
6949// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
6950// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006951// SPARC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006952// SPARC:#define __INT_FAST16_FMTd__ "hd"
6953// SPARC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006954// SPARC:#define __INT_FAST16_MAX__ 32767
6955// SPARC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006956// SPARC:#define __INT_FAST32_FMTd__ "d"
6957// SPARC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006958// SPARC:#define __INT_FAST32_MAX__ 2147483647
6959// SPARC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006960// SPARC:#define __INT_FAST64_FMTd__ "lld"
6961// SPARC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006962// SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6963// SPARC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006964// SPARC:#define __INT_FAST8_FMTd__ "hhd"
6965// SPARC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006966// SPARC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006967// SPARC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006968// SPARC:#define __INT_LEAST16_FMTd__ "hd"
6969// SPARC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006970// SPARC:#define __INT_LEAST16_MAX__ 32767
6971// SPARC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006972// SPARC:#define __INT_LEAST32_FMTd__ "d"
6973// SPARC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006974// SPARC:#define __INT_LEAST32_MAX__ 2147483647
6975// SPARC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006976// SPARC:#define __INT_LEAST64_FMTd__ "lld"
6977// SPARC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006978// SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6979// SPARC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006980// SPARC:#define __INT_LEAST8_FMTd__ "hhd"
6981// SPARC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006982// SPARC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006983// SPARC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006984// SPARC:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006985// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006986// SPARC:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006987// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00006988// SPARC:#define __LDBL_HAS_DENORM__ 1
6989// SPARC:#define __LDBL_HAS_INFINITY__ 1
6990// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
6991// SPARC:#define __LDBL_MANT_DIG__ 53
6992// SPARC:#define __LDBL_MAX_10_EXP__ 308
6993// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006994// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00006995// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
6996// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006997// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00006998// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6999// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007000// SPARC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007001// SPARC:#define __POINTER_WIDTH__ 32
James Y Knightb214cbc2016-03-04 19:00:41 +00007002// SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
7003// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007004// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00007005// SPARC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007006// SPARC:#define __SCHAR_MAX__ 127
7007// SPARC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007008// SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007009// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007010// SPARC:#define __SIZEOF_DOUBLE__ 8
7011// SPARC:#define __SIZEOF_FLOAT__ 4
7012// SPARC:#define __SIZEOF_INT__ 4
7013// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
7014// SPARC:#define __SIZEOF_LONG_LONG__ 8
7015// SPARC:#define __SIZEOF_LONG__ 4
7016// SPARC:#define __SIZEOF_POINTER__ 4
7017// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
7018// SPARC:#define __SIZEOF_SHORT__ 2
7019// SPARC:#define __SIZEOF_SIZE_T__ 4
7020// SPARC:#define __SIZEOF_WCHAR_T__ 4
7021// SPARC:#define __SIZEOF_WINT_T__ 4
James Y Knightb214cbc2016-03-04 19:00:41 +00007022// SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
7023// SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
7024// SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
7025// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007026// SPARC:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007027// SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
7028// SPARC-NETOPENBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007029// SPARC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007030// SPARC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007031// SPARC:#define __UINT16_TYPE__ unsigned short
7032// SPARC:#define __UINT32_C_SUFFIX__ U
7033// SPARC:#define __UINT32_MAX__ 4294967295U
7034// SPARC:#define __UINT32_TYPE__ unsigned int
7035// SPARC:#define __UINT64_C_SUFFIX__ ULL
7036// SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
7037// SPARC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007038// SPARC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007039// SPARC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007040// SPARC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007041// SPARC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00007042// SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00007043// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007044// SPARC:#define __UINTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007045// SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
7046// SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
7047// SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
7048// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007049// SPARC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007050// SPARC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007051// SPARC:#define __UINT_FAST16_TYPE__ unsigned short
7052// SPARC:#define __UINT_FAST32_MAX__ 4294967295U
7053// SPARC:#define __UINT_FAST32_TYPE__ unsigned int
7054// SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7055// SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007056// SPARC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007057// SPARC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007058// SPARC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007059// SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
7060// SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
7061// SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
7062// SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7063// SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007064// SPARC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007065// SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007066// SPARC:#define __USER_LABEL_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00007067// SPARC:#define __VERSION__ "4.2.1 Compatible{{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +00007068// SPARC:#define __WCHAR_MAX__ 2147483647
7069// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007070// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007071// SPARC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007072// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007073// SPARC:#define __sparc 1
7074// SPARC:#define __sparc__ 1
7075// SPARC:#define __sparcv8 1
7076// SPARC:#define sparc 1
James Y Knight4b4d19e2015-06-04 15:36:29 +00007077
James Y Knightc97efa42016-02-11 16:51:29 +00007078// 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 +00007079// 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 +00007080//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007081// TCE-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007082// TCE:#define __BIGGEST_ALIGNMENT__ 4
Robert Lytton2c942c62014-03-10 12:06:29 +00007083// TCE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007084// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007085// TCE:#define __CHAR16_TYPE__ unsigned short
7086// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007087// TCE:#define __CHAR_BIT__ 8
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007088// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnere963d092009-10-29 04:55:36 +00007089// TCE:#define __DBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007090// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnere963d092009-10-29 04:55:36 +00007091// TCE:#define __DBL_HAS_DENORM__ 1
7092// TCE:#define __DBL_HAS_INFINITY__ 1
7093// TCE:#define __DBL_HAS_QUIET_NAN__ 1
7094// TCE:#define __DBL_MANT_DIG__ 24
7095// TCE:#define __DBL_MAX_10_EXP__ 38
7096// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007097// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnere963d092009-10-29 04:55:36 +00007098// TCE:#define __DBL_MIN_10_EXP__ (-37)
7099// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007100// TCE:#define __DBL_MIN__ 1.17549435e-38
Ed Schouten49920992015-02-23 09:12:31 +00007101// TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007102// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7103// TCE:#define __FLT_DIG__ 6
7104// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
7105// TCE:#define __FLT_EVAL_METHOD__ 0
7106// TCE:#define __FLT_HAS_DENORM__ 1
7107// TCE:#define __FLT_HAS_INFINITY__ 1
7108// TCE:#define __FLT_HAS_QUIET_NAN__ 1
7109// TCE:#define __FLT_MANT_DIG__ 24
7110// TCE:#define __FLT_MAX_10_EXP__ 38
7111// TCE:#define __FLT_MAX_EXP__ 128
7112// TCE:#define __FLT_MAX__ 3.40282347e+38F
7113// TCE:#define __FLT_MIN_10_EXP__ (-37)
7114// TCE:#define __FLT_MIN_EXP__ (-125)
7115// TCE:#define __FLT_MIN__ 1.17549435e-38F
7116// TCE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007117// TCE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007118// TCE:#define __INT16_FMTd__ "hd"
7119// TCE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007120// TCE:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007121// TCE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007122// TCE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007123// TCE:#define __INT32_FMTd__ "d"
7124// TCE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007125// TCE:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007126// TCE:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007127// TCE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007128// TCE:#define __INT8_FMTd__ "hhd"
7129// TCE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007130// TCE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007131// TCE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007132// TCE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007133// TCE:#define __INTMAX_FMTd__ "ld"
7134// TCE:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007135// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00007136// TCE:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007137// TCE:#define __INTMAX_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007138// TCE:#define __INTPTR_FMTd__ "d"
7139// TCE:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007140// TCE:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00007141// TCE:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007142// TCE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007143// TCE:#define __INT_FAST16_FMTd__ "hd"
7144// TCE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007145// TCE:#define __INT_FAST16_MAX__ 32767
7146// TCE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007147// TCE:#define __INT_FAST32_FMTd__ "d"
7148// TCE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007149// TCE:#define __INT_FAST32_MAX__ 2147483647
7150// TCE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007151// TCE:#define __INT_FAST8_FMTd__ "hhd"
7152// TCE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007153// TCE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007154// TCE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007155// TCE:#define __INT_LEAST16_FMTd__ "hd"
7156// TCE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007157// TCE:#define __INT_LEAST16_MAX__ 32767
7158// TCE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007159// TCE:#define __INT_LEAST32_FMTd__ "d"
7160// TCE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007161// TCE:#define __INT_LEAST32_MAX__ 2147483647
7162// TCE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007163// TCE:#define __INT_LEAST8_FMTd__ "hhd"
7164// TCE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007165// TCE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007166// TCE:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007167// TCE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007168// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnere963d092009-10-29 04:55:36 +00007169// TCE:#define __LDBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007170// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnere963d092009-10-29 04:55:36 +00007171// TCE:#define __LDBL_HAS_DENORM__ 1
7172// TCE:#define __LDBL_HAS_INFINITY__ 1
7173// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
7174// TCE:#define __LDBL_MANT_DIG__ 24
7175// TCE:#define __LDBL_MAX_10_EXP__ 38
7176// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007177// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnere963d092009-10-29 04:55:36 +00007178// TCE:#define __LDBL_MIN_10_EXP__ (-37)
7179// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007180// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnere963d092009-10-29 04:55:36 +00007181// TCE:#define __LONG_LONG_MAX__ 2147483647LL
7182// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007183// TCE-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007184// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00007185// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00007186// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007187// TCE:#define __SCHAR_MAX__ 127
7188// TCE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007189// TCE:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007190// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007191// TCE:#define __SIZEOF_DOUBLE__ 4
7192// TCE:#define __SIZEOF_FLOAT__ 4
7193// TCE:#define __SIZEOF_INT__ 4
7194// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
7195// TCE:#define __SIZEOF_LONG_LONG__ 4
7196// TCE:#define __SIZEOF_LONG__ 4
7197// TCE:#define __SIZEOF_POINTER__ 4
7198// TCE:#define __SIZEOF_PTRDIFF_T__ 4
7199// TCE:#define __SIZEOF_SHORT__ 2
7200// TCE:#define __SIZEOF_SIZE_T__ 4
7201// TCE:#define __SIZEOF_WCHAR_T__ 4
7202// TCE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007203// TCE:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00007204// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007205// TCE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007206// TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
Chris Lattnere963d092009-10-29 04:55:36 +00007207// TCE:#define __TCE_V1__ 1
7208// TCE:#define __TCE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007209// TCE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007210// TCE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007211// TCE:#define __UINT16_TYPE__ unsigned short
7212// TCE:#define __UINT32_C_SUFFIX__ U
7213// TCE:#define __UINT32_MAX__ 4294967295U
7214// TCE:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007215// TCE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007216// TCE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007217// TCE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007218// TCE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007219// TCE:#define __UINTMAX_MAX__ 4294967295UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007220// TCE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007221// TCE:#define __UINTMAX_WIDTH__ 32
7222// TCE:#define __UINTPTR_MAX__ 4294967295U
7223// TCE:#define __UINTPTR_TYPE__ unsigned int
7224// TCE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007225// TCE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007226// TCE:#define __UINT_FAST16_TYPE__ unsigned short
7227// TCE:#define __UINT_FAST32_MAX__ 4294967295U
7228// TCE:#define __UINT_FAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007229// TCE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007230// TCE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007231// TCE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007232// TCE:#define __UINT_LEAST16_TYPE__ unsigned short
7233// TCE:#define __UINT_LEAST32_MAX__ 4294967295U
7234// TCE:#define __UINT_LEAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007235// TCE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007236// TCE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007237// TCE:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007238// TCE:#define __WCHAR_MAX__ 2147483647
7239// TCE:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007240// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007241// TCE:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007242// TCE:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007243// TCE:#define __tce 1
7244// TCE:#define __tce__ 1
7245// TCE:#define tce 1
7246//
James Y Knightc97efa42016-02-11 16:51:29 +00007247// 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 +00007248// 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 +00007249//
7250// X86_64:#define _LP64 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007251// X86_64-NOT:#define _LP32 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007252// X86_64:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007253// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007254// X86_64:#define __CHAR16_TYPE__ unsigned short
7255// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007256// X86_64:#define __CHAR_BIT__ 8
7257// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7258// X86_64:#define __DBL_DIG__ 15
7259// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
7260// X86_64:#define __DBL_HAS_DENORM__ 1
7261// X86_64:#define __DBL_HAS_INFINITY__ 1
7262// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
7263// X86_64:#define __DBL_MANT_DIG__ 53
7264// X86_64:#define __DBL_MAX_10_EXP__ 308
7265// X86_64:#define __DBL_MAX_EXP__ 1024
7266// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
7267// X86_64:#define __DBL_MIN_10_EXP__ (-307)
7268// X86_64:#define __DBL_MIN_EXP__ (-1021)
7269// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007270// X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007271// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7272// X86_64:#define __FLT_DIG__ 6
7273// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
7274// X86_64:#define __FLT_EVAL_METHOD__ 0
7275// X86_64:#define __FLT_HAS_DENORM__ 1
7276// X86_64:#define __FLT_HAS_INFINITY__ 1
7277// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
7278// X86_64:#define __FLT_MANT_DIG__ 24
7279// X86_64:#define __FLT_MAX_10_EXP__ 38
7280// X86_64:#define __FLT_MAX_EXP__ 128
7281// X86_64:#define __FLT_MAX__ 3.40282347e+38F
7282// X86_64:#define __FLT_MIN_10_EXP__ (-37)
7283// X86_64:#define __FLT_MIN_EXP__ (-125)
7284// X86_64:#define __FLT_MIN__ 1.17549435e-38F
7285// X86_64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007286// X86_64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007287// X86_64:#define __INT16_FMTd__ "hd"
7288// X86_64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007289// X86_64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007290// X86_64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007291// X86_64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007292// X86_64:#define __INT32_FMTd__ "d"
7293// X86_64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007294// X86_64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007295// X86_64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007296// X86_64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007297// X86_64:#define __INT64_FMTd__ "ld"
7298// X86_64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007299// X86_64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00007300// X86_64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007301// X86_64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007302// X86_64:#define __INT8_FMTd__ "hhd"
7303// X86_64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007304// X86_64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007305// X86_64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007306// X86_64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007307// X86_64:#define __INTMAX_FMTd__ "ld"
7308// X86_64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007309// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007310// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007311// X86_64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007312// X86_64:#define __INTPTR_FMTd__ "ld"
7313// X86_64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007314// X86_64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007315// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007316// X86_64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007317// X86_64:#define __INT_FAST16_FMTd__ "hd"
7318// X86_64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007319// X86_64:#define __INT_FAST16_MAX__ 32767
7320// X86_64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007321// X86_64:#define __INT_FAST32_FMTd__ "d"
7322// X86_64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007323// X86_64:#define __INT_FAST32_MAX__ 2147483647
7324// X86_64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007325// X86_64:#define __INT_FAST64_FMTd__ "ld"
7326// X86_64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007327// X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
7328// X86_64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007329// X86_64:#define __INT_FAST8_FMTd__ "hhd"
7330// X86_64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007331// X86_64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007332// X86_64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007333// X86_64:#define __INT_LEAST16_FMTd__ "hd"
7334// X86_64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007335// X86_64:#define __INT_LEAST16_MAX__ 32767
7336// X86_64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007337// X86_64:#define __INT_LEAST32_FMTd__ "d"
7338// X86_64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007339// X86_64:#define __INT_LEAST32_MAX__ 2147483647
7340// X86_64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007341// X86_64:#define __INT_LEAST64_FMTd__ "ld"
7342// X86_64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007343// X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
7344// X86_64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007345// X86_64:#define __INT_LEAST8_FMTd__ "hhd"
7346// X86_64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007347// X86_64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007348// X86_64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007349// X86_64:#define __INT_MAX__ 2147483647
7350// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7351// X86_64:#define __LDBL_DIG__ 18
7352// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7353// X86_64:#define __LDBL_HAS_DENORM__ 1
7354// X86_64:#define __LDBL_HAS_INFINITY__ 1
7355// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
7356// X86_64:#define __LDBL_MANT_DIG__ 64
7357// X86_64:#define __LDBL_MAX_10_EXP__ 4932
7358// X86_64:#define __LDBL_MAX_EXP__ 16384
7359// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7360// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
7361// X86_64:#define __LDBL_MIN_EXP__ (-16381)
7362// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7363// X86_64:#define __LITTLE_ENDIAN__ 1
7364// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
7365// X86_64:#define __LONG_MAX__ 9223372036854775807L
7366// X86_64:#define __LP64__ 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007367// X86_64-NOT:#define __ILP32__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007368// X86_64:#define __MMX__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007369// X86_64:#define __NO_MATH_INLINES 1
7370// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00007371// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007372// X86_64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007373// X86_64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007374// X86_64:#define __SCHAR_MAX__ 127
7375// X86_64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007376// X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007377// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007378// X86_64:#define __SIZEOF_DOUBLE__ 8
7379// X86_64:#define __SIZEOF_FLOAT__ 4
7380// X86_64:#define __SIZEOF_INT__ 4
7381// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
7382// X86_64:#define __SIZEOF_LONG_LONG__ 8
7383// X86_64:#define __SIZEOF_LONG__ 8
7384// X86_64:#define __SIZEOF_POINTER__ 8
7385// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
7386// X86_64:#define __SIZEOF_SHORT__ 2
7387// X86_64:#define __SIZEOF_SIZE_T__ 8
7388// X86_64:#define __SIZEOF_WCHAR_T__ 4
7389// X86_64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007390// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00007391// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007392// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00007393// X86_64:#define __SSE2_MATH__ 1
7394// X86_64:#define __SSE2__ 1
7395// X86_64:#define __SSE_MATH__ 1
7396// X86_64:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007397// X86_64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00007398// X86_64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007399// X86_64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007400// X86_64:#define __UINT16_TYPE__ unsigned short
7401// X86_64:#define __UINT32_C_SUFFIX__ U
7402// X86_64:#define __UINT32_MAX__ 4294967295U
7403// X86_64:#define __UINT32_TYPE__ unsigned int
7404// X86_64:#define __UINT64_C_SUFFIX__ UL
7405// X86_64:#define __UINT64_MAX__ 18446744073709551615UL
7406// X86_64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007407// X86_64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007408// X86_64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007409// X86_64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007410// X86_64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007411// X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007412// X86_64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007413// X86_64:#define __UINTMAX_WIDTH__ 64
7414// X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
7415// X86_64:#define __UINTPTR_TYPE__ long unsigned int
7416// X86_64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007417// X86_64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007418// X86_64:#define __UINT_FAST16_TYPE__ unsigned short
7419// X86_64:#define __UINT_FAST32_MAX__ 4294967295U
7420// X86_64:#define __UINT_FAST32_TYPE__ unsigned int
7421// X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7422// X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007423// X86_64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007424// X86_64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007425// X86_64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007426// X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
7427// X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
7428// X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
7429// X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7430// X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007431// X86_64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007432// X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007433// X86_64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007434// X86_64:#define __WCHAR_MAX__ 2147483647
7435// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007436// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007437// X86_64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007438// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007439// X86_64:#define __amd64 1
7440// X86_64:#define __amd64__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007441// X86_64:#define __x86_64 1
7442// X86_64:#define __x86_64__ 1
7443//
James Y Knightc97efa42016-02-11 16:51:29 +00007444// 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 +00007445//
7446// X86_64H:#define __x86_64 1
7447// X86_64H:#define __x86_64__ 1
7448// X86_64H:#define __x86_64h 1
7449// X86_64H:#define __x86_64h__ 1
7450
James Y Knightc97efa42016-02-11 16:51:29 +00007451// 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 +00007452// 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 +00007453//
7454// X32:#define _ILP32 1
7455// X32-NOT:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007456// X32:#define __BIGGEST_ALIGNMENT__ 16
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007457// X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7458// X32:#define __CHAR16_TYPE__ unsigned short
7459// X32:#define __CHAR32_TYPE__ unsigned int
7460// X32:#define __CHAR_BIT__ 8
7461// X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7462// X32:#define __DBL_DIG__ 15
7463// X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
7464// X32:#define __DBL_HAS_DENORM__ 1
7465// X32:#define __DBL_HAS_INFINITY__ 1
7466// X32:#define __DBL_HAS_QUIET_NAN__ 1
7467// X32:#define __DBL_MANT_DIG__ 53
7468// X32:#define __DBL_MAX_10_EXP__ 308
7469// X32:#define __DBL_MAX_EXP__ 1024
7470// X32:#define __DBL_MAX__ 1.7976931348623157e+308
7471// X32:#define __DBL_MIN_10_EXP__ (-307)
7472// X32:#define __DBL_MIN_EXP__ (-1021)
7473// X32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007474// X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007475// X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7476// X32:#define __FLT_DIG__ 6
7477// X32:#define __FLT_EPSILON__ 1.19209290e-7F
7478// X32:#define __FLT_EVAL_METHOD__ 0
7479// X32:#define __FLT_HAS_DENORM__ 1
7480// X32:#define __FLT_HAS_INFINITY__ 1
7481// X32:#define __FLT_HAS_QUIET_NAN__ 1
7482// X32:#define __FLT_MANT_DIG__ 24
7483// X32:#define __FLT_MAX_10_EXP__ 38
7484// X32:#define __FLT_MAX_EXP__ 128
7485// X32:#define __FLT_MAX__ 3.40282347e+38F
7486// X32:#define __FLT_MIN_10_EXP__ (-37)
7487// X32:#define __FLT_MIN_EXP__ (-125)
7488// X32:#define __FLT_MIN__ 1.17549435e-38F
7489// X32:#define __FLT_RADIX__ 2
7490// X32:#define __ILP32__ 1
7491// X32-NOT:#define __LP64__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007492// X32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007493// X32:#define __INT16_FMTd__ "hd"
7494// X32:#define __INT16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007495// X32:#define __INT16_MAX__ 32767
7496// X32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007497// X32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007498// X32:#define __INT32_FMTd__ "d"
7499// X32:#define __INT32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007500// X32:#define __INT32_MAX__ 2147483647
7501// X32:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007502// X32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007503// X32:#define __INT64_FMTd__ "lld"
7504// X32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007505// X32:#define __INT64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007506// X32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007507// X32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007508// X32:#define __INT8_FMTd__ "hhd"
7509// X32:#define __INT8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007510// X32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007511// X32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007512// X32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007513// X32:#define __INTMAX_FMTd__ "lld"
7514// X32:#define __INTMAX_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007515// X32:#define __INTMAX_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007516// X32:#define __INTMAX_TYPE__ long long int
7517// X32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007518// X32:#define __INTPTR_FMTd__ "d"
7519// X32:#define __INTPTR_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007520// X32:#define __INTPTR_MAX__ 2147483647
7521// X32:#define __INTPTR_TYPE__ int
7522// X32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007523// X32:#define __INT_FAST16_FMTd__ "hd"
7524// X32:#define __INT_FAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007525// X32:#define __INT_FAST16_MAX__ 32767
7526// X32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007527// X32:#define __INT_FAST32_FMTd__ "d"
7528// X32:#define __INT_FAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007529// X32:#define __INT_FAST32_MAX__ 2147483647
7530// X32:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007531// X32:#define __INT_FAST64_FMTd__ "lld"
7532// X32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007533// X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007534// X32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007535// X32:#define __INT_FAST8_FMTd__ "hhd"
7536// X32:#define __INT_FAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007537// X32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007538// X32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007539// X32:#define __INT_LEAST16_FMTd__ "hd"
7540// X32:#define __INT_LEAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007541// X32:#define __INT_LEAST16_MAX__ 32767
7542// X32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007543// X32:#define __INT_LEAST32_FMTd__ "d"
7544// X32:#define __INT_LEAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007545// X32:#define __INT_LEAST32_MAX__ 2147483647
7546// X32:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007547// X32:#define __INT_LEAST64_FMTd__ "lld"
7548// X32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007549// X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007550// X32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007551// X32:#define __INT_LEAST8_FMTd__ "hhd"
7552// X32:#define __INT_LEAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007553// X32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007554// X32:#define __INT_LEAST8_TYPE__ signed char
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007555// X32:#define __INT_MAX__ 2147483647
7556// X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7557// X32:#define __LDBL_DIG__ 18
7558// X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7559// X32:#define __LDBL_HAS_DENORM__ 1
7560// X32:#define __LDBL_HAS_INFINITY__ 1
7561// X32:#define __LDBL_HAS_QUIET_NAN__ 1
7562// X32:#define __LDBL_MANT_DIG__ 64
7563// X32:#define __LDBL_MAX_10_EXP__ 4932
7564// X32:#define __LDBL_MAX_EXP__ 16384
7565// X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7566// X32:#define __LDBL_MIN_10_EXP__ (-4931)
7567// X32:#define __LDBL_MIN_EXP__ (-16381)
7568// X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7569// X32:#define __LITTLE_ENDIAN__ 1
7570// X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
7571// X32:#define __LONG_MAX__ 2147483647L
7572// X32:#define __MMX__ 1
7573// X32:#define __NO_MATH_INLINES 1
7574// X32:#define __POINTER_WIDTH__ 32
7575// X32:#define __PTRDIFF_TYPE__ int
7576// X32:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00007577// X32:#define __REGISTER_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007578// X32:#define __SCHAR_MAX__ 127
7579// X32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007580// X32:#define __SIG_ATOMIC_MAX__ 2147483647
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007581// X32:#define __SIG_ATOMIC_WIDTH__ 32
7582// X32:#define __SIZEOF_DOUBLE__ 8
7583// X32:#define __SIZEOF_FLOAT__ 4
7584// X32:#define __SIZEOF_INT__ 4
7585// X32:#define __SIZEOF_LONG_DOUBLE__ 16
7586// X32:#define __SIZEOF_LONG_LONG__ 8
7587// X32:#define __SIZEOF_LONG__ 4
7588// X32:#define __SIZEOF_POINTER__ 4
7589// X32:#define __SIZEOF_PTRDIFF_T__ 4
7590// X32:#define __SIZEOF_SHORT__ 2
7591// X32:#define __SIZEOF_SIZE_T__ 4
7592// X32:#define __SIZEOF_WCHAR_T__ 4
7593// X32:#define __SIZEOF_WINT_T__ 4
7594// X32:#define __SIZE_MAX__ 4294967295U
7595// X32:#define __SIZE_TYPE__ unsigned int
7596// X32:#define __SIZE_WIDTH__ 32
7597// X32:#define __SSE2_MATH__ 1
7598// X32:#define __SSE2__ 1
7599// X32:#define __SSE_MATH__ 1
7600// X32:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007601// X32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
James Y Knightc97efa42016-02-11 16:51:29 +00007602// X32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007603// X32:#define __UINT16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007604// X32:#define __UINT16_TYPE__ unsigned short
7605// X32:#define __UINT32_C_SUFFIX__ U
7606// X32:#define __UINT32_MAX__ 4294967295U
7607// X32:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007608// X32:#define __UINT64_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007609// X32:#define __UINT64_MAX__ 18446744073709551615ULL
7610// X32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007611// X32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007612// X32:#define __UINT8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007613// X32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007614// X32:#define __UINTMAX_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007615// X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
7616// X32:#define __UINTMAX_TYPE__ long long unsigned int
7617// X32:#define __UINTMAX_WIDTH__ 64
7618// X32:#define __UINTPTR_MAX__ 4294967295U
7619// X32:#define __UINTPTR_TYPE__ unsigned int
7620// X32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007621// X32:#define __UINT_FAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007622// X32:#define __UINT_FAST16_TYPE__ unsigned short
7623// X32:#define __UINT_FAST32_MAX__ 4294967295U
7624// X32:#define __UINT_FAST32_TYPE__ unsigned int
7625// X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7626// X32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007627// X32:#define __UINT_FAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007628// X32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007629// X32:#define __UINT_LEAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007630// X32:#define __UINT_LEAST16_TYPE__ unsigned short
7631// X32:#define __UINT_LEAST32_MAX__ 4294967295U
7632// X32:#define __UINT_LEAST32_TYPE__ unsigned int
7633// X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7634// X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007635// X32:#define __UINT_LEAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007636// X32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007637// X32:#define __USER_LABEL_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007638// X32:#define __WCHAR_MAX__ 2147483647
7639// X32:#define __WCHAR_TYPE__ int
7640// X32:#define __WCHAR_WIDTH__ 32
7641// X32:#define __WINT_TYPE__ int
7642// X32:#define __WINT_WIDTH__ 32
7643// X32:#define __amd64 1
7644// X32:#define __amd64__ 1
7645// X32:#define __x86_64 1
7646// X32:#define __x86_64__ 1
7647//
James Y Knightc97efa42016-02-11 16:51:29 +00007648// 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 +00007649//
7650// X86_64-CLOUDABI:#define _LP64 1
7651// X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
7652// X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
7653// X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
7654// X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
7655// X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
7656// X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
7657// X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
7658// X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7659// X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
7660// X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
7661// X86_64-CLOUDABI:#define __CHAR_BIT__ 8
7662// X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
7663// X86_64-CLOUDABI:#define __CloudABI__ 1
7664// X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
7665// X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7666// X86_64-CLOUDABI:#define __DBL_DIG__ 15
7667// X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
7668// X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
7669// X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
7670// X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
7671// X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
7672// X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
7673// X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
7674// X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
7675// X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
7676// X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
7677// X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
7678// X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7679// X86_64-CLOUDABI:#define __ELF__ 1
7680// X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
7681// X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
7682// X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7683// X86_64-CLOUDABI:#define __FLT_DIG__ 6
7684// X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
7685// X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
7686// X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
7687// X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
7688// X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
7689// X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
7690// X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
7691// X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
7692// X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
7693// X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
7694// X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
7695// X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
7696// X86_64-CLOUDABI:#define __FLT_RADIX__ 2
7697// X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
7698// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
7699// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
7700// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
7701// X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
7702// X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
7703// X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
7704// X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
7705// X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
7706// X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
7707// X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
7708// X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
7709// X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
7710// X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
7711// X86_64-CLOUDABI:#define __GNUC__ 4
7712// X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
James Y Knightc97efa42016-02-11 16:51:29 +00007713// X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007714// X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
7715// X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
7716// X86_64-CLOUDABI:#define __INT16_MAX__ 32767
7717// X86_64-CLOUDABI:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007718// X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007719// X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
7720// X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
7721// X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
7722// X86_64-CLOUDABI:#define __INT32_TYPE__ int
7723// X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
7724// X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
7725// X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
7726// X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
7727// X86_64-CLOUDABI:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007728// X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007729// X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
7730// X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
7731// X86_64-CLOUDABI:#define __INT8_MAX__ 127
7732// X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
7733// X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
7734// X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
7735// X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
7736// X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
7737// X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
7738// X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
7739// X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
7740// X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
7741// X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
7742// X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
7743// X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
7744// X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
7745// X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
7746// X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
7747// X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
7748// X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
7749// X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
7750// X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
7751// X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
7752// X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
7753// X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
7754// X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
7755// X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
7756// X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
7757// X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
7758// X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
7759// X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
7760// X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
7761// X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
7762// X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
7763// X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
7764// X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
7765// X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
7766// X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
7767// X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
7768// X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
7769// X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
7770// X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
7771// X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
7772// X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
7773// X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
7774// X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
7775// X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
7776// X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
7777// X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
7778// X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7779// X86_64-CLOUDABI:#define __LDBL_DIG__ 18
7780// X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7781// X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
7782// X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
7783// X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
7784// X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
7785// X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
7786// X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
7787// X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7788// X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
7789// X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
7790// X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7791// X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
7792// X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
7793// X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
7794// X86_64-CLOUDABI:#define __LP64__ 1
7795// X86_64-CLOUDABI:#define __MMX__ 1
7796// X86_64-CLOUDABI:#define __NO_INLINE__ 1
7797// X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
7798// X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
7799// X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
7800// X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
7801// X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
7802// X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
7803// X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
7804// X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
7805// X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
7806// X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
7807// X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007808// X86_64-CLOUDABI:#define __REGISTER_PREFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007809// X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
7810// X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
7811// X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
7812// X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
7813// X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
7814// X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
7815// X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
7816// X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
7817// X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
7818// X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
7819// X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
7820// X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
7821// X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
7822// X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
7823// X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
7824// X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
7825// X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
7826// X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
7827// X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
7828// X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
7829// X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
7830// X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
7831// X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
7832// X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
7833// X86_64-CLOUDABI:#define __SSE2_MATH__ 1
7834// X86_64-CLOUDABI:#define __SSE2__ 1
7835// X86_64-CLOUDABI:#define __SSE_MATH__ 1
7836// X86_64-CLOUDABI:#define __SSE__ 1
7837// X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
7838// X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
7839// X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
7840// X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
7841// X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
7842// X86_64-CLOUDABI:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007843// X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007844// X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
7845// X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
7846// X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
7847// X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
7848// X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
7849// X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
7850// X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
7851// X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
7852// X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
7853// X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
7854// X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
7855// X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
7856// X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
7857// X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
7858// X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
7859// X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
7860// X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
7861// X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
7862// X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
7863// X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007864// X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007865// X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
7866// X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
7867// X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
7868// X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
7869// X86_64-CLOUDABI:#define __UINT8_MAX__ 255
7870// X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
7871// X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
7872// X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
7873// X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
7874// X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
7875// X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
7876// X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
7877// X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
7878// X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
7879// X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
7880// X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
7881// X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
7882// X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
7883// X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
7884// X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
7885// X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
7886// X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
7887// X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
7888// X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
7889// X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
7890// X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
7891// X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
7892// X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
7893// X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
7894// X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
7895// X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
7896// X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
7897// X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
7898// X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
7899// X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
7900// X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
7901// X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
7902// X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7903// X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
7904// X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
7905// X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
7906// X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
7907// X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
7908// X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
7909// X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
7910// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
7911// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
7912// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
7913// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
7914// X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
7915// X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
7916// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
7917// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
7918// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
7919// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
7920// X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
7921// X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
7922// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
7923// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
7924// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
7925// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
7926// X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7927// X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
7928// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
7929// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
7930// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
7931// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
7932// X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
7933// X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00007934// X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
7935// X86_64-CLOUDABI:#define __VERSION__ "4.2.1 Compatible{{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00007936// X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
7937// X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
7938// X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
7939// X86_64-CLOUDABI:#define __WINT_TYPE__ int
7940// X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
7941// X86_64-CLOUDABI:#define __amd64 1
7942// X86_64-CLOUDABI:#define __amd64__ 1
7943// X86_64-CLOUDABI:#define __clang__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007944// X86_64-CLOUDABI:#define __clang_major__ {{.*}}
7945// X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
7946// X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
7947// X86_64-CLOUDABI:#define __clang_version__ {{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00007948// X86_64-CLOUDABI:#define __llvm__ 1
7949// X86_64-CLOUDABI:#define __x86_64 1
7950// X86_64-CLOUDABI:#define __x86_64__ 1
7951//
James Y Knightc97efa42016-02-11 16:51:29 +00007952// 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 +00007953//
7954// X86_64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007955// X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007956// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00007957// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
7958// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
7959// X86_64-LINUX:#define __CHAR_BIT__ 8
7960// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7961// X86_64-LINUX:#define __DBL_DIG__ 15
7962// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
7963// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
7964// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
7965// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
7966// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
7967// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
7968// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
7969// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
7970// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
7971// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
7972// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007973// X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00007974// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7975// X86_64-LINUX:#define __FLT_DIG__ 6
7976// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
7977// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
7978// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
7979// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
7980// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
7981// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
7982// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
7983// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
7984// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
7985// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
7986// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
7987// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
7988// X86_64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007989// X86_64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007990// X86_64-LINUX:#define __INT16_FMTd__ "hd"
7991// X86_64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007992// X86_64-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00007993// X86_64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007994// X86_64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007995// X86_64-LINUX:#define __INT32_FMTd__ "d"
7996// X86_64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007997// X86_64-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00007998// X86_64-LINUX:#define __INT32_TYPE__ int
7999// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008000// X86_64-LINUX:#define __INT64_FMTd__ "ld"
8001// X86_64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008002// X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008003// X86_64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008004// X86_64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008005// X86_64-LINUX:#define __INT8_FMTd__ "hhd"
8006// X86_64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008007// X86_64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008008// X86_64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008009// X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008010// X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
8011// X86_64-LINUX:#define __INTMAX_FMTi__ "li"
Douglas Gregore6d6e512011-01-12 21:19:25 +00008012// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
8013// X86_64-LINUX:#define __INTMAX_TYPE__ long int
8014// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008015// X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
8016// X86_64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008017// X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008018// X86_64-LINUX:#define __INTPTR_TYPE__ long int
8019// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008020// X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
8021// X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008022// X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
8023// X86_64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008024// X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
8025// X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008026// X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
8027// X86_64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008028// X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
8029// X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008030// X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
8031// X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008032// X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
8033// X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008034// X86_64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008035// X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008036// X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
8037// X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008038// X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
8039// X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008040// X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
8041// X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008042// X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
8043// X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008044// X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
8045// X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008046// X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
8047// X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008048// X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
8049// X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008050// X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008051// X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008052// X86_64-LINUX:#define __INT_MAX__ 2147483647
8053// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8054// X86_64-LINUX:#define __LDBL_DIG__ 18
8055// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8056// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
8057// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
8058// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
8059// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
8060// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
8061// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
8062// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8063// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
8064// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
8065// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8066// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
8067// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
8068// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
8069// X86_64-LINUX:#define __LP64__ 1
8070// X86_64-LINUX:#define __MMX__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008071// X86_64-LINUX:#define __NO_MATH_INLINES 1
8072// X86_64-LINUX:#define __POINTER_WIDTH__ 64
8073// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
8074// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008075// X86_64-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008076// X86_64-LINUX:#define __SCHAR_MAX__ 127
8077// X86_64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008078// X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008079// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
8080// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
8081// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
8082// X86_64-LINUX:#define __SIZEOF_INT__ 4
8083// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
8084// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
8085// X86_64-LINUX:#define __SIZEOF_LONG__ 8
8086// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
8087// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
8088// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
8089// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
8090// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
8091// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00008092// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008093// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
8094// X86_64-LINUX:#define __SIZE_WIDTH__ 64
8095// X86_64-LINUX:#define __SSE2_MATH__ 1
8096// X86_64-LINUX:#define __SSE2__ 1
8097// X86_64-LINUX:#define __SSE_MATH__ 1
8098// X86_64-LINUX:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008099// X86_64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008100// X86_64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008101// X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
8102// X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
8103// X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
8104// X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
8105// X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
8106// X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
8107// X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008108// X86_64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008109// X86_64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008110// X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008111// X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008112// X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008113// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008114// X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
8115// X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
8116// X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
8117// X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008118// X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008119// X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
8120// X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
8121// X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
8122// X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8123// X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008124// X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008125// X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008126// X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008127// X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
8128// X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
8129// X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
8130// X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8131// X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008132// X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008133// X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008134// X86_64-LINUX:#define __USER_LABEL_PREFIX__
8135// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
8136// X86_64-LINUX:#define __WCHAR_TYPE__ int
8137// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
8138// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
8139// X86_64-LINUX:#define __WINT_WIDTH__ 32
8140// X86_64-LINUX:#define __amd64 1
8141// X86_64-LINUX:#define __amd64__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008142// X86_64-LINUX:#define __x86_64 1
8143// X86_64-LINUX:#define __x86_64__ 1
8144//
James Y Knightc97efa42016-02-11 16:51:29 +00008145// 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 +00008146//
Ed Schouten49920992015-02-23 09:12:31 +00008147// X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
8148// X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
Ed Schoutend0621462013-09-29 07:54:52 +00008149// X86_64-FREEBSD:#define __FreeBSD__ 9
8150// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
Ed Schouten49920992015-02-23 09:12:31 +00008151// X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
Ed Schoutend0621462013-09-29 07:54:52 +00008152// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
8153//
James Y Knightc97efa42016-02-11 16:51:29 +00008154// 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 +00008155//
8156// X86_64-NETBSD:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008157// X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008158// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8159// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
8160// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
8161// X86_64-NETBSD:#define __CHAR_BIT__ 8
8162// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8163// X86_64-NETBSD:#define __DBL_DIG__ 15
8164// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
8165// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
8166// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
8167// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
8168// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
8169// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
8170// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
8171// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
8172// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
8173// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
8174// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008175// X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008176// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8177// X86_64-NETBSD:#define __FLT_DIG__ 6
8178// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
8179// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
8180// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
8181// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
8182// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
8183// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
8184// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
8185// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
8186// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
8187// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
8188// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
8189// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
8190// X86_64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008191// X86_64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008192// X86_64-NETBSD:#define __INT16_FMTd__ "hd"
8193// X86_64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008194// X86_64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008195// X86_64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008196// X86_64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008197// X86_64-NETBSD:#define __INT32_FMTd__ "d"
8198// X86_64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008199// X86_64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008200// X86_64-NETBSD:#define __INT32_TYPE__ int
8201// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008202// X86_64-NETBSD:#define __INT64_FMTd__ "ld"
8203// X86_64-NETBSD:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008204// X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008205// X86_64-NETBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008206// X86_64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008207// X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
8208// X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008209// X86_64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008210// X86_64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008211// X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008212// X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
8213// X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008214// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
8215// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
8216// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008217// X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
8218// X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008219// X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008220// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
8221// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008222// X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
8223// X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008224// X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
8225// X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008226// X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
8227// X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008228// X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
8229// X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008230// X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
8231// X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008232// X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
8233// X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008234// X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
8235// X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008236// X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008237// X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008238// X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
8239// X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008240// X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
8241// X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008242// X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
8243// X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008244// X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
8245// X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008246// X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
8247// X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008248// X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
8249// X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008250// X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
8251// X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008252// X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008253// X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008254// X86_64-NETBSD:#define __INT_MAX__ 2147483647
8255// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8256// X86_64-NETBSD:#define __LDBL_DIG__ 18
8257// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8258// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
8259// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
8260// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
8261// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
8262// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
8263// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
8264// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8265// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
8266// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
8267// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8268// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
8269// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
8270// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
8271// X86_64-NETBSD:#define __LP64__ 1
8272// X86_64-NETBSD:#define __MMX__ 1
8273// X86_64-NETBSD:#define __NO_MATH_INLINES 1
8274// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
8275// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
8276// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008277// X86_64-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008278// X86_64-NETBSD:#define __SCHAR_MAX__ 127
8279// X86_64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008280// X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008281// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
8282// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
8283// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
8284// X86_64-NETBSD:#define __SIZEOF_INT__ 4
8285// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
8286// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
8287// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
8288// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
8289// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
8290// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
8291// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
8292// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
8293// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
8294// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
8295// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
8296// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
8297// X86_64-NETBSD:#define __SSE2_MATH__ 1
8298// X86_64-NETBSD:#define __SSE2__ 1
8299// X86_64-NETBSD:#define __SSE_MATH__ 1
8300// X86_64-NETBSD:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008301// X86_64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008302// X86_64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008303// X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
8304// X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
8305// X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
8306// X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
8307// X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
8308// X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
8309// X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008310// X86_64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008311// X86_64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008312// X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008313// X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008314// X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008315// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008316// X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
8317// X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
8318// X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
8319// X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008320// X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008321// X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
8322// X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
8323// X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
8324// X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8325// X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008326// X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008327// X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008328// X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008329// X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
8330// X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
8331// X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
8332// X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8333// X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008334// X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008335// X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008336// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
8337// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
8338// X86_64-NETBSD:#define __WCHAR_TYPE__ int
8339// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
8340// X86_64-NETBSD:#define __WINT_TYPE__ int
8341// X86_64-NETBSD:#define __WINT_WIDTH__ 32
8342// X86_64-NETBSD:#define __amd64 1
8343// X86_64-NETBSD:#define __amd64__ 1
8344// X86_64-NETBSD:#define __x86_64 1
8345// X86_64-NETBSD:#define __x86_64__ 1
8346//
James Y Knightc97efa42016-02-11 16:51:29 +00008347// 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 +00008348//
8349// PS4:#define _LP64 1
8350// PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8351// PS4:#define __CHAR16_TYPE__ unsigned short
8352// PS4:#define __CHAR32_TYPE__ unsigned int
8353// PS4:#define __CHAR_BIT__ 8
8354// PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8355// PS4:#define __DBL_DIG__ 15
8356// PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
8357// PS4:#define __DBL_HAS_DENORM__ 1
8358// PS4:#define __DBL_HAS_INFINITY__ 1
8359// PS4:#define __DBL_HAS_QUIET_NAN__ 1
8360// PS4:#define __DBL_MANT_DIG__ 53
8361// PS4:#define __DBL_MAX_10_EXP__ 308
8362// PS4:#define __DBL_MAX_EXP__ 1024
8363// PS4:#define __DBL_MAX__ 1.7976931348623157e+308
8364// PS4:#define __DBL_MIN_10_EXP__ (-307)
8365// PS4:#define __DBL_MIN_EXP__ (-1021)
8366// PS4:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008367// PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008368// PS4:#define __ELF__ 1
8369// PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8370// PS4:#define __FLT_DIG__ 6
8371// PS4:#define __FLT_EPSILON__ 1.19209290e-7F
8372// PS4:#define __FLT_EVAL_METHOD__ 0
8373// PS4:#define __FLT_HAS_DENORM__ 1
8374// PS4:#define __FLT_HAS_INFINITY__ 1
8375// PS4:#define __FLT_HAS_QUIET_NAN__ 1
8376// PS4:#define __FLT_MANT_DIG__ 24
8377// PS4:#define __FLT_MAX_10_EXP__ 38
8378// PS4:#define __FLT_MAX_EXP__ 128
8379// PS4:#define __FLT_MAX__ 3.40282347e+38F
8380// PS4:#define __FLT_MIN_10_EXP__ (-37)
8381// PS4:#define __FLT_MIN_EXP__ (-125)
8382// PS4:#define __FLT_MIN__ 1.17549435e-38F
8383// PS4:#define __FLT_RADIX__ 2
8384// PS4:#define __FreeBSD__ 9
8385// PS4:#define __FreeBSD_cc_version 900001
8386// PS4:#define __INT16_TYPE__ short
8387// PS4:#define __INT32_TYPE__ int
8388// PS4:#define __INT64_C_SUFFIX__ L
8389// PS4:#define __INT64_TYPE__ long int
8390// PS4:#define __INT8_TYPE__ signed char
8391// PS4:#define __INTMAX_MAX__ 9223372036854775807L
8392// PS4:#define __INTMAX_TYPE__ long int
8393// PS4:#define __INTMAX_WIDTH__ 64
8394// PS4:#define __INTPTR_TYPE__ long int
8395// PS4:#define __INTPTR_WIDTH__ 64
8396// PS4:#define __INT_MAX__ 2147483647
8397// PS4:#define __KPRINTF_ATTRIBUTE__ 1
8398// PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8399// PS4:#define __LDBL_DIG__ 18
8400// PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8401// PS4:#define __LDBL_HAS_DENORM__ 1
8402// PS4:#define __LDBL_HAS_INFINITY__ 1
8403// PS4:#define __LDBL_HAS_QUIET_NAN__ 1
8404// PS4:#define __LDBL_MANT_DIG__ 64
8405// PS4:#define __LDBL_MAX_10_EXP__ 4932
8406// PS4:#define __LDBL_MAX_EXP__ 16384
8407// PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8408// PS4:#define __LDBL_MIN_10_EXP__ (-4931)
8409// PS4:#define __LDBL_MIN_EXP__ (-16381)
8410// PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8411// PS4:#define __LITTLE_ENDIAN__ 1
8412// PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
8413// PS4:#define __LONG_MAX__ 9223372036854775807L
8414// PS4:#define __LP64__ 1
8415// PS4:#define __MMX__ 1
8416// PS4:#define __NO_MATH_INLINES 1
Paul Robinson9d613612016-05-16 17:22:25 +00008417// PS4:#define __ORBIS__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008418// PS4:#define __POINTER_WIDTH__ 64
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008419// PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
8420// PS4:#define __PTRDIFF_TYPE__ long int
8421// PS4:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008422// PS4:#define __REGISTER_PREFIX__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008423// PS4:#define __SCHAR_MAX__ 127
8424// PS4:#define __SHRT_MAX__ 32767
8425// PS4:#define __SIG_ATOMIC_MAX__ 2147483647
8426// PS4:#define __SIG_ATOMIC_WIDTH__ 32
8427// PS4:#define __SIZEOF_DOUBLE__ 8
8428// PS4:#define __SIZEOF_FLOAT__ 4
8429// PS4:#define __SIZEOF_INT__ 4
8430// PS4:#define __SIZEOF_LONG_DOUBLE__ 16
8431// PS4:#define __SIZEOF_LONG_LONG__ 8
8432// PS4:#define __SIZEOF_LONG__ 8
8433// PS4:#define __SIZEOF_POINTER__ 8
8434// PS4:#define __SIZEOF_PTRDIFF_T__ 8
8435// PS4:#define __SIZEOF_SHORT__ 2
8436// PS4:#define __SIZEOF_SIZE_T__ 8
8437// PS4:#define __SIZEOF_WCHAR_T__ 2
8438// PS4:#define __SIZEOF_WINT_T__ 4
8439// PS4:#define __SIZE_TYPE__ long unsigned int
8440// PS4:#define __SIZE_WIDTH__ 64
8441// PS4:#define __SSE2_MATH__ 1
8442// PS4:#define __SSE2__ 1
8443// PS4:#define __SSE_MATH__ 1
8444// PS4:#define __SSE__ 1
Sunil Srivastavabf010802016-04-27 19:53:03 +00008445// PS4:#define __STDC_VERSION__ 199901L
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008446// PS4:#define __UINTMAX_TYPE__ long unsigned int
8447// PS4:#define __USER_LABEL_PREFIX__
8448// PS4:#define __WCHAR_MAX__ 65535
8449// PS4:#define __WCHAR_TYPE__ unsigned short
8450// PS4:#define __WCHAR_UNSIGNED__ 1
8451// PS4:#define __WCHAR_WIDTH__ 16
8452// PS4:#define __WINT_TYPE__ int
8453// PS4:#define __WINT_WIDTH__ 32
8454// PS4:#define __amd64 1
8455// PS4:#define __amd64__ 1
8456// PS4:#define __unix 1
8457// PS4:#define __unix__ 1
8458// PS4:#define __x86_64 1
8459// PS4:#define __x86_64__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008460//
James Y Knightc97efa42016-02-11 16:51:29 +00008461// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8462// RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8463// X86-64-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00008464//
James Y Knightc97efa42016-02-11 16:51:29 +00008465// 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 +00008466// SPARCV9:#define __INT64_TYPE__ long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008467// SPARCV9:#define __INTMAX_C_SUFFIX__ L
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008468// SPARCV9:#define __INTMAX_TYPE__ long int
8469// SPARCV9:#define __INTPTR_TYPE__ long int
8470// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
8471// SPARCV9:#define __LP64__ 1
8472// SPARCV9:#define __SIZEOF_LONG__ 8
8473// SPARCV9:#define __SIZEOF_POINTER__ 8
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00008474// SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008475//
James Y Knightc97efa42016-02-11 16:51:29 +00008476// 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 +00008477// SPARC64-OBSD:#define __INT64_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008478// SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008479// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008480// SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008481// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
8482//
James Y Knightc97efa42016-02-11 16:51:29 +00008483// 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 +00008484// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
8485// KFREEBSD-DEFINE:#define __GLIBC__ 1
8486//
James Y Knightc97efa42016-02-11 16:51:29 +00008487// 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 +00008488// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
8489// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
8490//
James Y Knightc97efa42016-02-11 16:51:29 +00008491// 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 +00008492// GNUSOURCE:#define _GNU_SOURCE 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008493//
James Y Knightc97efa42016-02-11 16:51:29 +00008494// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
8495// NORTTI: #define __GXX_ABI_VERSION {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +00008496// NORTTI-NOT:#define __GXX_RTTI
James Y Knightc97efa42016-02-11 16:51:29 +00008497// NORTTI:#define __STDC__ 1
Evgeniy Stepanov94dc4c92012-04-26 12:08:09 +00008498//
James Y Knightc97efa42016-02-11 16:51:29 +00008499// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID %s
8500// ANDROID:#define __ANDROID__ 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008501//
Richard Smith59139022016-09-30 22:41:36 +00008502// RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
8503// I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
8504//
8505// 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
8506// X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
8507//
Jacques Pienaard964cc22016-03-28 21:02:54 +00008508// RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
8509// LANAI: #define __lanai__ 1
8510//
Renato Golin0201a9e2016-09-22 19:28:20 +00008511// RUN: %clang_cc1 -E -dM -ffreestanding -triple=amd64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8512// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8513// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8514// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8515// OPENBSD:#define __ELF__ 1
8516// OPENBSD:#define __INT16_TYPE__ short
8517// OPENBSD:#define __INT32_TYPE__ int
8518// OPENBSD:#define __INT64_TYPE__ long long int
8519// OPENBSD:#define __INT8_TYPE__ signed char
8520// OPENBSD:#define __INTMAX_TYPE__ long long int
8521// OPENBSD:#define __INTPTR_TYPE__ long int
8522// OPENBSD:#define __OpenBSD__ 1
8523// OPENBSD:#define __PTRDIFF_TYPE__ long int
8524// OPENBSD:#define __SIZE_TYPE__ long unsigned int
8525// OPENBSD:#define __UINT16_TYPE__ unsigned short
8526// OPENBSD:#define __UINT32_TYPE__ unsigned int
8527// OPENBSD:#define __UINT64_TYPE__ long long unsigned int
8528// OPENBSD:#define __UINT8_TYPE__ unsigned char
8529// OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
8530// OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
8531// OPENBSD:#define __WCHAR_TYPE__ int
8532// OPENBSD:#define __WINT_TYPE__ int
8533//
James Y Knightc97efa42016-02-11 16:51:29 +00008534// 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 +00008535// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008536//
James Y Knightc97efa42016-02-11 16:51:29 +00008537// 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 +00008538// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8539// XCORE:#define __LITTLE_ENDIAN__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008540// XCORE:#define __XS1B__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008541//
8542// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
8543// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00008544// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY32 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00008545//
James Y Knightc97efa42016-02-11 16:51:29 +00008546// WEBASSEMBLY32:#define _ILP32 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008547// WEBASSEMBLY32-NOT:#define _LP64
James Y Knightc97efa42016-02-11 16:51:29 +00008548// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQUIRE 2
8549// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQ_REL 4
8550// WEBASSEMBLY32-NEXT:#define __ATOMIC_CONSUME 1
8551// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELAXED 0
8552// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELEASE 3
8553// WEBASSEMBLY32-NEXT:#define __ATOMIC_SEQ_CST 5
8554// WEBASSEMBLY32-NEXT:#define __BIGGEST_ALIGNMENT__ 16
8555// WEBASSEMBLY32-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8556// WEBASSEMBLY32-NEXT:#define __CHAR16_TYPE__ unsigned short
8557// WEBASSEMBLY32-NEXT:#define __CHAR32_TYPE__ unsigned int
8558// WEBASSEMBLY32-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00008559// WEBASSEMBLY32-NOT:#define __CHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008560// WEBASSEMBLY32-NEXT:#define __CONSTANT_CFSTRINGS__ 1
8561// WEBASSEMBLY32-NEXT:#define __DBL_DECIMAL_DIG__ 17
8562// WEBASSEMBLY32-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8563// WEBASSEMBLY32-NEXT:#define __DBL_DIG__ 15
8564// WEBASSEMBLY32-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
8565// WEBASSEMBLY32-NEXT:#define __DBL_HAS_DENORM__ 1
8566// WEBASSEMBLY32-NEXT:#define __DBL_HAS_INFINITY__ 1
8567// WEBASSEMBLY32-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
8568// WEBASSEMBLY32-NEXT:#define __DBL_MANT_DIG__ 53
8569// WEBASSEMBLY32-NEXT:#define __DBL_MAX_10_EXP__ 308
8570// WEBASSEMBLY32-NEXT:#define __DBL_MAX_EXP__ 1024
8571// WEBASSEMBLY32-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
8572// WEBASSEMBLY32-NEXT:#define __DBL_MIN_10_EXP__ (-307)
8573// WEBASSEMBLY32-NEXT:#define __DBL_MIN_EXP__ (-1021)
8574// WEBASSEMBLY32-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
8575// WEBASSEMBLY32-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00008576// WEBASSEMBLY32-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00008577// WEBASSEMBLY32-NEXT:#define __FINITE_MATH_ONLY__ 0
8578// WEBASSEMBLY32-NEXT:#define __FLT_DECIMAL_DIG__ 9
8579// WEBASSEMBLY32-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8580// WEBASSEMBLY32-NEXT:#define __FLT_DIG__ 6
8581// WEBASSEMBLY32-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
8582// WEBASSEMBLY32-NEXT:#define __FLT_EVAL_METHOD__ 0
8583// WEBASSEMBLY32-NEXT:#define __FLT_HAS_DENORM__ 1
8584// WEBASSEMBLY32-NEXT:#define __FLT_HAS_INFINITY__ 1
8585// WEBASSEMBLY32-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
8586// WEBASSEMBLY32-NEXT:#define __FLT_MANT_DIG__ 24
8587// WEBASSEMBLY32-NEXT:#define __FLT_MAX_10_EXP__ 38
8588// WEBASSEMBLY32-NEXT:#define __FLT_MAX_EXP__ 128
8589// WEBASSEMBLY32-NEXT:#define __FLT_MAX__ 3.40282347e+38F
8590// WEBASSEMBLY32-NEXT:#define __FLT_MIN_10_EXP__ (-37)
8591// WEBASSEMBLY32-NEXT:#define __FLT_MIN_EXP__ (-125)
8592// WEBASSEMBLY32-NEXT:#define __FLT_MIN__ 1.17549435e-38F
8593// WEBASSEMBLY32-NEXT:#define __FLT_RADIX__ 2
8594// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8595// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8596// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8597// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8598// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8599// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
8600// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8601// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8602// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8603// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8604// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00008605// WEBASSEMBLY32-NEXT:#define __GNUC_MINOR__ {{.*}}
8606// WEBASSEMBLY32-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008607// WEBASSEMBLY32-NEXT:#define __GNUC_STDC_INLINE__ 1
Tim Northover25809012016-02-11 21:31:51 +00008608// WEBASSEMBLY32-NEXT:#define __GNUC__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008609// WEBASSEMBLY32-NEXT:#define __GXX_ABI_VERSION 1002
8610// WEBASSEMBLY32-NEXT:#define __ILP32__ 1
8611// WEBASSEMBLY32-NEXT:#define __INT16_C_SUFFIX__
8612// WEBASSEMBLY32-NEXT:#define __INT16_FMTd__ "hd"
8613// WEBASSEMBLY32-NEXT:#define __INT16_FMTi__ "hi"
8614// WEBASSEMBLY32-NEXT:#define __INT16_MAX__ 32767
8615// WEBASSEMBLY32-NEXT:#define __INT16_TYPE__ short
8616// WEBASSEMBLY32-NEXT:#define __INT32_C_SUFFIX__
8617// WEBASSEMBLY32-NEXT:#define __INT32_FMTd__ "d"
8618// WEBASSEMBLY32-NEXT:#define __INT32_FMTi__ "i"
8619// WEBASSEMBLY32-NEXT:#define __INT32_MAX__ 2147483647
8620// WEBASSEMBLY32-NEXT:#define __INT32_TYPE__ int
8621// WEBASSEMBLY32-NEXT:#define __INT64_C_SUFFIX__ LL
8622// WEBASSEMBLY32-NEXT:#define __INT64_FMTd__ "lld"
8623// WEBASSEMBLY32-NEXT:#define __INT64_FMTi__ "lli"
8624// WEBASSEMBLY32-NEXT:#define __INT64_MAX__ 9223372036854775807LL
8625// WEBASSEMBLY32-NEXT:#define __INT64_TYPE__ long long int
8626// WEBASSEMBLY32-NEXT:#define __INT8_C_SUFFIX__
8627// WEBASSEMBLY32-NEXT:#define __INT8_FMTd__ "hhd"
8628// WEBASSEMBLY32-NEXT:#define __INT8_FMTi__ "hhi"
8629// WEBASSEMBLY32-NEXT:#define __INT8_MAX__ 127
8630// WEBASSEMBLY32-NEXT:#define __INT8_TYPE__ signed char
8631// WEBASSEMBLY32-NEXT:#define __INTMAX_C_SUFFIX__ LL
8632// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTd__ "lld"
8633// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTi__ "lli"
8634// WEBASSEMBLY32-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
8635// WEBASSEMBLY32-NEXT:#define __INTMAX_TYPE__ long long int
8636// WEBASSEMBLY32-NEXT:#define __INTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00008637// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTd__ "d"
8638// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTi__ "i"
8639// WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647
8640// WEBASSEMBLY32-NEXT:#define __INTPTR_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00008641// WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
8642// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTd__ "hd"
8643// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTi__ "hi"
8644// WEBASSEMBLY32-NEXT:#define __INT_FAST16_MAX__ 32767
8645// WEBASSEMBLY32-NEXT:#define __INT_FAST16_TYPE__ short
8646// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTd__ "d"
8647// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTi__ "i"
8648// WEBASSEMBLY32-NEXT:#define __INT_FAST32_MAX__ 2147483647
8649// WEBASSEMBLY32-NEXT:#define __INT_FAST32_TYPE__ int
8650// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTd__ "lld"
8651// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTi__ "lli"
8652// WEBASSEMBLY32-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
8653// WEBASSEMBLY32-NEXT:#define __INT_FAST64_TYPE__ long long int
8654// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTd__ "hhd"
8655// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTi__ "hhi"
8656// WEBASSEMBLY32-NEXT:#define __INT_FAST8_MAX__ 127
8657// WEBASSEMBLY32-NEXT:#define __INT_FAST8_TYPE__ signed char
8658// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTd__ "hd"
8659// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTi__ "hi"
8660// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_MAX__ 32767
8661// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_TYPE__ short
8662// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTd__ "d"
8663// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTi__ "i"
8664// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_MAX__ 2147483647
8665// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_TYPE__ int
8666// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTd__ "lld"
8667// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTi__ "lli"
8668// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8669// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_TYPE__ long long int
8670// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
8671// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
8672// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_MAX__ 127
8673// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_TYPE__ signed char
8674// WEBASSEMBLY32-NEXT:#define __INT_MAX__ 2147483647
8675// WEBASSEMBLY32-NEXT:#define __LDBL_DECIMAL_DIG__ 36
8676// WEBASSEMBLY32-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
8677// WEBASSEMBLY32-NEXT:#define __LDBL_DIG__ 33
8678// WEBASSEMBLY32-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
8679// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_DENORM__ 1
8680// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_INFINITY__ 1
8681// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
8682// WEBASSEMBLY32-NEXT:#define __LDBL_MANT_DIG__ 113
8683// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_10_EXP__ 4932
8684// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_EXP__ 16384
8685// WEBASSEMBLY32-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
8686// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
8687// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_EXP__ (-16381)
8688// WEBASSEMBLY32-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
8689// WEBASSEMBLY32-NEXT:#define __LITTLE_ENDIAN__ 1
8690// WEBASSEMBLY32-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
8691// WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
Dan Gohmanc2853072015-09-03 22:51:53 +00008692// WEBASSEMBLY32-NOT:#define __LP64__
James Y Knightc97efa42016-02-11 16:51:29 +00008693// WEBASSEMBLY32-NEXT:#define __NO_INLINE__ 1
8694// WEBASSEMBLY32-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
8695// WEBASSEMBLY32-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
8696// WEBASSEMBLY32-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
8697// WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
8698// WEBASSEMBLY32-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
Derek Schuffacdc8e62016-09-01 22:38:37 +00008699// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTd__ "d"
8700// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTi__ "i"
8701// WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647
8702// WEBASSEMBLY32-NEXT:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00008703// WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
Dan Gohmanc2853072015-09-03 22:51:53 +00008704// WEBASSEMBLY32-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00008705// WEBASSEMBLY32-NEXT:#define __SCHAR_MAX__ 127
8706// WEBASSEMBLY32-NEXT:#define __SHRT_MAX__ 32767
8707// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
8708// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
8709// WEBASSEMBLY32-NEXT:#define __SIZEOF_DOUBLE__ 8
8710// WEBASSEMBLY32-NEXT:#define __SIZEOF_FLOAT__ 4
8711// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT128__ 16
8712// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT__ 4
8713// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
8714// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_LONG__ 8
8715// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
8716// WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
8717// WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
8718// WEBASSEMBLY32-NEXT:#define __SIZEOF_SHORT__ 2
8719// WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
8720// WEBASSEMBLY32-NEXT:#define __SIZEOF_WCHAR_T__ 4
8721// WEBASSEMBLY32-NEXT:#define __SIZEOF_WINT_T__ 4
Derek Schuffacdc8e62016-09-01 22:38:37 +00008722// WEBASSEMBLY32-NEXT:#define __SIZE_FMTX__ "X"
8723// WEBASSEMBLY32-NEXT:#define __SIZE_FMTo__ "o"
8724// WEBASSEMBLY32-NEXT:#define __SIZE_FMTu__ "u"
8725// WEBASSEMBLY32-NEXT:#define __SIZE_FMTx__ "x"
8726// WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295U
8727// WEBASSEMBLY32-NEXT:#define __SIZE_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008728// WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
8729// WEBASSEMBLY32-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00008730// WEBASSEMBLY32-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
8731// WEBASSEMBLY32-NOT:#define __STDC_NO_ATOMICS__
8732// WEBASSEMBLY32-NOT:#define __STDC_NO_COMPLEX__
8733// WEBASSEMBLY32-NOT:#define __STDC_NO_VLA__
8734// WEBASSEMBLY32-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00008735// WEBASSEMBLY32-NEXT:#define __STDC_UTF_16__ 1
8736// WEBASSEMBLY32-NEXT:#define __STDC_UTF_32__ 1
8737// WEBASSEMBLY32-NEXT:#define __STDC_VERSION__ 201112L
8738// WEBASSEMBLY32-NEXT:#define __STDC__ 1
8739// WEBASSEMBLY32-NEXT:#define __UINT16_C_SUFFIX__
8740// WEBASSEMBLY32-NEXT:#define __UINT16_FMTX__ "hX"
8741// WEBASSEMBLY32-NEXT:#define __UINT16_FMTo__ "ho"
8742// WEBASSEMBLY32-NEXT:#define __UINT16_FMTu__ "hu"
8743// WEBASSEMBLY32-NEXT:#define __UINT16_FMTx__ "hx"
8744// WEBASSEMBLY32-NEXT:#define __UINT16_MAX__ 65535
8745// WEBASSEMBLY32-NEXT:#define __UINT16_TYPE__ unsigned short
8746// WEBASSEMBLY32-NEXT:#define __UINT32_C_SUFFIX__ U
8747// WEBASSEMBLY32-NEXT:#define __UINT32_FMTX__ "X"
8748// WEBASSEMBLY32-NEXT:#define __UINT32_FMTo__ "o"
8749// WEBASSEMBLY32-NEXT:#define __UINT32_FMTu__ "u"
8750// WEBASSEMBLY32-NEXT:#define __UINT32_FMTx__ "x"
8751// WEBASSEMBLY32-NEXT:#define __UINT32_MAX__ 4294967295U
8752// WEBASSEMBLY32-NEXT:#define __UINT32_TYPE__ unsigned int
8753// WEBASSEMBLY32-NEXT:#define __UINT64_C_SUFFIX__ ULL
8754// WEBASSEMBLY32-NEXT:#define __UINT64_FMTX__ "llX"
8755// WEBASSEMBLY32-NEXT:#define __UINT64_FMTo__ "llo"
8756// WEBASSEMBLY32-NEXT:#define __UINT64_FMTu__ "llu"
8757// WEBASSEMBLY32-NEXT:#define __UINT64_FMTx__ "llx"
8758// WEBASSEMBLY32-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
8759// WEBASSEMBLY32-NEXT:#define __UINT64_TYPE__ long long unsigned int
8760// WEBASSEMBLY32-NEXT:#define __UINT8_C_SUFFIX__
8761// WEBASSEMBLY32-NEXT:#define __UINT8_FMTX__ "hhX"
8762// WEBASSEMBLY32-NEXT:#define __UINT8_FMTo__ "hho"
8763// WEBASSEMBLY32-NEXT:#define __UINT8_FMTu__ "hhu"
8764// WEBASSEMBLY32-NEXT:#define __UINT8_FMTx__ "hhx"
8765// WEBASSEMBLY32-NEXT:#define __UINT8_MAX__ 255
8766// WEBASSEMBLY32-NEXT:#define __UINT8_TYPE__ unsigned char
8767// WEBASSEMBLY32-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
8768// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTX__ "llX"
8769// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTo__ "llo"
8770// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTu__ "llu"
8771// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTx__ "llx"
8772// WEBASSEMBLY32-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
8773// WEBASSEMBLY32-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
8774// WEBASSEMBLY32-NEXT:#define __UINTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00008775// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTX__ "X"
8776// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTo__ "o"
8777// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTu__ "u"
8778// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTx__ "x"
8779// WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295U
8780// WEBASSEMBLY32-NEXT:#define __UINTPTR_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008781// WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
8782// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTX__ "hX"
8783// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTo__ "ho"
8784// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTu__ "hu"
8785// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTx__ "hx"
8786// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_MAX__ 65535
8787// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
8788// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTX__ "X"
8789// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTo__ "o"
8790// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTu__ "u"
8791// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTx__ "x"
8792// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
8793// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
8794// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTX__ "llX"
8795// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTo__ "llo"
8796// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTu__ "llu"
8797// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTx__ "llx"
8798// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8799// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
8800// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
8801// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTo__ "hho"
8802// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
8803// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
8804// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_MAX__ 255
8805// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
8806// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
8807// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
8808// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
8809// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
8810// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_MAX__ 65535
8811// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
8812// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTX__ "X"
8813// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTo__ "o"
8814// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTu__ "u"
8815// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTx__ "x"
8816// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
8817// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
8818// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
8819// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
8820// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
8821// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
8822// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8823// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
8824// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
8825// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
8826// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
8827// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
8828// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_MAX__ 255
8829// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
8830// WEBASSEMBLY32-NEXT:#define __USER_LABEL_PREFIX__
8831// WEBASSEMBLY32-NEXT:#define __VERSION__ "{{.*}}"
8832// WEBASSEMBLY32-NEXT:#define __WCHAR_MAX__ 2147483647
8833// WEBASSEMBLY32-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00008834// WEBASSEMBLY32-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008835// WEBASSEMBLY32-NEXT:#define __WCHAR_WIDTH__ 32
8836// WEBASSEMBLY32-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00008837// WEBASSEMBLY32-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008838// WEBASSEMBLY32-NEXT:#define __WINT_WIDTH__ 32
8839// WEBASSEMBLY32-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00008840// WEBASSEMBLY32-NEXT:#define __clang_major__ {{.*}}
8841// WEBASSEMBLY32-NEXT:#define __clang_minor__ {{.*}}
8842// WEBASSEMBLY32-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008843// WEBASSEMBLY32-NEXT:#define __clang_version__ "{{.*}}"
8844// WEBASSEMBLY32-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008845// WEBASSEMBLY32-NOT:#define __wasm_simd128__
8846// WEBASSEMBLY32-NOT:#define __wasm_simd256__
8847// WEBASSEMBLY32-NOT:#define __wasm_simd512__
8848// WEBASSEMBLY32-NOT:#define __unix
8849// WEBASSEMBLY32-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00008850// WEBASSEMBLY32-NEXT:#define __wasm 1
8851// WEBASSEMBLY32-NEXT:#define __wasm32 1
8852// WEBASSEMBLY32-NEXT:#define __wasm32__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008853// WEBASSEMBLY32-NOT:#define __wasm64
8854// WEBASSEMBLY32-NOT:#define __wasm64__
James Y Knightc97efa42016-02-11 16:51:29 +00008855// WEBASSEMBLY32-NEXT:#define __wasm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008856//
8857// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
8858// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00008859// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY64 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00008860//
8861// WEBASSEMBLY64-NOT:#define _ILP32
James Y Knightc97efa42016-02-11 16:51:29 +00008862// WEBASSEMBLY64:#define _LP64 1
8863// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQUIRE 2
8864// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQ_REL 4
8865// WEBASSEMBLY64-NEXT:#define __ATOMIC_CONSUME 1
8866// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELAXED 0
8867// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELEASE 3
8868// WEBASSEMBLY64-NEXT:#define __ATOMIC_SEQ_CST 5
8869// WEBASSEMBLY64-NEXT:#define __BIGGEST_ALIGNMENT__ 16
8870// WEBASSEMBLY64-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8871// WEBASSEMBLY64-NEXT:#define __CHAR16_TYPE__ unsigned short
8872// WEBASSEMBLY64-NEXT:#define __CHAR32_TYPE__ unsigned int
8873// WEBASSEMBLY64-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00008874// WEBASSEMBLY64-NOT:#define __CHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008875// WEBASSEMBLY64-NEXT:#define __CONSTANT_CFSTRINGS__ 1
8876// WEBASSEMBLY64-NEXT:#define __DBL_DECIMAL_DIG__ 17
8877// WEBASSEMBLY64-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8878// WEBASSEMBLY64-NEXT:#define __DBL_DIG__ 15
8879// WEBASSEMBLY64-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
8880// WEBASSEMBLY64-NEXT:#define __DBL_HAS_DENORM__ 1
8881// WEBASSEMBLY64-NEXT:#define __DBL_HAS_INFINITY__ 1
8882// WEBASSEMBLY64-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
8883// WEBASSEMBLY64-NEXT:#define __DBL_MANT_DIG__ 53
8884// WEBASSEMBLY64-NEXT:#define __DBL_MAX_10_EXP__ 308
8885// WEBASSEMBLY64-NEXT:#define __DBL_MAX_EXP__ 1024
8886// WEBASSEMBLY64-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
8887// WEBASSEMBLY64-NEXT:#define __DBL_MIN_10_EXP__ (-307)
8888// WEBASSEMBLY64-NEXT:#define __DBL_MIN_EXP__ (-1021)
8889// WEBASSEMBLY64-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
8890// WEBASSEMBLY64-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00008891// WEBASSEMBLY64-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00008892// WEBASSEMBLY64-NEXT:#define __FINITE_MATH_ONLY__ 0
8893// WEBASSEMBLY64-NEXT:#define __FLT_DECIMAL_DIG__ 9
8894// WEBASSEMBLY64-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8895// WEBASSEMBLY64-NEXT:#define __FLT_DIG__ 6
8896// WEBASSEMBLY64-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
8897// WEBASSEMBLY64-NEXT:#define __FLT_EVAL_METHOD__ 0
8898// WEBASSEMBLY64-NEXT:#define __FLT_HAS_DENORM__ 1
8899// WEBASSEMBLY64-NEXT:#define __FLT_HAS_INFINITY__ 1
8900// WEBASSEMBLY64-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
8901// WEBASSEMBLY64-NEXT:#define __FLT_MANT_DIG__ 24
8902// WEBASSEMBLY64-NEXT:#define __FLT_MAX_10_EXP__ 38
8903// WEBASSEMBLY64-NEXT:#define __FLT_MAX_EXP__ 128
8904// WEBASSEMBLY64-NEXT:#define __FLT_MAX__ 3.40282347e+38F
8905// WEBASSEMBLY64-NEXT:#define __FLT_MIN_10_EXP__ (-37)
8906// WEBASSEMBLY64-NEXT:#define __FLT_MIN_EXP__ (-125)
8907// WEBASSEMBLY64-NEXT:#define __FLT_MIN__ 1.17549435e-38F
8908// WEBASSEMBLY64-NEXT:#define __FLT_RADIX__ 2
8909// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8910// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8911// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8912// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8913// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8914// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
8915// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8916// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8917// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8918// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8919// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00008920// WEBASSEMBLY64-NEXT:#define __GNUC_MINOR__ {{.*}}
8921// WEBASSEMBLY64-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008922// WEBASSEMBLY64-NEXT:#define __GNUC_STDC_INLINE__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008923// WEBASSEMBLY64-NEXT:#define __GNUC__ {{.}}
James Y Knightc97efa42016-02-11 16:51:29 +00008924// WEBASSEMBLY64-NEXT:#define __GXX_ABI_VERSION 1002
Dan Gohmanc2853072015-09-03 22:51:53 +00008925// WEBASSEMBLY64-NOT:#define __ILP32__
James Y Knightc97efa42016-02-11 16:51:29 +00008926// WEBASSEMBLY64-NEXT:#define __INT16_C_SUFFIX__
8927// WEBASSEMBLY64-NEXT:#define __INT16_FMTd__ "hd"
8928// WEBASSEMBLY64-NEXT:#define __INT16_FMTi__ "hi"
8929// WEBASSEMBLY64-NEXT:#define __INT16_MAX__ 32767
8930// WEBASSEMBLY64-NEXT:#define __INT16_TYPE__ short
8931// WEBASSEMBLY64-NEXT:#define __INT32_C_SUFFIX__
8932// WEBASSEMBLY64-NEXT:#define __INT32_FMTd__ "d"
8933// WEBASSEMBLY64-NEXT:#define __INT32_FMTi__ "i"
8934// WEBASSEMBLY64-NEXT:#define __INT32_MAX__ 2147483647
8935// WEBASSEMBLY64-NEXT:#define __INT32_TYPE__ int
8936// WEBASSEMBLY64-NEXT:#define __INT64_C_SUFFIX__ LL
8937// WEBASSEMBLY64-NEXT:#define __INT64_FMTd__ "lld"
8938// WEBASSEMBLY64-NEXT:#define __INT64_FMTi__ "lli"
8939// WEBASSEMBLY64-NEXT:#define __INT64_MAX__ 9223372036854775807LL
8940// WEBASSEMBLY64-NEXT:#define __INT64_TYPE__ long long int
8941// WEBASSEMBLY64-NEXT:#define __INT8_C_SUFFIX__
8942// WEBASSEMBLY64-NEXT:#define __INT8_FMTd__ "hhd"
8943// WEBASSEMBLY64-NEXT:#define __INT8_FMTi__ "hhi"
8944// WEBASSEMBLY64-NEXT:#define __INT8_MAX__ 127
8945// WEBASSEMBLY64-NEXT:#define __INT8_TYPE__ signed char
8946// WEBASSEMBLY64-NEXT:#define __INTMAX_C_SUFFIX__ LL
8947// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTd__ "lld"
8948// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTi__ "lli"
8949// WEBASSEMBLY64-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
8950// WEBASSEMBLY64-NEXT:#define __INTMAX_TYPE__ long long int
8951// WEBASSEMBLY64-NEXT:#define __INTMAX_WIDTH__ 64
8952// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTd__ "ld"
8953// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTi__ "li"
8954// WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
8955// WEBASSEMBLY64-NEXT:#define __INTPTR_TYPE__ long int
8956// WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
8957// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTd__ "hd"
8958// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTi__ "hi"
8959// WEBASSEMBLY64-NEXT:#define __INT_FAST16_MAX__ 32767
8960// WEBASSEMBLY64-NEXT:#define __INT_FAST16_TYPE__ short
8961// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTd__ "d"
8962// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTi__ "i"
8963// WEBASSEMBLY64-NEXT:#define __INT_FAST32_MAX__ 2147483647
8964// WEBASSEMBLY64-NEXT:#define __INT_FAST32_TYPE__ int
8965// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTd__ "lld"
8966// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTi__ "lli"
8967// WEBASSEMBLY64-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
8968// WEBASSEMBLY64-NEXT:#define __INT_FAST64_TYPE__ long long int
8969// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTd__ "hhd"
8970// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTi__ "hhi"
8971// WEBASSEMBLY64-NEXT:#define __INT_FAST8_MAX__ 127
8972// WEBASSEMBLY64-NEXT:#define __INT_FAST8_TYPE__ signed char
8973// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTd__ "hd"
8974// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTi__ "hi"
8975// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_MAX__ 32767
8976// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_TYPE__ short
8977// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTd__ "d"
8978// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTi__ "i"
8979// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_MAX__ 2147483647
8980// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_TYPE__ int
8981// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTd__ "lld"
8982// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTi__ "lli"
8983// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8984// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_TYPE__ long long int
8985// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
8986// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
8987// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_MAX__ 127
8988// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_TYPE__ signed char
8989// WEBASSEMBLY64-NEXT:#define __INT_MAX__ 2147483647
8990// WEBASSEMBLY64-NEXT:#define __LDBL_DECIMAL_DIG__ 36
8991// WEBASSEMBLY64-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
8992// WEBASSEMBLY64-NEXT:#define __LDBL_DIG__ 33
8993// WEBASSEMBLY64-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
8994// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_DENORM__ 1
8995// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_INFINITY__ 1
8996// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
8997// WEBASSEMBLY64-NEXT:#define __LDBL_MANT_DIG__ 113
8998// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_10_EXP__ 4932
8999// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_EXP__ 16384
9000// WEBASSEMBLY64-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9001// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9002// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9003// WEBASSEMBLY64-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9004// WEBASSEMBLY64-NEXT:#define __LITTLE_ENDIAN__ 1
9005// WEBASSEMBLY64-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9006// WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
9007// WEBASSEMBLY64-NEXT:#define __LP64__ 1
9008// WEBASSEMBLY64-NEXT:#define __NO_INLINE__ 1
9009// WEBASSEMBLY64-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9010// WEBASSEMBLY64-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9011// WEBASSEMBLY64-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9012// WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
9013// WEBASSEMBLY64-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
9014// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTd__ "ld"
9015// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTi__ "li"
9016// WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
9017// WEBASSEMBLY64-NEXT:#define __PTRDIFF_TYPE__ long int
9018// WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
Dan Gohmanc2853072015-09-03 22:51:53 +00009019// WEBASSEMBLY64-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009020// WEBASSEMBLY64-NEXT:#define __SCHAR_MAX__ 127
9021// WEBASSEMBLY64-NEXT:#define __SHRT_MAX__ 32767
9022// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
9023// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
9024// WEBASSEMBLY64-NEXT:#define __SIZEOF_DOUBLE__ 8
9025// WEBASSEMBLY64-NEXT:#define __SIZEOF_FLOAT__ 4
9026// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT128__ 16
9027// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT__ 4
9028// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9029// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_LONG__ 8
9030// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
9031// WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
9032// WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
9033// WEBASSEMBLY64-NEXT:#define __SIZEOF_SHORT__ 2
9034// WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
9035// WEBASSEMBLY64-NEXT:#define __SIZEOF_WCHAR_T__ 4
9036// WEBASSEMBLY64-NEXT:#define __SIZEOF_WINT_T__ 4
9037// WEBASSEMBLY64-NEXT:#define __SIZE_FMTX__ "lX"
9038// WEBASSEMBLY64-NEXT:#define __SIZE_FMTo__ "lo"
9039// WEBASSEMBLY64-NEXT:#define __SIZE_FMTu__ "lu"
9040// WEBASSEMBLY64-NEXT:#define __SIZE_FMTx__ "lx"
9041// WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
9042// WEBASSEMBLY64-NEXT:#define __SIZE_TYPE__ long unsigned int
9043// WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
9044// WEBASSEMBLY64-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009045// WEBASSEMBLY64-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9046// WEBASSEMBLY64-NOT:#define __STDC_NO_ATOMICS__
9047// WEBASSEMBLY64-NOT:#define __STDC_NO_COMPLEX__
9048// WEBASSEMBLY64-NOT:#define __STDC_NO_VLA__
9049// WEBASSEMBLY64-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009050// WEBASSEMBLY64-NEXT:#define __STDC_UTF_16__ 1
9051// WEBASSEMBLY64-NEXT:#define __STDC_UTF_32__ 1
9052// WEBASSEMBLY64-NEXT:#define __STDC_VERSION__ 201112L
9053// WEBASSEMBLY64-NEXT:#define __STDC__ 1
9054// WEBASSEMBLY64-NEXT:#define __UINT16_C_SUFFIX__
9055// WEBASSEMBLY64-NEXT:#define __UINT16_FMTX__ "hX"
9056// WEBASSEMBLY64-NEXT:#define __UINT16_FMTo__ "ho"
9057// WEBASSEMBLY64-NEXT:#define __UINT16_FMTu__ "hu"
9058// WEBASSEMBLY64-NEXT:#define __UINT16_FMTx__ "hx"
9059// WEBASSEMBLY64-NEXT:#define __UINT16_MAX__ 65535
9060// WEBASSEMBLY64-NEXT:#define __UINT16_TYPE__ unsigned short
9061// WEBASSEMBLY64-NEXT:#define __UINT32_C_SUFFIX__ U
9062// WEBASSEMBLY64-NEXT:#define __UINT32_FMTX__ "X"
9063// WEBASSEMBLY64-NEXT:#define __UINT32_FMTo__ "o"
9064// WEBASSEMBLY64-NEXT:#define __UINT32_FMTu__ "u"
9065// WEBASSEMBLY64-NEXT:#define __UINT32_FMTx__ "x"
9066// WEBASSEMBLY64-NEXT:#define __UINT32_MAX__ 4294967295U
9067// WEBASSEMBLY64-NEXT:#define __UINT32_TYPE__ unsigned int
9068// WEBASSEMBLY64-NEXT:#define __UINT64_C_SUFFIX__ ULL
9069// WEBASSEMBLY64-NEXT:#define __UINT64_FMTX__ "llX"
9070// WEBASSEMBLY64-NEXT:#define __UINT64_FMTo__ "llo"
9071// WEBASSEMBLY64-NEXT:#define __UINT64_FMTu__ "llu"
9072// WEBASSEMBLY64-NEXT:#define __UINT64_FMTx__ "llx"
9073// WEBASSEMBLY64-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9074// WEBASSEMBLY64-NEXT:#define __UINT64_TYPE__ long long unsigned int
9075// WEBASSEMBLY64-NEXT:#define __UINT8_C_SUFFIX__
9076// WEBASSEMBLY64-NEXT:#define __UINT8_FMTX__ "hhX"
9077// WEBASSEMBLY64-NEXT:#define __UINT8_FMTo__ "hho"
9078// WEBASSEMBLY64-NEXT:#define __UINT8_FMTu__ "hhu"
9079// WEBASSEMBLY64-NEXT:#define __UINT8_FMTx__ "hhx"
9080// WEBASSEMBLY64-NEXT:#define __UINT8_MAX__ 255
9081// WEBASSEMBLY64-NEXT:#define __UINT8_TYPE__ unsigned char
9082// WEBASSEMBLY64-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9083// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTX__ "llX"
9084// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTo__ "llo"
9085// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTu__ "llu"
9086// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTx__ "llx"
9087// WEBASSEMBLY64-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9088// WEBASSEMBLY64-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9089// WEBASSEMBLY64-NEXT:#define __UINTMAX_WIDTH__ 64
9090// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTX__ "lX"
9091// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTo__ "lo"
9092// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTu__ "lu"
9093// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTx__ "lx"
9094// WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
9095// WEBASSEMBLY64-NEXT:#define __UINTPTR_TYPE__ long unsigned int
9096// WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
9097// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9098// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9099// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9100// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9101// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_MAX__ 65535
9102// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9103// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTX__ "X"
9104// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTo__ "o"
9105// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTu__ "u"
9106// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTx__ "x"
9107// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9108// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9109// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9110// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9111// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9112// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9113// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9114// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9115// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9116// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9117// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9118// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9119// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_MAX__ 255
9120// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9121// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9122// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9123// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9124// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9125// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_MAX__ 65535
9126// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9127// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9128// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9129// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9130// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9131// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9132// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9133// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9134// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9135// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9136// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9137// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9138// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9139// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9140// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9141// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9142// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9143// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_MAX__ 255
9144// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9145// WEBASSEMBLY64-NEXT:#define __USER_LABEL_PREFIX__
9146// WEBASSEMBLY64-NEXT:#define __VERSION__ "{{.*}}"
9147// WEBASSEMBLY64-NEXT:#define __WCHAR_MAX__ 2147483647
9148// WEBASSEMBLY64-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009149// WEBASSEMBLY64-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009150// WEBASSEMBLY64-NEXT:#define __WCHAR_WIDTH__ 32
9151// WEBASSEMBLY64-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009152// WEBASSEMBLY64-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009153// WEBASSEMBLY64-NEXT:#define __WINT_WIDTH__ 32
9154// WEBASSEMBLY64-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009155// WEBASSEMBLY64-NEXT:#define __clang_major__ {{.*}}
9156// WEBASSEMBLY64-NEXT:#define __clang_minor__ {{.*}}
9157// WEBASSEMBLY64-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009158// WEBASSEMBLY64-NEXT:#define __clang_version__ "{{.*}}"
9159// WEBASSEMBLY64-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009160// WEBASSEMBLY64-NOT:#define __wasm_simd128__
9161// WEBASSEMBLY64-NOT:#define __wasm_simd256__
9162// WEBASSEMBLY64-NOT:#define __wasm_simd512__
9163// WEBASSEMBLY64-NOT:#define __unix
9164// WEBASSEMBLY64-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009165// WEBASSEMBLY64-NEXT:#define __wasm 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009166// WEBASSEMBLY64-NOT:#define __wasm32
9167// WEBASSEMBLY64-NOT:#define __wasm32__
James Y Knightc97efa42016-02-11 16:51:29 +00009168// WEBASSEMBLY64-NEXT:#define __wasm64 1
9169// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
9170// WEBASSEMBLY64-NEXT:#define __wasm__ 1
Saleem Abdulrasool16fcf0a2016-02-26 16:34:01 +00009171
9172// RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
9173// CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
9174
9175// RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
9176// CYGWIN-X64: #define __USER_LABEL_PREFIX__
9177