blob: 0dd16c74fc09a6671619a1bddf0de6260b976249 [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
Richard Smithab506ad2014-10-20 23:26:58 +000091// COMMON:#define __STDC_VERSION__ 201112L
Chris Lattnere963d092009-10-29 04:55:36 +000092// COMMON:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +000093// COMMON:#define __VERSION__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +000094// COMMON:#define __clang__ 1
Daniel Dunbard7e887f2010-06-25 23:34:47 +000095// COMMON:#define __clang_major__ {{[0-9]+}}
96// COMMON:#define __clang_minor__ {{[0-9]+}}
97// COMMON:#define __clang_patchlevel__ {{[0-9]+}}
James Y Knightc97efa42016-02-11 16:51:29 +000098// COMMON:#define __clang_version__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +000099// COMMON:#define __llvm__ 1
100//
101//
James Y Knightc97efa42016-02-11 16:51:29 +0000102// RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix FREESTANDING %s
Chris Lattnere963d092009-10-29 04:55:36 +0000103// FREESTANDING:#define __STDC_HOSTED__ 0
Richard Smithd106a982012-05-03 22:18:20 +0000104//
105//
James Y Knightc97efa42016-02-11 16:51:29 +0000106// 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 +0000107//
James Y Knightc97efa42016-02-11 16:51:29 +0000108// GXX1Z:#define __GNUG__ {{.*}}
Richard Smithdbd4d4c2014-06-16 15:16:56 +0000109// GXX1Z:#define __GXX_WEAK__ 1
110// GXX1Z:#define __cplusplus 201406L
111// GXX1Z:#define __private_extern__ extern
112//
113//
James Y Knightc97efa42016-02-11 16:51:29 +0000114// 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 +0000115//
James Y Knightc97efa42016-02-11 16:51:29 +0000116// GXX1Y:#define __GNUG__ {{.*}}
Richard Smith0a715422013-05-07 19:32:56 +0000117// GXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +0000118// GXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +0000119// GXX1Y:#define __private_extern__ extern
120//
121//
James Y Knightc97efa42016-02-11 16:51:29 +0000122// 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 +0000123//
James Y Knightc97efa42016-02-11 16:51:29 +0000124// GXX11:#define __GNUG__ {{.*}}
Richard Smithd106a982012-05-03 22:18:20 +0000125// GXX11:#define __GXX_WEAK__ 1
126// GXX11:#define __cplusplus 201103L
127// GXX11:#define __private_extern__ extern
128//
129//
James Y Knightc97efa42016-02-11 16:51:29 +0000130// 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 +0000131//
James Y Knightc97efa42016-02-11 16:51:29 +0000132// GXX98:#define __GNUG__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +0000133// GXX98:#define __GXX_WEAK__ 1
Richard Smithd106a982012-05-03 22:18:20 +0000134// GXX98:#define __cplusplus 199711L
Chris Lattnere963d092009-10-29 04:55:36 +0000135// GXX98:#define __private_extern__ extern
136//
137//
James Y Knightc97efa42016-02-11 16:51:29 +0000138// 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 +0000139//
140// C94:#define __STDC_VERSION__ 199409L
141//
142//
James Y Knightc97efa42016-02-11 16:51:29 +0000143// 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 +0000144//
145// MSEXT-NOT:#define __STDC__
Douglas Gregor7617cb82010-08-06 12:37:52 +0000146// MSEXT:#define _INTEGRAL_MAX_BITS 64
Hans Wennborg4c02be32013-05-02 13:12:32 +0000147// MSEXT-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
148// MSEXT-NOT:#define _WCHAR_T_DEFINED 1
149//
150//
James Y Knightc97efa42016-02-11 16:51:29 +0000151// 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 +0000152//
153// MSEXT-CXX:#define _NATIVE_WCHAR_T_DEFINED 1
154// MSEXT-CXX:#define _WCHAR_T_DEFINED 1
David Majnemerc19475a2015-07-15 17:32:34 +0000155// MSEXT-CXX:#define __BOOL_DEFINED 1
Hans Wennborg4c02be32013-05-02 13:12:32 +0000156//
157//
James Y Knightc97efa42016-02-11 16:51:29 +0000158// 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 +0000159//
160// MSEXT-CXX-NOWCHAR-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
161// MSEXT-CXX-NOWCHAR-NOT:#define _WCHAR_T_DEFINED 1
David Majnemerc19475a2015-07-15 17:32:34 +0000162// MSEXT-CXX-NOWCHAR:#define __BOOL_DEFINED 1
Chris Lattnere963d092009-10-29 04:55:36 +0000163//
164//
James Y Knightc97efa42016-02-11 16:51:29 +0000165// 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 +0000166//
167// OBJC:#define OBJC_NEW_PROPERTIES 1
Daniel Dunbar4656c532009-11-17 07:07:28 +0000168// OBJC:#define __NEXT_RUNTIME__ 1
Chris Lattnere963d092009-10-29 04:55:36 +0000169// OBJC:#define __OBJC__ 1
170//
Daniel Dunbar4656c532009-11-17 07:07:28 +0000171//
James Y Knightc97efa42016-02-11 16:51:29 +0000172// 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 +0000173//
174// OBJCGC:#define __OBJC_GC__ 1
175//
176//
James Y Knightc97efa42016-02-11 16:51:29 +0000177// 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 +0000178//
179// NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
180// NONFRAGILE:#define __OBJC2__ 1
181//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000182//
James Y Knightc97efa42016-02-11 16:51:29 +0000183// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O0 %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000184//
185// O0:#define __NO_INLINE__ 1
186// O0-NOT:#define __OPTIMIZE_SIZE__
187// O0-NOT:#define __OPTIMIZE__
188//
189//
James Y Knightc97efa42016-02-11 16:51:29 +0000190// 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 +0000191//
192// NO_INLINE:#define __NO_INLINE__ 1
193// NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
James Y Knightc97efa42016-02-11 16:51:29 +0000194// NO_INLINE:#define __OPTIMIZE__ 1
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000195//
196//
James Y Knightc97efa42016-02-11 16:51:29 +0000197// RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O1 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000198//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000199// O1-NOT:#define __OPTIMIZE_SIZE__
Chris Lattnere963d092009-10-29 04:55:36 +0000200// O1:#define __OPTIMIZE__ 1
201//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000202//
James Y Knightc97efa42016-02-11 16:51:29 +0000203// RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Os %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000204//
205// Os:#define __OPTIMIZE_SIZE__ 1
206// Os:#define __OPTIMIZE__ 1
207//
208//
James Y Knightc97efa42016-02-11 16:51:29 +0000209// RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Oz %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000210//
211// Oz:#define __OPTIMIZE_SIZE__ 1
212// Oz:#define __OPTIMIZE__ 1
213//
214//
James Y Knightc97efa42016-02-11 16:51:29 +0000215// RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix PASCAL %s
Chris Lattnere963d092009-10-29 04:55:36 +0000216//
217// PASCAL:#define __PASCAL_STRINGS__ 1
218//
219//
James Y Knightc97efa42016-02-11 16:51:29 +0000220// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix SCHAR %s
Chris Lattnere963d092009-10-29 04:55:36 +0000221//
222// SCHAR:#define __STDC__ 1
223// SCHAR-NOT:#define __UNSIGNED_CHAR__
224// SCHAR:#define __clang__ 1
225//
James Y Knightc97efa42016-02-11 16:51:29 +0000226// RUN: %clang_cc1 -E -dM -fshort-wchar < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
NAKAMURA Takumi210fbcd2014-02-25 00:30:14 +0000227// wchar_t is u16 for targeting Win32.
228// FIXME: Implement and check x86_64-cygwin.
James Y Knightc97efa42016-02-11 16:51:29 +0000229// 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 +0000230//
231// SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000232// SHORTWCHAR: #define __WCHAR_MAX__ 65535
Eli Friedman865afc92010-08-03 17:34:19 +0000233// SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
234// SHORTWCHAR: #define __WCHAR_WIDTH__ 16
235//
James Y Knightc97efa42016-02-11 16:51:29 +0000236// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=i686-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
237// 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 +0000238//
239// SHORTWCHAR2: #define __SIZEOF_WCHAR_T__ 4
240// SHORTWCHAR2: #define __WCHAR_WIDTH__ 32
241// Other definitions vary from platform to platform
Christian Pirker227f5ed2014-03-24 13:57:21 +0000242
James Y Knightc97efa42016-02-11 16:51:29 +0000243// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
244// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
Kevin Qinad64f6d2014-02-24 02:45:03 +0000245//
246// AARCH64:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000247// AARCH64-NOT:#define __AARCH64EB__ 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000248// AARCH64:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000249// AARCH64-NOT:#define __AARCH_BIG_ENDIAN 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000250// AARCH64:#define __ARM_64BIT_STATE 1
251// AARCH64:#define __ARM_ARCH 8
252// AARCH64:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000253// AARCH64-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000254// AARCH64:#define __BIGGEST_ALIGNMENT__ 16
Kevin Qinad64f6d2014-02-24 02:45:03 +0000255// AARCH64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
256// AARCH64:#define __CHAR16_TYPE__ unsigned short
257// AARCH64:#define __CHAR32_TYPE__ unsigned int
258// AARCH64:#define __CHAR_BIT__ 8
259// AARCH64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
260// AARCH64:#define __DBL_DIG__ 15
261// AARCH64:#define __DBL_EPSILON__ 2.2204460492503131e-16
262// AARCH64:#define __DBL_HAS_DENORM__ 1
263// AARCH64:#define __DBL_HAS_INFINITY__ 1
264// AARCH64:#define __DBL_HAS_QUIET_NAN__ 1
265// AARCH64:#define __DBL_MANT_DIG__ 53
266// AARCH64:#define __DBL_MAX_10_EXP__ 308
267// AARCH64:#define __DBL_MAX_EXP__ 1024
268// AARCH64:#define __DBL_MAX__ 1.7976931348623157e+308
269// AARCH64:#define __DBL_MIN_10_EXP__ (-307)
270// AARCH64:#define __DBL_MIN_EXP__ (-1021)
271// AARCH64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000272// AARCH64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Kevin Qinad64f6d2014-02-24 02:45:03 +0000273// AARCH64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
274// AARCH64:#define __FLT_DIG__ 6
275// AARCH64:#define __FLT_EPSILON__ 1.19209290e-7F
276// AARCH64:#define __FLT_EVAL_METHOD__ 0
277// AARCH64:#define __FLT_HAS_DENORM__ 1
278// AARCH64:#define __FLT_HAS_INFINITY__ 1
279// AARCH64:#define __FLT_HAS_QUIET_NAN__ 1
280// AARCH64:#define __FLT_MANT_DIG__ 24
281// AARCH64:#define __FLT_MAX_10_EXP__ 38
282// AARCH64:#define __FLT_MAX_EXP__ 128
283// AARCH64:#define __FLT_MAX__ 3.40282347e+38F
284// AARCH64:#define __FLT_MIN_10_EXP__ (-37)
285// AARCH64:#define __FLT_MIN_EXP__ (-125)
286// AARCH64:#define __FLT_MIN__ 1.17549435e-38F
287// AARCH64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000288// AARCH64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000289// AARCH64:#define __INT16_FMTd__ "hd"
290// AARCH64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000291// AARCH64:#define __INT16_MAX__ 32767
Kevin Qinad64f6d2014-02-24 02:45:03 +0000292// AARCH64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000293// AARCH64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000294// AARCH64:#define __INT32_FMTd__ "d"
295// AARCH64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000296// AARCH64:#define __INT32_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000297// AARCH64:#define __INT32_TYPE__ int
298// AARCH64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000299// AARCH64:#define __INT64_FMTd__ "ld"
300// AARCH64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000301// AARCH64:#define __INT64_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000302// AARCH64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000303// AARCH64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000304// AARCH64:#define __INT8_FMTd__ "hhd"
305// AARCH64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000306// AARCH64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000307// AARCH64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000308// AARCH64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000309// AARCH64:#define __INTMAX_FMTd__ "ld"
310// AARCH64:#define __INTMAX_FMTi__ "li"
Kevin Qinad64f6d2014-02-24 02:45:03 +0000311// AARCH64:#define __INTMAX_MAX__ 9223372036854775807L
312// AARCH64:#define __INTMAX_TYPE__ long int
313// AARCH64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000314// AARCH64:#define __INTPTR_FMTd__ "ld"
315// AARCH64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000316// AARCH64:#define __INTPTR_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000317// AARCH64:#define __INTPTR_TYPE__ long int
318// AARCH64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000319// AARCH64:#define __INT_FAST16_FMTd__ "hd"
320// AARCH64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000321// AARCH64:#define __INT_FAST16_MAX__ 32767
322// AARCH64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000323// AARCH64:#define __INT_FAST32_FMTd__ "d"
324// AARCH64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000325// AARCH64:#define __INT_FAST32_MAX__ 2147483647
326// AARCH64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000327// AARCH64:#define __INT_FAST64_FMTd__ "ld"
328// AARCH64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000329// AARCH64:#define __INT_FAST64_MAX__ 9223372036854775807L
330// AARCH64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000331// AARCH64:#define __INT_FAST8_FMTd__ "hhd"
332// AARCH64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000333// AARCH64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000334// AARCH64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000335// AARCH64:#define __INT_LEAST16_FMTd__ "hd"
336// AARCH64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000337// AARCH64:#define __INT_LEAST16_MAX__ 32767
338// AARCH64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000339// AARCH64:#define __INT_LEAST32_FMTd__ "d"
340// AARCH64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000341// AARCH64:#define __INT_LEAST32_MAX__ 2147483647
342// AARCH64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000343// AARCH64:#define __INT_LEAST64_FMTd__ "ld"
344// AARCH64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000345// AARCH64:#define __INT_LEAST64_MAX__ 9223372036854775807L
346// AARCH64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000347// AARCH64:#define __INT_LEAST8_FMTd__ "hhd"
348// AARCH64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000349// AARCH64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000350// AARCH64:#define __INT_LEAST8_TYPE__ signed char
Kevin Qinad64f6d2014-02-24 02:45:03 +0000351// AARCH64:#define __INT_MAX__ 2147483647
352// AARCH64:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
353// AARCH64:#define __LDBL_DIG__ 33
354// AARCH64:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
355// AARCH64:#define __LDBL_HAS_DENORM__ 1
356// AARCH64:#define __LDBL_HAS_INFINITY__ 1
357// AARCH64:#define __LDBL_HAS_QUIET_NAN__ 1
358// AARCH64:#define __LDBL_MANT_DIG__ 113
359// AARCH64:#define __LDBL_MAX_10_EXP__ 4932
360// AARCH64:#define __LDBL_MAX_EXP__ 16384
361// AARCH64:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
362// AARCH64:#define __LDBL_MIN_10_EXP__ (-4931)
363// AARCH64:#define __LDBL_MIN_EXP__ (-16381)
364// AARCH64:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
365// AARCH64:#define __LONG_LONG_MAX__ 9223372036854775807LL
366// AARCH64:#define __LONG_MAX__ 9223372036854775807L
367// AARCH64:#define __LP64__ 1
368// AARCH64:#define __POINTER_WIDTH__ 64
369// AARCH64:#define __PTRDIFF_TYPE__ long int
370// AARCH64:#define __PTRDIFF_WIDTH__ 64
371// AARCH64:#define __SCHAR_MAX__ 127
372// AARCH64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000373// AARCH64:#define __SIG_ATOMIC_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000374// AARCH64:#define __SIG_ATOMIC_WIDTH__ 32
375// AARCH64:#define __SIZEOF_DOUBLE__ 8
376// AARCH64:#define __SIZEOF_FLOAT__ 4
377// AARCH64:#define __SIZEOF_INT128__ 16
378// AARCH64:#define __SIZEOF_INT__ 4
379// AARCH64:#define __SIZEOF_LONG_DOUBLE__ 16
380// AARCH64:#define __SIZEOF_LONG_LONG__ 8
381// AARCH64:#define __SIZEOF_LONG__ 8
382// AARCH64:#define __SIZEOF_POINTER__ 8
383// AARCH64:#define __SIZEOF_PTRDIFF_T__ 8
384// AARCH64:#define __SIZEOF_SHORT__ 2
385// AARCH64:#define __SIZEOF_SIZE_T__ 8
386// AARCH64:#define __SIZEOF_WCHAR_T__ 4
387// AARCH64:#define __SIZEOF_WINT_T__ 4
388// AARCH64:#define __SIZE_MAX__ 18446744073709551615UL
389// AARCH64:#define __SIZE_TYPE__ long unsigned int
390// AARCH64:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000391// AARCH64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000392// AARCH64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000393// AARCH64:#define __UINT16_TYPE__ unsigned short
394// AARCH64:#define __UINT32_C_SUFFIX__ U
395// AARCH64:#define __UINT32_MAX__ 4294967295U
396// AARCH64:#define __UINT32_TYPE__ unsigned int
397// AARCH64:#define __UINT64_C_SUFFIX__ UL
398// AARCH64:#define __UINT64_MAX__ 18446744073709551615UL
399// AARCH64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000400// AARCH64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000401// AARCH64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000402// AARCH64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000403// AARCH64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000404// AARCH64:#define __UINTMAX_MAX__ 18446744073709551615UL
Kevin Qinad64f6d2014-02-24 02:45:03 +0000405// AARCH64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000406// AARCH64:#define __UINTMAX_WIDTH__ 64
407// AARCH64:#define __UINTPTR_MAX__ 18446744073709551615UL
408// AARCH64:#define __UINTPTR_TYPE__ long unsigned int
409// AARCH64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000410// AARCH64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000411// AARCH64:#define __UINT_FAST16_TYPE__ unsigned short
412// AARCH64:#define __UINT_FAST32_MAX__ 4294967295U
413// AARCH64:#define __UINT_FAST32_TYPE__ unsigned int
414// AARCH64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
415// AARCH64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000416// AARCH64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000417// AARCH64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000418// AARCH64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000419// AARCH64:#define __UINT_LEAST16_TYPE__ unsigned short
420// AARCH64:#define __UINT_LEAST32_MAX__ 4294967295U
421// AARCH64:#define __UINT_LEAST32_TYPE__ unsigned int
422// AARCH64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
423// AARCH64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000424// AARCH64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000425// AARCH64:#define __UINT_LEAST8_TYPE__ unsigned char
Kevin Qinad64f6d2014-02-24 02:45:03 +0000426// AARCH64:#define __USER_LABEL_PREFIX__ _
427// AARCH64:#define __WCHAR_MAX__ 4294967295U
428// AARCH64:#define __WCHAR_TYPE__ unsigned int
429// AARCH64:#define __WCHAR_UNSIGNED__ 1
430// AARCH64:#define __WCHAR_WIDTH__ 32
431// AARCH64:#define __WINT_TYPE__ int
432// AARCH64:#define __WINT_WIDTH__ 32
433// AARCH64:#define __aarch64__ 1
434//
James Y Knightc97efa42016-02-11 16:51:29 +0000435// 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 +0000436//
437// AARCH64-BE:#define _LP64 1
438// AARCH64-BE:#define __AARCH64EB__ 1
439// AARCH64-BE-NOT:#define __AARCH64EL__ 1
440// AARCH64-BE:#define __AARCH_BIG_ENDIAN 1
441// AARCH64-BE:#define __ARM_64BIT_STATE 1
442// AARCH64-BE:#define __ARM_ARCH 8
443// AARCH64-BE:#define __ARM_ARCH_ISA_A64 1
444// AARCH64-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000445// AARCH64-BE:#define __BIGGEST_ALIGNMENT__ 16
Christian Pirker227f5ed2014-03-24 13:57:21 +0000446// AARCH64-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
447// AARCH64-BE:#define __CHAR16_TYPE__ unsigned short
448// AARCH64-BE:#define __CHAR32_TYPE__ unsigned int
449// AARCH64-BE:#define __CHAR_BIT__ 8
450// AARCH64-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
451// AARCH64-BE:#define __DBL_DIG__ 15
452// AARCH64-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
453// AARCH64-BE:#define __DBL_HAS_DENORM__ 1
454// AARCH64-BE:#define __DBL_HAS_INFINITY__ 1
455// AARCH64-BE:#define __DBL_HAS_QUIET_NAN__ 1
456// AARCH64-BE:#define __DBL_MANT_DIG__ 53
457// AARCH64-BE:#define __DBL_MAX_10_EXP__ 308
458// AARCH64-BE:#define __DBL_MAX_EXP__ 1024
459// AARCH64-BE:#define __DBL_MAX__ 1.7976931348623157e+308
460// AARCH64-BE:#define __DBL_MIN_10_EXP__ (-307)
461// AARCH64-BE:#define __DBL_MIN_EXP__ (-1021)
462// AARCH64-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000463// AARCH64-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000464// AARCH64-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
465// AARCH64-BE:#define __FLT_DIG__ 6
466// AARCH64-BE:#define __FLT_EPSILON__ 1.19209290e-7F
467// AARCH64-BE:#define __FLT_EVAL_METHOD__ 0
468// AARCH64-BE:#define __FLT_HAS_DENORM__ 1
469// AARCH64-BE:#define __FLT_HAS_INFINITY__ 1
470// AARCH64-BE:#define __FLT_HAS_QUIET_NAN__ 1
471// AARCH64-BE:#define __FLT_MANT_DIG__ 24
472// AARCH64-BE:#define __FLT_MAX_10_EXP__ 38
473// AARCH64-BE:#define __FLT_MAX_EXP__ 128
474// AARCH64-BE:#define __FLT_MAX__ 3.40282347e+38F
475// AARCH64-BE:#define __FLT_MIN_10_EXP__ (-37)
476// AARCH64-BE:#define __FLT_MIN_EXP__ (-125)
477// AARCH64-BE:#define __FLT_MIN__ 1.17549435e-38F
478// AARCH64-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000479// AARCH64-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000480// AARCH64-BE:#define __INT16_FMTd__ "hd"
481// AARCH64-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000482// AARCH64-BE:#define __INT16_MAX__ 32767
Christian Pirker227f5ed2014-03-24 13:57:21 +0000483// AARCH64-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000484// AARCH64-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000485// AARCH64-BE:#define __INT32_FMTd__ "d"
486// AARCH64-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000487// AARCH64-BE:#define __INT32_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000488// AARCH64-BE:#define __INT32_TYPE__ int
489// AARCH64-BE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000490// AARCH64-BE:#define __INT64_FMTd__ "ld"
491// AARCH64-BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000492// AARCH64-BE:#define __INT64_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000493// AARCH64-BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000494// AARCH64-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000495// AARCH64-BE:#define __INT8_FMTd__ "hhd"
496// AARCH64-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000497// AARCH64-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000498// AARCH64-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000499// AARCH64-BE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000500// AARCH64-BE:#define __INTMAX_FMTd__ "ld"
501// AARCH64-BE:#define __INTMAX_FMTi__ "li"
Christian Pirker227f5ed2014-03-24 13:57:21 +0000502// AARCH64-BE:#define __INTMAX_MAX__ 9223372036854775807L
503// AARCH64-BE:#define __INTMAX_TYPE__ long int
504// AARCH64-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000505// AARCH64-BE:#define __INTPTR_FMTd__ "ld"
506// AARCH64-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000507// AARCH64-BE:#define __INTPTR_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000508// AARCH64-BE:#define __INTPTR_TYPE__ long int
509// AARCH64-BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000510// AARCH64-BE:#define __INT_FAST16_FMTd__ "hd"
511// AARCH64-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000512// AARCH64-BE:#define __INT_FAST16_MAX__ 32767
513// AARCH64-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000514// AARCH64-BE:#define __INT_FAST32_FMTd__ "d"
515// AARCH64-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000516// AARCH64-BE:#define __INT_FAST32_MAX__ 2147483647
517// AARCH64-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000518// AARCH64-BE:#define __INT_FAST64_FMTd__ "ld"
519// AARCH64-BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000520// AARCH64-BE:#define __INT_FAST64_MAX__ 9223372036854775807L
521// AARCH64-BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000522// AARCH64-BE:#define __INT_FAST8_FMTd__ "hhd"
523// AARCH64-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000524// AARCH64-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000525// AARCH64-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000526// AARCH64-BE:#define __INT_LEAST16_FMTd__ "hd"
527// AARCH64-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000528// AARCH64-BE:#define __INT_LEAST16_MAX__ 32767
529// AARCH64-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000530// AARCH64-BE:#define __INT_LEAST32_FMTd__ "d"
531// AARCH64-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000532// AARCH64-BE:#define __INT_LEAST32_MAX__ 2147483647
533// AARCH64-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000534// AARCH64-BE:#define __INT_LEAST64_FMTd__ "ld"
535// AARCH64-BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000536// AARCH64-BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
537// AARCH64-BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000538// AARCH64-BE:#define __INT_LEAST8_FMTd__ "hhd"
539// AARCH64-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000540// AARCH64-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000541// AARCH64-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirker227f5ed2014-03-24 13:57:21 +0000542// AARCH64-BE:#define __INT_MAX__ 2147483647
543// AARCH64-BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
544// AARCH64-BE:#define __LDBL_DIG__ 33
545// AARCH64-BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
546// AARCH64-BE:#define __LDBL_HAS_DENORM__ 1
547// AARCH64-BE:#define __LDBL_HAS_INFINITY__ 1
548// AARCH64-BE:#define __LDBL_HAS_QUIET_NAN__ 1
549// AARCH64-BE:#define __LDBL_MANT_DIG__ 113
550// AARCH64-BE:#define __LDBL_MAX_10_EXP__ 4932
551// AARCH64-BE:#define __LDBL_MAX_EXP__ 16384
552// AARCH64-BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
553// AARCH64-BE:#define __LDBL_MIN_10_EXP__ (-4931)
554// AARCH64-BE:#define __LDBL_MIN_EXP__ (-16381)
555// AARCH64-BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
556// AARCH64-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
557// AARCH64-BE:#define __LONG_MAX__ 9223372036854775807L
558// AARCH64-BE:#define __LP64__ 1
559// AARCH64-BE:#define __POINTER_WIDTH__ 64
560// AARCH64-BE:#define __PTRDIFF_TYPE__ long int
561// AARCH64-BE:#define __PTRDIFF_WIDTH__ 64
562// AARCH64-BE:#define __SCHAR_MAX__ 127
563// AARCH64-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000564// AARCH64-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000565// AARCH64-BE:#define __SIG_ATOMIC_WIDTH__ 32
566// AARCH64-BE:#define __SIZEOF_DOUBLE__ 8
567// AARCH64-BE:#define __SIZEOF_FLOAT__ 4
568// AARCH64-BE:#define __SIZEOF_INT128__ 16
569// AARCH64-BE:#define __SIZEOF_INT__ 4
570// AARCH64-BE:#define __SIZEOF_LONG_DOUBLE__ 16
571// AARCH64-BE:#define __SIZEOF_LONG_LONG__ 8
572// AARCH64-BE:#define __SIZEOF_LONG__ 8
573// AARCH64-BE:#define __SIZEOF_POINTER__ 8
574// AARCH64-BE:#define __SIZEOF_PTRDIFF_T__ 8
575// AARCH64-BE:#define __SIZEOF_SHORT__ 2
576// AARCH64-BE:#define __SIZEOF_SIZE_T__ 8
577// AARCH64-BE:#define __SIZEOF_WCHAR_T__ 4
578// AARCH64-BE:#define __SIZEOF_WINT_T__ 4
579// AARCH64-BE:#define __SIZE_MAX__ 18446744073709551615UL
580// AARCH64-BE:#define __SIZE_TYPE__ long unsigned int
581// AARCH64-BE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000582// AARCH64-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000583// AARCH64-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000584// AARCH64-BE:#define __UINT16_TYPE__ unsigned short
585// AARCH64-BE:#define __UINT32_C_SUFFIX__ U
586// AARCH64-BE:#define __UINT32_MAX__ 4294967295U
587// AARCH64-BE:#define __UINT32_TYPE__ unsigned int
588// AARCH64-BE:#define __UINT64_C_SUFFIX__ UL
589// AARCH64-BE:#define __UINT64_MAX__ 18446744073709551615UL
590// AARCH64-BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000591// AARCH64-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000592// AARCH64-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000593// AARCH64-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000594// AARCH64-BE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000595// AARCH64-BE:#define __UINTMAX_MAX__ 18446744073709551615UL
Christian Pirker227f5ed2014-03-24 13:57:21 +0000596// AARCH64-BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000597// AARCH64-BE:#define __UINTMAX_WIDTH__ 64
598// AARCH64-BE:#define __UINTPTR_MAX__ 18446744073709551615UL
599// AARCH64-BE:#define __UINTPTR_TYPE__ long unsigned int
600// AARCH64-BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000601// AARCH64-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000602// AARCH64-BE:#define __UINT_FAST16_TYPE__ unsigned short
603// AARCH64-BE:#define __UINT_FAST32_MAX__ 4294967295U
604// AARCH64-BE:#define __UINT_FAST32_TYPE__ unsigned int
605// AARCH64-BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
606// AARCH64-BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000607// AARCH64-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000608// AARCH64-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000609// AARCH64-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000610// AARCH64-BE:#define __UINT_LEAST16_TYPE__ unsigned short
611// AARCH64-BE:#define __UINT_LEAST32_MAX__ 4294967295U
612// AARCH64-BE:#define __UINT_LEAST32_TYPE__ unsigned int
613// AARCH64-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
614// AARCH64-BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000615// AARCH64-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000616// AARCH64-BE:#define __UINT_LEAST8_TYPE__ unsigned char
Christian Pirker227f5ed2014-03-24 13:57:21 +0000617// AARCH64-BE:#define __USER_LABEL_PREFIX__ _
618// AARCH64-BE:#define __WCHAR_MAX__ 4294967295U
619// AARCH64-BE:#define __WCHAR_TYPE__ unsigned int
620// AARCH64-BE:#define __WCHAR_UNSIGNED__ 1
621// AARCH64-BE:#define __WCHAR_WIDTH__ 32
622// AARCH64-BE:#define __WINT_TYPE__ int
623// AARCH64-BE:#define __WINT_WIDTH__ 32
624// AARCH64-BE:#define __aarch64__ 1
625//
James Y Knightc97efa42016-02-11 16:51:29 +0000626// 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 +0000627//
628// AARCH64-NETBSD:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000629// AARCH64-NETBSD-NOT:#define __AARCH64EB__ 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000630// AARCH64-NETBSD:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000631// AARCH64-NETBSD-NOT:#define __AARCH_BIG_ENDIAN 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000632// AARCH64-NETBSD:#define __ARM_64BIT_STATE 1
633// AARCH64-NETBSD:#define __ARM_ARCH 8
634// AARCH64-NETBSD:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000635// AARCH64-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000636// AARCH64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000637// AARCH64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
638// AARCH64-NETBSD:#define __CHAR16_TYPE__ unsigned short
639// AARCH64-NETBSD:#define __CHAR32_TYPE__ unsigned int
640// AARCH64-NETBSD:#define __CHAR_BIT__ 8
641// AARCH64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
642// AARCH64-NETBSD:#define __DBL_DIG__ 15
643// AARCH64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
644// AARCH64-NETBSD:#define __DBL_HAS_DENORM__ 1
645// AARCH64-NETBSD:#define __DBL_HAS_INFINITY__ 1
646// AARCH64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
647// AARCH64-NETBSD:#define __DBL_MANT_DIG__ 53
648// AARCH64-NETBSD:#define __DBL_MAX_10_EXP__ 308
649// AARCH64-NETBSD:#define __DBL_MAX_EXP__ 1024
650// AARCH64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
651// AARCH64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
652// AARCH64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
653// AARCH64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000654// AARCH64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000655// AARCH64-NETBSD:#define __ELF__ 1
656// AARCH64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
657// AARCH64-NETBSD:#define __FLT_DIG__ 6
658// AARCH64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
659// AARCH64-NETBSD:#define __FLT_EVAL_METHOD__ 0
660// AARCH64-NETBSD:#define __FLT_HAS_DENORM__ 1
661// AARCH64-NETBSD:#define __FLT_HAS_INFINITY__ 1
662// AARCH64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
663// AARCH64-NETBSD:#define __FLT_MANT_DIG__ 24
664// AARCH64-NETBSD:#define __FLT_MAX_10_EXP__ 38
665// AARCH64-NETBSD:#define __FLT_MAX_EXP__ 128
666// AARCH64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
667// AARCH64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
668// AARCH64-NETBSD:#define __FLT_MIN_EXP__ (-125)
669// AARCH64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
670// AARCH64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000671// AARCH64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000672// AARCH64-NETBSD:#define __INT16_FMTd__ "hd"
673// AARCH64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000674// AARCH64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000675// AARCH64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000676// AARCH64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000677// AARCH64-NETBSD:#define __INT32_FMTd__ "d"
678// AARCH64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000679// AARCH64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000680// AARCH64-NETBSD:#define __INT32_TYPE__ int
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000681// AARCH64-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000682// AARCH64-NETBSD:#define __INT64_FMTd__ "lld"
683// AARCH64-NETBSD:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +0000684// AARCH64-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000685// AARCH64-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +0000686// AARCH64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000687// AARCH64-NETBSD:#define __INT8_FMTd__ "hhd"
688// AARCH64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000689// AARCH64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000690// AARCH64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000691// AARCH64-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000692// AARCH64-NETBSD:#define __INTMAX_FMTd__ "lld"
693// AARCH64-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000694// AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
695// AARCH64-NETBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000696// AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000697// AARCH64-NETBSD:#define __INTPTR_FMTd__ "ld"
698// AARCH64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000699// AARCH64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000700// AARCH64-NETBSD:#define __INTPTR_TYPE__ long int
701// AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000702// AARCH64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
703// AARCH64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000704// AARCH64-NETBSD:#define __INT_FAST16_MAX__ 32767
705// AARCH64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000706// AARCH64-NETBSD:#define __INT_FAST32_FMTd__ "d"
707// AARCH64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000708// AARCH64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
709// AARCH64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000710// AARCH64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
711// AARCH64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000712// AARCH64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
713// AARCH64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000714// AARCH64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
715// AARCH64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000716// AARCH64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000717// AARCH64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000718// AARCH64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
719// AARCH64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000720// AARCH64-NETBSD:#define __INT_LEAST16_MAX__ 32767
721// AARCH64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000722// AARCH64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
723// AARCH64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000724// AARCH64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
725// AARCH64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000726// AARCH64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
727// AARCH64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000728// AARCH64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
729// AARCH64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000730// AARCH64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
731// AARCH64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000732// AARCH64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000733// AARCH64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000734// AARCH64-NETBSD:#define __INT_MAX__ 2147483647
735// AARCH64-NETBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
736// AARCH64-NETBSD:#define __LDBL_DIG__ 33
737// AARCH64-NETBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
738// AARCH64-NETBSD:#define __LDBL_HAS_DENORM__ 1
739// AARCH64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
740// AARCH64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
741// AARCH64-NETBSD:#define __LDBL_MANT_DIG__ 113
742// AARCH64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
743// AARCH64-NETBSD:#define __LDBL_MAX_EXP__ 16384
744// AARCH64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
745// AARCH64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
746// AARCH64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
747// AARCH64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
748// AARCH64-NETBSD:#define __LITTLE_ENDIAN__ 1
749// AARCH64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
750// AARCH64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
751// AARCH64-NETBSD:#define __LP64__ 1
752// AARCH64-NETBSD:#define __NetBSD__ 1
753// AARCH64-NETBSD:#define __POINTER_WIDTH__ 64
754// AARCH64-NETBSD:#define __PTRDIFF_TYPE__ long int
755// AARCH64-NETBSD:#define __PTRDIFF_WIDTH__ 64
756// AARCH64-NETBSD:#define __SCHAR_MAX__ 127
757// AARCH64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000758// AARCH64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000759// AARCH64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
760// AARCH64-NETBSD:#define __SIZEOF_DOUBLE__ 8
761// AARCH64-NETBSD:#define __SIZEOF_FLOAT__ 4
762// AARCH64-NETBSD:#define __SIZEOF_INT__ 4
763// AARCH64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
764// AARCH64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
765// AARCH64-NETBSD:#define __SIZEOF_LONG__ 8
766// AARCH64-NETBSD:#define __SIZEOF_POINTER__ 8
767// AARCH64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
768// AARCH64-NETBSD:#define __SIZEOF_SHORT__ 2
769// AARCH64-NETBSD:#define __SIZEOF_SIZE_T__ 8
770// AARCH64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
771// AARCH64-NETBSD:#define __SIZEOF_WINT_T__ 4
772// AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
773// AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int
774// AARCH64-NETBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000775// AARCH64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000776// AARCH64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000777// AARCH64-NETBSD:#define __UINT16_TYPE__ unsigned short
778// AARCH64-NETBSD:#define __UINT32_C_SUFFIX__ U
779// AARCH64-NETBSD:#define __UINT32_MAX__ 4294967295U
780// AARCH64-NETBSD:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +0000781// AARCH64-NETBSD:#define __UINT64_C_SUFFIX__ ULL
782// AARCH64-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
783// AARCH64-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000784// AARCH64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000785// AARCH64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000786// AARCH64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000787// AARCH64-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +0000788// AARCH64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000789// AARCH64-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000790// AARCH64-NETBSD:#define __UINTMAX_WIDTH__ 64
791// AARCH64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
792// AARCH64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
793// AARCH64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000794// AARCH64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000795// AARCH64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
796// AARCH64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
797// AARCH64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
798// AARCH64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
799// AARCH64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000800// AARCH64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000801// AARCH64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000802// AARCH64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000803// AARCH64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
804// AARCH64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
805// AARCH64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
806// AARCH64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
807// AARCH64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000808// AARCH64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000809// AARCH64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000810// AARCH64-NETBSD:#define __USER_LABEL_PREFIX__
811// AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647
812// AARCH64-NETBSD:#define __WCHAR_TYPE__ int
813// AARCH64-NETBSD:#define __WCHAR_WIDTH__ 32
814// AARCH64-NETBSD:#define __WINT_TYPE__ int
815// AARCH64-NETBSD:#define __WINT_WIDTH__ 32
816// AARCH64-NETBSD:#define __aarch64__ 1
Ed Maste6a9eda52014-11-13 16:55:42 +0000817//
James Y Knightc97efa42016-02-11 16:51:29 +0000818// 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 +0000819//
820// AARCH64-FREEBSD:#define _LP64 1
821// AARCH64-FREEBSD-NOT:#define __AARCH64EB__ 1
822// AARCH64-FREEBSD:#define __AARCH64EL__ 1
823// AARCH64-FREEBSD-NOT:#define __AARCH_BIG_ENDIAN 1
824// AARCH64-FREEBSD:#define __ARM_64BIT_STATE 1
825// AARCH64-FREEBSD:#define __ARM_ARCH 8
826// AARCH64-FREEBSD:#define __ARM_ARCH_ISA_A64 1
827// AARCH64-FREEBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000828// AARCH64-FREEBSD:#define __BIGGEST_ALIGNMENT__ 16
Ed Maste6a9eda52014-11-13 16:55:42 +0000829// AARCH64-FREEBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
830// AARCH64-FREEBSD:#define __CHAR16_TYPE__ unsigned short
831// AARCH64-FREEBSD:#define __CHAR32_TYPE__ unsigned int
832// AARCH64-FREEBSD:#define __CHAR_BIT__ 8
833// AARCH64-FREEBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
834// AARCH64-FREEBSD:#define __DBL_DIG__ 15
835// AARCH64-FREEBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
836// AARCH64-FREEBSD:#define __DBL_HAS_DENORM__ 1
837// AARCH64-FREEBSD:#define __DBL_HAS_INFINITY__ 1
838// AARCH64-FREEBSD:#define __DBL_HAS_QUIET_NAN__ 1
839// AARCH64-FREEBSD:#define __DBL_MANT_DIG__ 53
840// AARCH64-FREEBSD:#define __DBL_MAX_10_EXP__ 308
841// AARCH64-FREEBSD:#define __DBL_MAX_EXP__ 1024
842// AARCH64-FREEBSD:#define __DBL_MAX__ 1.7976931348623157e+308
843// AARCH64-FREEBSD:#define __DBL_MIN_10_EXP__ (-307)
844// AARCH64-FREEBSD:#define __DBL_MIN_EXP__ (-1021)
845// AARCH64-FREEBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000846// AARCH64-FREEBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ed Maste6a9eda52014-11-13 16:55:42 +0000847// AARCH64-FREEBSD:#define __ELF__ 1
848// AARCH64-FREEBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
849// AARCH64-FREEBSD:#define __FLT_DIG__ 6
850// AARCH64-FREEBSD:#define __FLT_EPSILON__ 1.19209290e-7F
851// AARCH64-FREEBSD:#define __FLT_EVAL_METHOD__ 0
852// AARCH64-FREEBSD:#define __FLT_HAS_DENORM__ 1
853// AARCH64-FREEBSD:#define __FLT_HAS_INFINITY__ 1
854// AARCH64-FREEBSD:#define __FLT_HAS_QUIET_NAN__ 1
855// AARCH64-FREEBSD:#define __FLT_MANT_DIG__ 24
856// AARCH64-FREEBSD:#define __FLT_MAX_10_EXP__ 38
857// AARCH64-FREEBSD:#define __FLT_MAX_EXP__ 128
858// AARCH64-FREEBSD:#define __FLT_MAX__ 3.40282347e+38F
859// AARCH64-FREEBSD:#define __FLT_MIN_10_EXP__ (-37)
860// AARCH64-FREEBSD:#define __FLT_MIN_EXP__ (-125)
861// AARCH64-FREEBSD:#define __FLT_MIN__ 1.17549435e-38F
862// AARCH64-FREEBSD:#define __FLT_RADIX__ 2
863// AARCH64-FREEBSD:#define __FreeBSD__ 11
James Y Knightc97efa42016-02-11 16:51:29 +0000864// AARCH64-FREEBSD:#define __INT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000865// AARCH64-FREEBSD:#define __INT16_FMTd__ "hd"
866// AARCH64-FREEBSD:#define __INT16_FMTi__ "hi"
867// AARCH64-FREEBSD:#define __INT16_MAX__ 32767
868// AARCH64-FREEBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000869// AARCH64-FREEBSD:#define __INT32_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000870// AARCH64-FREEBSD:#define __INT32_FMTd__ "d"
871// AARCH64-FREEBSD:#define __INT32_FMTi__ "i"
872// AARCH64-FREEBSD:#define __INT32_MAX__ 2147483647
873// AARCH64-FREEBSD:#define __INT32_TYPE__ int
874// AARCH64-FREEBSD:#define __INT64_C_SUFFIX__ L
875// AARCH64-FREEBSD:#define __INT64_FMTd__ "ld"
876// AARCH64-FREEBSD:#define __INT64_FMTi__ "li"
877// AARCH64-FREEBSD:#define __INT64_MAX__ 9223372036854775807L
878// AARCH64-FREEBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000879// AARCH64-FREEBSD:#define __INT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000880// AARCH64-FREEBSD:#define __INT8_FMTd__ "hhd"
881// AARCH64-FREEBSD:#define __INT8_FMTi__ "hhi"
882// AARCH64-FREEBSD:#define __INT8_MAX__ 127
883// AARCH64-FREEBSD:#define __INT8_TYPE__ signed char
884// AARCH64-FREEBSD:#define __INTMAX_C_SUFFIX__ L
885// AARCH64-FREEBSD:#define __INTMAX_FMTd__ "ld"
886// AARCH64-FREEBSD:#define __INTMAX_FMTi__ "li"
887// AARCH64-FREEBSD:#define __INTMAX_MAX__ 9223372036854775807L
888// AARCH64-FREEBSD:#define __INTMAX_TYPE__ long int
889// AARCH64-FREEBSD:#define __INTMAX_WIDTH__ 64
890// AARCH64-FREEBSD:#define __INTPTR_FMTd__ "ld"
891// AARCH64-FREEBSD:#define __INTPTR_FMTi__ "li"
892// AARCH64-FREEBSD:#define __INTPTR_MAX__ 9223372036854775807L
893// AARCH64-FREEBSD:#define __INTPTR_TYPE__ long int
894// AARCH64-FREEBSD:#define __INTPTR_WIDTH__ 64
895// AARCH64-FREEBSD:#define __INT_FAST16_FMTd__ "hd"
896// AARCH64-FREEBSD:#define __INT_FAST16_FMTi__ "hi"
897// AARCH64-FREEBSD:#define __INT_FAST16_MAX__ 32767
898// AARCH64-FREEBSD:#define __INT_FAST16_TYPE__ short
899// AARCH64-FREEBSD:#define __INT_FAST32_FMTd__ "d"
900// AARCH64-FREEBSD:#define __INT_FAST32_FMTi__ "i"
901// AARCH64-FREEBSD:#define __INT_FAST32_MAX__ 2147483647
902// AARCH64-FREEBSD:#define __INT_FAST32_TYPE__ int
903// AARCH64-FREEBSD:#define __INT_FAST64_FMTd__ "ld"
904// AARCH64-FREEBSD:#define __INT_FAST64_FMTi__ "li"
905// AARCH64-FREEBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
906// AARCH64-FREEBSD:#define __INT_FAST64_TYPE__ long int
907// AARCH64-FREEBSD:#define __INT_FAST8_FMTd__ "hhd"
908// AARCH64-FREEBSD:#define __INT_FAST8_FMTi__ "hhi"
909// AARCH64-FREEBSD:#define __INT_FAST8_MAX__ 127
910// AARCH64-FREEBSD:#define __INT_FAST8_TYPE__ signed char
911// AARCH64-FREEBSD:#define __INT_LEAST16_FMTd__ "hd"
912// AARCH64-FREEBSD:#define __INT_LEAST16_FMTi__ "hi"
913// AARCH64-FREEBSD:#define __INT_LEAST16_MAX__ 32767
914// AARCH64-FREEBSD:#define __INT_LEAST16_TYPE__ short
915// AARCH64-FREEBSD:#define __INT_LEAST32_FMTd__ "d"
916// AARCH64-FREEBSD:#define __INT_LEAST32_FMTi__ "i"
917// AARCH64-FREEBSD:#define __INT_LEAST32_MAX__ 2147483647
918// AARCH64-FREEBSD:#define __INT_LEAST32_TYPE__ int
919// AARCH64-FREEBSD:#define __INT_LEAST64_FMTd__ "ld"
920// AARCH64-FREEBSD:#define __INT_LEAST64_FMTi__ "li"
921// AARCH64-FREEBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
922// AARCH64-FREEBSD:#define __INT_LEAST64_TYPE__ long int
923// AARCH64-FREEBSD:#define __INT_LEAST8_FMTd__ "hhd"
924// AARCH64-FREEBSD:#define __INT_LEAST8_FMTi__ "hhi"
925// AARCH64-FREEBSD:#define __INT_LEAST8_MAX__ 127
926// AARCH64-FREEBSD:#define __INT_LEAST8_TYPE__ signed char
927// AARCH64-FREEBSD:#define __INT_MAX__ 2147483647
928// AARCH64-FREEBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
929// AARCH64-FREEBSD:#define __LDBL_DIG__ 33
930// AARCH64-FREEBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
931// AARCH64-FREEBSD:#define __LDBL_HAS_DENORM__ 1
932// AARCH64-FREEBSD:#define __LDBL_HAS_INFINITY__ 1
933// AARCH64-FREEBSD:#define __LDBL_HAS_QUIET_NAN__ 1
934// AARCH64-FREEBSD:#define __LDBL_MANT_DIG__ 113
935// AARCH64-FREEBSD:#define __LDBL_MAX_10_EXP__ 4932
936// AARCH64-FREEBSD:#define __LDBL_MAX_EXP__ 16384
937// AARCH64-FREEBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
938// AARCH64-FREEBSD:#define __LDBL_MIN_10_EXP__ (-4931)
939// AARCH64-FREEBSD:#define __LDBL_MIN_EXP__ (-16381)
940// AARCH64-FREEBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
941// AARCH64-FREEBSD:#define __LITTLE_ENDIAN__ 1
942// AARCH64-FREEBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
943// AARCH64-FREEBSD:#define __LONG_MAX__ 9223372036854775807L
944// AARCH64-FREEBSD:#define __LP64__ 1
945// AARCH64-FREEBSD:#define __POINTER_WIDTH__ 64
946// AARCH64-FREEBSD:#define __PTRDIFF_TYPE__ long int
947// AARCH64-FREEBSD:#define __PTRDIFF_WIDTH__ 64
948// AARCH64-FREEBSD:#define __SCHAR_MAX__ 127
949// AARCH64-FREEBSD:#define __SHRT_MAX__ 32767
950// AARCH64-FREEBSD:#define __SIG_ATOMIC_MAX__ 2147483647
951// AARCH64-FREEBSD:#define __SIG_ATOMIC_WIDTH__ 32
952// AARCH64-FREEBSD:#define __SIZEOF_DOUBLE__ 8
953// AARCH64-FREEBSD:#define __SIZEOF_FLOAT__ 4
954// AARCH64-FREEBSD:#define __SIZEOF_INT128__ 16
955// AARCH64-FREEBSD:#define __SIZEOF_INT__ 4
956// AARCH64-FREEBSD:#define __SIZEOF_LONG_DOUBLE__ 16
957// AARCH64-FREEBSD:#define __SIZEOF_LONG_LONG__ 8
958// AARCH64-FREEBSD:#define __SIZEOF_LONG__ 8
959// AARCH64-FREEBSD:#define __SIZEOF_POINTER__ 8
960// AARCH64-FREEBSD:#define __SIZEOF_PTRDIFF_T__ 8
961// AARCH64-FREEBSD:#define __SIZEOF_SHORT__ 2
962// AARCH64-FREEBSD:#define __SIZEOF_SIZE_T__ 8
963// AARCH64-FREEBSD:#define __SIZEOF_WCHAR_T__ 4
964// AARCH64-FREEBSD:#define __SIZEOF_WINT_T__ 4
965// AARCH64-FREEBSD:#define __SIZE_MAX__ 18446744073709551615UL
966// AARCH64-FREEBSD:#define __SIZE_TYPE__ long unsigned int
967// AARCH64-FREEBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000968// AARCH64-FREEBSD:#define __UINT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000969// AARCH64-FREEBSD:#define __UINT16_MAX__ 65535
970// AARCH64-FREEBSD:#define __UINT16_TYPE__ unsigned short
971// AARCH64-FREEBSD:#define __UINT32_C_SUFFIX__ U
972// AARCH64-FREEBSD:#define __UINT32_MAX__ 4294967295U
973// AARCH64-FREEBSD:#define __UINT32_TYPE__ unsigned int
974// AARCH64-FREEBSD:#define __UINT64_C_SUFFIX__ UL
975// AARCH64-FREEBSD:#define __UINT64_MAX__ 18446744073709551615UL
976// AARCH64-FREEBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000977// AARCH64-FREEBSD:#define __UINT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +0000978// AARCH64-FREEBSD:#define __UINT8_MAX__ 255
979// AARCH64-FREEBSD:#define __UINT8_TYPE__ unsigned char
980// AARCH64-FREEBSD:#define __UINTMAX_C_SUFFIX__ UL
981// AARCH64-FREEBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
982// AARCH64-FREEBSD:#define __UINTMAX_TYPE__ long unsigned int
983// AARCH64-FREEBSD:#define __UINTMAX_WIDTH__ 64
984// AARCH64-FREEBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
985// AARCH64-FREEBSD:#define __UINTPTR_TYPE__ long unsigned int
986// AARCH64-FREEBSD:#define __UINTPTR_WIDTH__ 64
987// AARCH64-FREEBSD:#define __UINT_FAST16_MAX__ 65535
988// AARCH64-FREEBSD:#define __UINT_FAST16_TYPE__ unsigned short
989// AARCH64-FREEBSD:#define __UINT_FAST32_MAX__ 4294967295U
990// AARCH64-FREEBSD:#define __UINT_FAST32_TYPE__ unsigned int
991// AARCH64-FREEBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
992// AARCH64-FREEBSD:#define __UINT_FAST64_TYPE__ long unsigned int
993// AARCH64-FREEBSD:#define __UINT_FAST8_MAX__ 255
994// AARCH64-FREEBSD:#define __UINT_FAST8_TYPE__ unsigned char
995// AARCH64-FREEBSD:#define __UINT_LEAST16_MAX__ 65535
996// AARCH64-FREEBSD:#define __UINT_LEAST16_TYPE__ unsigned short
997// AARCH64-FREEBSD:#define __UINT_LEAST32_MAX__ 4294967295U
998// AARCH64-FREEBSD:#define __UINT_LEAST32_TYPE__ unsigned int
999// AARCH64-FREEBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1000// AARCH64-FREEBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1001// AARCH64-FREEBSD:#define __UINT_LEAST8_MAX__ 255
1002// AARCH64-FREEBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1003// AARCH64-FREEBSD:#define __USER_LABEL_PREFIX__
1004// AARCH64-FREEBSD:#define __WCHAR_MAX__ 4294967295U
1005// AARCH64-FREEBSD:#define __WCHAR_TYPE__ unsigned int
1006// AARCH64-FREEBSD:#define __WCHAR_UNSIGNED__ 1
1007// AARCH64-FREEBSD:#define __WCHAR_WIDTH__ 32
1008// AARCH64-FREEBSD:#define __WINT_TYPE__ int
1009// AARCH64-FREEBSD:#define __WINT_WIDTH__ 32
1010// AARCH64-FREEBSD:#define __aarch64__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +00001011
James Y Knightc97efa42016-02-11 16:51:29 +00001012// 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 +00001013//
1014// AARCH64-DARWIN: #define _LP64 1
1015// AARCH64-NOT: #define __AARCH64EB__ 1
1016// AARCH64-DARWIN: #define __AARCH64EL__ 1
1017// AARCH64-NOT: #define __AARCH_BIG_ENDIAN 1
1018// AARCH64-DARWIN: #define __ARM_64BIT_STATE 1
1019// AARCH64-DARWIN: #define __ARM_ARCH 8
1020// AARCH64-DARWIN: #define __ARM_ARCH_ISA_A64 1
1021// AARCH64-NOT: #define __ARM_BIG_ENDIAN 1
1022// AARCH64-DARWIN: #define __BIGGEST_ALIGNMENT__ 8
1023// AARCH64-DARWIN: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1024// AARCH64-DARWIN: #define __CHAR16_TYPE__ unsigned short
1025// AARCH64-DARWIN: #define __CHAR32_TYPE__ unsigned int
1026// AARCH64-DARWIN: #define __CHAR_BIT__ 8
1027// AARCH64-DARWIN: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1028// AARCH64-DARWIN: #define __DBL_DIG__ 15
1029// AARCH64-DARWIN: #define __DBL_EPSILON__ 2.2204460492503131e-16
1030// AARCH64-DARWIN: #define __DBL_HAS_DENORM__ 1
1031// AARCH64-DARWIN: #define __DBL_HAS_INFINITY__ 1
1032// AARCH64-DARWIN: #define __DBL_HAS_QUIET_NAN__ 1
1033// AARCH64-DARWIN: #define __DBL_MANT_DIG__ 53
1034// AARCH64-DARWIN: #define __DBL_MAX_10_EXP__ 308
1035// AARCH64-DARWIN: #define __DBL_MAX_EXP__ 1024
1036// AARCH64-DARWIN: #define __DBL_MAX__ 1.7976931348623157e+308
1037// AARCH64-DARWIN: #define __DBL_MIN_10_EXP__ (-307)
1038// AARCH64-DARWIN: #define __DBL_MIN_EXP__ (-1021)
1039// AARCH64-DARWIN: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001040// AARCH64-DARWIN: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Tim Northovera6a19f12015-02-06 01:25:07 +00001041// AARCH64-DARWIN: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1042// AARCH64-DARWIN: #define __FLT_DIG__ 6
1043// AARCH64-DARWIN: #define __FLT_EPSILON__ 1.19209290e-7F
1044// AARCH64-DARWIN: #define __FLT_EVAL_METHOD__ 0
1045// AARCH64-DARWIN: #define __FLT_HAS_DENORM__ 1
1046// AARCH64-DARWIN: #define __FLT_HAS_INFINITY__ 1
1047// AARCH64-DARWIN: #define __FLT_HAS_QUIET_NAN__ 1
1048// AARCH64-DARWIN: #define __FLT_MANT_DIG__ 24
1049// AARCH64-DARWIN: #define __FLT_MAX_10_EXP__ 38
1050// AARCH64-DARWIN: #define __FLT_MAX_EXP__ 128
1051// AARCH64-DARWIN: #define __FLT_MAX__ 3.40282347e+38F
1052// AARCH64-DARWIN: #define __FLT_MIN_10_EXP__ (-37)
1053// AARCH64-DARWIN: #define __FLT_MIN_EXP__ (-125)
1054// AARCH64-DARWIN: #define __FLT_MIN__ 1.17549435e-38F
1055// AARCH64-DARWIN: #define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001056// AARCH64-DARWIN: #define __INT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001057// AARCH64-DARWIN: #define __INT16_FMTd__ "hd"
1058// AARCH64-DARWIN: #define __INT16_FMTi__ "hi"
1059// AARCH64-DARWIN: #define __INT16_MAX__ 32767
1060// AARCH64-DARWIN: #define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001061// AARCH64-DARWIN: #define __INT32_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001062// AARCH64-DARWIN: #define __INT32_FMTd__ "d"
1063// AARCH64-DARWIN: #define __INT32_FMTi__ "i"
1064// AARCH64-DARWIN: #define __INT32_MAX__ 2147483647
1065// AARCH64-DARWIN: #define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00001066// AARCH64-DARWIN: #define __INT64_C_SUFFIX__ LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001067// AARCH64-DARWIN: #define __INT64_FMTd__ "lld"
1068// AARCH64-DARWIN: #define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00001069// AARCH64-DARWIN: #define __INT64_MAX__ 9223372036854775807LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001070// AARCH64-DARWIN: #define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001071// AARCH64-DARWIN: #define __INT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001072// AARCH64-DARWIN: #define __INT8_FMTd__ "hhd"
1073// AARCH64-DARWIN: #define __INT8_FMTi__ "hhi"
1074// AARCH64-DARWIN: #define __INT8_MAX__ 127
1075// AARCH64-DARWIN: #define __INT8_TYPE__ signed char
1076// AARCH64-DARWIN: #define __INTMAX_C_SUFFIX__ L
1077// AARCH64-DARWIN: #define __INTMAX_FMTd__ "ld"
1078// AARCH64-DARWIN: #define __INTMAX_FMTi__ "li"
1079// AARCH64-DARWIN: #define __INTMAX_MAX__ 9223372036854775807L
1080// AARCH64-DARWIN: #define __INTMAX_TYPE__ long int
1081// AARCH64-DARWIN: #define __INTMAX_WIDTH__ 64
1082// AARCH64-DARWIN: #define __INTPTR_FMTd__ "ld"
1083// AARCH64-DARWIN: #define __INTPTR_FMTi__ "li"
1084// AARCH64-DARWIN: #define __INTPTR_MAX__ 9223372036854775807L
1085// AARCH64-DARWIN: #define __INTPTR_TYPE__ long int
1086// AARCH64-DARWIN: #define __INTPTR_WIDTH__ 64
1087// AARCH64-DARWIN: #define __INT_FAST16_FMTd__ "hd"
1088// AARCH64-DARWIN: #define __INT_FAST16_FMTi__ "hi"
1089// AARCH64-DARWIN: #define __INT_FAST16_MAX__ 32767
1090// AARCH64-DARWIN: #define __INT_FAST16_TYPE__ short
1091// AARCH64-DARWIN: #define __INT_FAST32_FMTd__ "d"
1092// AARCH64-DARWIN: #define __INT_FAST32_FMTi__ "i"
1093// AARCH64-DARWIN: #define __INT_FAST32_MAX__ 2147483647
1094// AARCH64-DARWIN: #define __INT_FAST32_TYPE__ int
1095// AARCH64-DARWIN: #define __INT_FAST64_FMTd__ "ld"
1096// AARCH64-DARWIN: #define __INT_FAST64_FMTi__ "li"
1097// AARCH64-DARWIN: #define __INT_FAST64_MAX__ 9223372036854775807L
1098// AARCH64-DARWIN: #define __INT_FAST64_TYPE__ long int
1099// AARCH64-DARWIN: #define __INT_FAST8_FMTd__ "hhd"
1100// AARCH64-DARWIN: #define __INT_FAST8_FMTi__ "hhi"
1101// AARCH64-DARWIN: #define __INT_FAST8_MAX__ 127
1102// AARCH64-DARWIN: #define __INT_FAST8_TYPE__ signed char
1103// AARCH64-DARWIN: #define __INT_LEAST16_FMTd__ "hd"
1104// AARCH64-DARWIN: #define __INT_LEAST16_FMTi__ "hi"
1105// AARCH64-DARWIN: #define __INT_LEAST16_MAX__ 32767
1106// AARCH64-DARWIN: #define __INT_LEAST16_TYPE__ short
1107// AARCH64-DARWIN: #define __INT_LEAST32_FMTd__ "d"
1108// AARCH64-DARWIN: #define __INT_LEAST32_FMTi__ "i"
1109// AARCH64-DARWIN: #define __INT_LEAST32_MAX__ 2147483647
1110// AARCH64-DARWIN: #define __INT_LEAST32_TYPE__ int
1111// AARCH64-DARWIN: #define __INT_LEAST64_FMTd__ "ld"
1112// AARCH64-DARWIN: #define __INT_LEAST64_FMTi__ "li"
1113// AARCH64-DARWIN: #define __INT_LEAST64_MAX__ 9223372036854775807L
1114// AARCH64-DARWIN: #define __INT_LEAST64_TYPE__ long int
1115// AARCH64-DARWIN: #define __INT_LEAST8_FMTd__ "hhd"
1116// AARCH64-DARWIN: #define __INT_LEAST8_FMTi__ "hhi"
1117// AARCH64-DARWIN: #define __INT_LEAST8_MAX__ 127
1118// AARCH64-DARWIN: #define __INT_LEAST8_TYPE__ signed char
1119// AARCH64-DARWIN: #define __INT_MAX__ 2147483647
1120// AARCH64-DARWIN: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1121// AARCH64-DARWIN: #define __LDBL_DIG__ 15
1122// AARCH64-DARWIN: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1123// AARCH64-DARWIN: #define __LDBL_HAS_DENORM__ 1
1124// AARCH64-DARWIN: #define __LDBL_HAS_INFINITY__ 1
1125// AARCH64-DARWIN: #define __LDBL_HAS_QUIET_NAN__ 1
1126// AARCH64-DARWIN: #define __LDBL_MANT_DIG__ 53
1127// AARCH64-DARWIN: #define __LDBL_MAX_10_EXP__ 308
1128// AARCH64-DARWIN: #define __LDBL_MAX_EXP__ 1024
1129// AARCH64-DARWIN: #define __LDBL_MAX__ 1.7976931348623157e+308L
1130// AARCH64-DARWIN: #define __LDBL_MIN_10_EXP__ (-307)
1131// AARCH64-DARWIN: #define __LDBL_MIN_EXP__ (-1021)
1132// AARCH64-DARWIN: #define __LDBL_MIN__ 2.2250738585072014e-308L
1133// AARCH64-DARWIN: #define __LONG_LONG_MAX__ 9223372036854775807LL
1134// AARCH64-DARWIN: #define __LONG_MAX__ 9223372036854775807L
1135// AARCH64-DARWIN: #define __LP64__ 1
1136// AARCH64-DARWIN: #define __POINTER_WIDTH__ 64
1137// AARCH64-DARWIN: #define __PTRDIFF_TYPE__ long int
1138// AARCH64-DARWIN: #define __PTRDIFF_WIDTH__ 64
1139// AARCH64-DARWIN: #define __SCHAR_MAX__ 127
1140// AARCH64-DARWIN: #define __SHRT_MAX__ 32767
1141// AARCH64-DARWIN: #define __SIG_ATOMIC_MAX__ 2147483647
1142// AARCH64-DARWIN: #define __SIG_ATOMIC_WIDTH__ 32
1143// AARCH64-DARWIN: #define __SIZEOF_DOUBLE__ 8
1144// AARCH64-DARWIN: #define __SIZEOF_FLOAT__ 4
1145// AARCH64-DARWIN: #define __SIZEOF_INT128__ 16
1146// AARCH64-DARWIN: #define __SIZEOF_INT__ 4
1147// AARCH64-DARWIN: #define __SIZEOF_LONG_DOUBLE__ 8
1148// AARCH64-DARWIN: #define __SIZEOF_LONG_LONG__ 8
1149// AARCH64-DARWIN: #define __SIZEOF_LONG__ 8
1150// AARCH64-DARWIN: #define __SIZEOF_POINTER__ 8
1151// AARCH64-DARWIN: #define __SIZEOF_PTRDIFF_T__ 8
1152// AARCH64-DARWIN: #define __SIZEOF_SHORT__ 2
1153// AARCH64-DARWIN: #define __SIZEOF_SIZE_T__ 8
1154// AARCH64-DARWIN: #define __SIZEOF_WCHAR_T__ 4
1155// AARCH64-DARWIN: #define __SIZEOF_WINT_T__ 4
1156// AARCH64-DARWIN: #define __SIZE_MAX__ 18446744073709551615UL
1157// AARCH64-DARWIN: #define __SIZE_TYPE__ long unsigned int
1158// AARCH64-DARWIN: #define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001159// AARCH64-DARWIN: #define __UINT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001160// AARCH64-DARWIN: #define __UINT16_MAX__ 65535
1161// AARCH64-DARWIN: #define __UINT16_TYPE__ unsigned short
1162// AARCH64-DARWIN: #define __UINT32_C_SUFFIX__ U
1163// AARCH64-DARWIN: #define __UINT32_MAX__ 4294967295U
1164// AARCH64-DARWIN: #define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001165// AARCH64-DARWIN: #define __UINT64_C_SUFFIX__ ULL
1166// AARCH64-DARWIN: #define __UINT64_MAX__ 18446744073709551615ULL
Tim Northovera6a19f12015-02-06 01:25:07 +00001167// AARCH64-DARWIN: #define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001168// AARCH64-DARWIN: #define __UINT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001169// AARCH64-DARWIN: #define __UINT8_MAX__ 255
1170// AARCH64-DARWIN: #define __UINT8_TYPE__ unsigned char
1171// AARCH64-DARWIN: #define __UINTMAX_C_SUFFIX__ UL
1172// AARCH64-DARWIN: #define __UINTMAX_MAX__ 18446744073709551615UL
1173// AARCH64-DARWIN: #define __UINTMAX_TYPE__ long unsigned int
1174// AARCH64-DARWIN: #define __UINTMAX_WIDTH__ 64
1175// AARCH64-DARWIN: #define __UINTPTR_MAX__ 18446744073709551615UL
1176// AARCH64-DARWIN: #define __UINTPTR_TYPE__ long unsigned int
1177// AARCH64-DARWIN: #define __UINTPTR_WIDTH__ 64
1178// AARCH64-DARWIN: #define __UINT_FAST16_MAX__ 65535
1179// AARCH64-DARWIN: #define __UINT_FAST16_TYPE__ unsigned short
1180// AARCH64-DARWIN: #define __UINT_FAST32_MAX__ 4294967295U
1181// AARCH64-DARWIN: #define __UINT_FAST32_TYPE__ unsigned int
1182// AARCH64-DARWIN: #define __UINT_FAST64_MAX__ 18446744073709551615UL
1183// AARCH64-DARWIN: #define __UINT_FAST64_TYPE__ long unsigned int
1184// AARCH64-DARWIN: #define __UINT_FAST8_MAX__ 255
1185// AARCH64-DARWIN: #define __UINT_FAST8_TYPE__ unsigned char
1186// AARCH64-DARWIN: #define __UINT_LEAST16_MAX__ 65535
1187// AARCH64-DARWIN: #define __UINT_LEAST16_TYPE__ unsigned short
1188// AARCH64-DARWIN: #define __UINT_LEAST32_MAX__ 4294967295U
1189// AARCH64-DARWIN: #define __UINT_LEAST32_TYPE__ unsigned int
1190// AARCH64-DARWIN: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
1191// AARCH64-DARWIN: #define __UINT_LEAST64_TYPE__ long unsigned int
1192// AARCH64-DARWIN: #define __UINT_LEAST8_MAX__ 255
1193// AARCH64-DARWIN: #define __UINT_LEAST8_TYPE__ unsigned char
1194// AARCH64-DARWIN: #define __USER_LABEL_PREFIX__ _
1195// AARCH64-DARWIN: #define __WCHAR_MAX__ 2147483647
1196// AARCH64-DARWIN: #define __WCHAR_TYPE__ int
1197// AARCH64-DARWIN-NOT: #define __WCHAR_UNSIGNED__
1198// AARCH64-DARWIN: #define __WCHAR_WIDTH__ 32
1199// AARCH64-DARWIN: #define __WINT_TYPE__ int
1200// AARCH64-DARWIN: #define __WINT_WIDTH__ 32
1201// AARCH64-DARWIN: #define __aarch64__ 1
1202
James Y Knightc97efa42016-02-11 16:51:29 +00001203// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM %s
Chris Lattnere963d092009-10-29 04:55:36 +00001204//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001205// ARM-NOT:#define _LP64
Chris Lattnere963d092009-10-29 04:55:36 +00001206// ARM:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001207// ARM-NOT:#define __ARMEB__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00001208// ARM:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001209// ARM:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001210// ARM-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001211// ARM:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001212// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00001213// ARM:#define __CHAR16_TYPE__ unsigned short
1214// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00001215// ARM:#define __CHAR_BIT__ 8
1216// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1217// ARM:#define __DBL_DIG__ 15
1218// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
1219// ARM:#define __DBL_HAS_DENORM__ 1
1220// ARM:#define __DBL_HAS_INFINITY__ 1
1221// ARM:#define __DBL_HAS_QUIET_NAN__ 1
1222// ARM:#define __DBL_MANT_DIG__ 53
1223// ARM:#define __DBL_MAX_10_EXP__ 308
1224// ARM:#define __DBL_MAX_EXP__ 1024
1225// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
1226// ARM:#define __DBL_MIN_10_EXP__ (-307)
1227// ARM:#define __DBL_MIN_EXP__ (-1021)
1228// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001229// ARM:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00001230// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1231// ARM:#define __FLT_DIG__ 6
1232// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
1233// ARM:#define __FLT_EVAL_METHOD__ 0
1234// ARM:#define __FLT_HAS_DENORM__ 1
1235// ARM:#define __FLT_HAS_INFINITY__ 1
1236// ARM:#define __FLT_HAS_QUIET_NAN__ 1
1237// ARM:#define __FLT_MANT_DIG__ 24
1238// ARM:#define __FLT_MAX_10_EXP__ 38
1239// ARM:#define __FLT_MAX_EXP__ 128
1240// ARM:#define __FLT_MAX__ 3.40282347e+38F
1241// ARM:#define __FLT_MIN_10_EXP__ (-37)
1242// ARM:#define __FLT_MIN_EXP__ (-125)
1243// ARM:#define __FLT_MIN__ 1.17549435e-38F
1244// ARM:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001245// ARM:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001246// ARM:#define __INT16_FMTd__ "hd"
1247// ARM:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001248// ARM:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00001249// ARM:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001250// ARM:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001251// ARM:#define __INT32_FMTd__ "d"
1252// ARM:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001253// ARM:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00001254// ARM:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00001255// ARM:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001256// ARM:#define __INT64_FMTd__ "lld"
1257// ARM:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001258// ARM:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00001259// ARM:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001260// ARM:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001261// ARM:#define __INT8_FMTd__ "hhd"
1262// ARM:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001263// ARM:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001264// ARM:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001265// ARM:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001266// ARM:#define __INTMAX_FMTd__ "lld"
1267// ARM:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00001268// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00001269// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00001270// ARM:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001271// ARM:#define __INTPTR_FMTd__ "ld"
1272// ARM:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001273// ARM:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00001274// ARM:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00001275// ARM:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001276// ARM:#define __INT_FAST16_FMTd__ "hd"
1277// ARM:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001278// ARM:#define __INT_FAST16_MAX__ 32767
1279// ARM:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001280// ARM:#define __INT_FAST32_FMTd__ "d"
1281// ARM:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001282// ARM:#define __INT_FAST32_MAX__ 2147483647
1283// ARM:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001284// ARM:#define __INT_FAST64_FMTd__ "lld"
1285// ARM:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001286// ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
1287// ARM:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001288// ARM:#define __INT_FAST8_FMTd__ "hhd"
1289// ARM:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001290// ARM:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001291// ARM:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001292// ARM:#define __INT_LEAST16_FMTd__ "hd"
1293// ARM:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001294// ARM:#define __INT_LEAST16_MAX__ 32767
1295// ARM:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001296// ARM:#define __INT_LEAST32_FMTd__ "d"
1297// ARM:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001298// ARM:#define __INT_LEAST32_MAX__ 2147483647
1299// ARM:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001300// ARM:#define __INT_LEAST64_FMTd__ "lld"
1301// ARM:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001302// ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1303// ARM:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001304// ARM:#define __INT_LEAST8_FMTd__ "hhd"
1305// ARM:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001306// ARM:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001307// ARM:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00001308// ARM:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001309// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00001310// ARM:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001311// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00001312// ARM:#define __LDBL_HAS_DENORM__ 1
1313// ARM:#define __LDBL_HAS_INFINITY__ 1
1314// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
1315// ARM:#define __LDBL_MANT_DIG__ 53
1316// ARM:#define __LDBL_MAX_10_EXP__ 308
1317// ARM:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001318// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00001319// ARM:#define __LDBL_MIN_10_EXP__ (-307)
1320// ARM:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001321// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00001322// ARM:#define __LITTLE_ENDIAN__ 1
1323// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
1324// ARM:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001325// ARM-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00001326// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00001327// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00001328// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00001329// ARM:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00001330// ARM:#define __SCHAR_MAX__ 127
1331// ARM:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001332// ARM:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00001333// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00001334// ARM:#define __SIZEOF_DOUBLE__ 8
1335// ARM:#define __SIZEOF_FLOAT__ 4
1336// ARM:#define __SIZEOF_INT__ 4
1337// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
1338// ARM:#define __SIZEOF_LONG_LONG__ 8
1339// ARM:#define __SIZEOF_LONG__ 4
1340// ARM:#define __SIZEOF_POINTER__ 4
1341// ARM:#define __SIZEOF_PTRDIFF_T__ 4
1342// ARM:#define __SIZEOF_SHORT__ 2
1343// ARM:#define __SIZEOF_SIZE_T__ 4
1344// ARM:#define __SIZEOF_WCHAR_T__ 4
1345// ARM:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001346// ARM:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00001347// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00001348// ARM:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00001349// ARM:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001350// ARM:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001351// ARM:#define __UINT16_TYPE__ unsigned short
1352// ARM:#define __UINT32_C_SUFFIX__ U
1353// ARM:#define __UINT32_MAX__ 4294967295U
1354// ARM:#define __UINT32_TYPE__ unsigned int
1355// ARM:#define __UINT64_C_SUFFIX__ ULL
1356// ARM:#define __UINT64_MAX__ 18446744073709551615ULL
1357// ARM:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001358// ARM:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001359// ARM:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001360// ARM:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001361// ARM:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001362// ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00001363// ARM:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001364// ARM:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001365// ARM:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001366// ARM:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001367// ARM:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001368// ARM:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001369// ARM:#define __UINT_FAST16_TYPE__ unsigned short
1370// ARM:#define __UINT_FAST32_MAX__ 4294967295U
1371// ARM:#define __UINT_FAST32_TYPE__ unsigned int
1372// ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1373// ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001374// ARM:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001375// ARM:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001376// ARM:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001377// ARM:#define __UINT_LEAST16_TYPE__ unsigned short
1378// ARM:#define __UINT_LEAST32_MAX__ 4294967295U
1379// ARM:#define __UINT_LEAST32_TYPE__ unsigned int
1380// ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1381// ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001382// ARM:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001383// ARM:#define __UINT_LEAST8_TYPE__ unsigned char
Chris Lattnere963d092009-10-29 04:55:36 +00001384// ARM:#define __USER_LABEL_PREFIX__ _
James Molloyc445be42011-11-23 13:35:08 +00001385// ARM:#define __WCHAR_MAX__ 4294967295U
1386// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck0138b9e2009-11-19 15:47:58 +00001387// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001388// ARM:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00001389// ARM:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001390// ARM:#define __arm 1
1391// ARM:#define __arm__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001392
James Y Knightc97efa42016-02-11 16:51:29 +00001393// 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 +00001394//
1395// ARM-BE-NOT:#define _LP64
1396// ARM-BE:#define __APCS_32__ 1
1397// ARM-BE:#define __ARMEB__ 1
1398// ARM-BE-NOT:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001399// ARM-BE:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001400// ARM-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001401// ARM-BE:#define __BIGGEST_ALIGNMENT__ 8
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001402// ARM-BE:#define __BIG_ENDIAN__ 1
1403// ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1404// ARM-BE:#define __CHAR16_TYPE__ unsigned short
1405// ARM-BE:#define __CHAR32_TYPE__ unsigned int
1406// ARM-BE:#define __CHAR_BIT__ 8
1407// ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1408// ARM-BE:#define __DBL_DIG__ 15
1409// ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1410// ARM-BE:#define __DBL_HAS_DENORM__ 1
1411// ARM-BE:#define __DBL_HAS_INFINITY__ 1
1412// ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
1413// ARM-BE:#define __DBL_MANT_DIG__ 53
1414// ARM-BE:#define __DBL_MAX_10_EXP__ 308
1415// ARM-BE:#define __DBL_MAX_EXP__ 1024
1416// ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
1417// ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
1418// ARM-BE:#define __DBL_MIN_EXP__ (-1021)
1419// ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001420// ARM-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001421// ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1422// ARM-BE:#define __FLT_DIG__ 6
1423// ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
1424// ARM-BE:#define __FLT_EVAL_METHOD__ 0
1425// ARM-BE:#define __FLT_HAS_DENORM__ 1
1426// ARM-BE:#define __FLT_HAS_INFINITY__ 1
1427// ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
1428// ARM-BE:#define __FLT_MANT_DIG__ 24
1429// ARM-BE:#define __FLT_MAX_10_EXP__ 38
1430// ARM-BE:#define __FLT_MAX_EXP__ 128
1431// ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
1432// ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
1433// ARM-BE:#define __FLT_MIN_EXP__ (-125)
1434// ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
1435// ARM-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001436// ARM-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001437// ARM-BE:#define __INT16_FMTd__ "hd"
1438// ARM-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001439// ARM-BE:#define __INT16_MAX__ 32767
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001440// ARM-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001441// ARM-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001442// ARM-BE:#define __INT32_FMTd__ "d"
1443// ARM-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001444// ARM-BE:#define __INT32_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001445// ARM-BE:#define __INT32_TYPE__ int
1446// ARM-BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001447// ARM-BE:#define __INT64_FMTd__ "lld"
1448// ARM-BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001449// ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001450// ARM-BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001451// ARM-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001452// ARM-BE:#define __INT8_FMTd__ "hhd"
1453// ARM-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001454// ARM-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001455// ARM-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001456// ARM-BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001457// ARM-BE:#define __INTMAX_FMTd__ "lld"
1458// ARM-BE:#define __INTMAX_FMTi__ "lli"
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001459// ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
1460// ARM-BE:#define __INTMAX_TYPE__ long long int
1461// ARM-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001462// ARM-BE:#define __INTPTR_FMTd__ "ld"
1463// ARM-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001464// ARM-BE:#define __INTPTR_MAX__ 2147483647L
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001465// ARM-BE:#define __INTPTR_TYPE__ long int
1466// ARM-BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001467// ARM-BE:#define __INT_FAST16_FMTd__ "hd"
1468// ARM-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001469// ARM-BE:#define __INT_FAST16_MAX__ 32767
1470// ARM-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001471// ARM-BE:#define __INT_FAST32_FMTd__ "d"
1472// ARM-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001473// ARM-BE:#define __INT_FAST32_MAX__ 2147483647
1474// ARM-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001475// ARM-BE:#define __INT_FAST64_FMTd__ "lld"
1476// ARM-BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001477// ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
1478// ARM-BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001479// ARM-BE:#define __INT_FAST8_FMTd__ "hhd"
1480// ARM-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001481// ARM-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001482// ARM-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001483// ARM-BE:#define __INT_LEAST16_FMTd__ "hd"
1484// ARM-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001485// ARM-BE:#define __INT_LEAST16_MAX__ 32767
1486// ARM-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001487// ARM-BE:#define __INT_LEAST32_FMTd__ "d"
1488// ARM-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001489// ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
1490// ARM-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001491// ARM-BE:#define __INT_LEAST64_FMTd__ "lld"
1492// ARM-BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001493// ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1494// ARM-BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001495// ARM-BE:#define __INT_LEAST8_FMTd__ "hhd"
1496// ARM-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001497// ARM-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001498// ARM-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001499// ARM-BE:#define __INT_MAX__ 2147483647
1500// ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1501// ARM-BE:#define __LDBL_DIG__ 15
1502// ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
1503// ARM-BE:#define __LDBL_HAS_DENORM__ 1
1504// ARM-BE:#define __LDBL_HAS_INFINITY__ 1
1505// ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
1506// ARM-BE:#define __LDBL_MANT_DIG__ 53
1507// ARM-BE:#define __LDBL_MAX_10_EXP__ 308
1508// ARM-BE:#define __LDBL_MAX_EXP__ 1024
1509// ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
1510// ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
1511// ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
1512// ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
1513// ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1514// ARM-BE:#define __LONG_MAX__ 2147483647L
1515// ARM-BE-NOT:#define __LP64__
1516// ARM-BE:#define __POINTER_WIDTH__ 32
1517// ARM-BE:#define __PTRDIFF_TYPE__ int
1518// ARM-BE:#define __PTRDIFF_WIDTH__ 32
1519// ARM-BE:#define __REGISTER_PREFIX__
1520// ARM-BE:#define __SCHAR_MAX__ 127
1521// ARM-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001522// ARM-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001523// ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
1524// ARM-BE:#define __SIZEOF_DOUBLE__ 8
1525// ARM-BE:#define __SIZEOF_FLOAT__ 4
1526// ARM-BE:#define __SIZEOF_INT__ 4
1527// ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
1528// ARM-BE:#define __SIZEOF_LONG_LONG__ 8
1529// ARM-BE:#define __SIZEOF_LONG__ 4
1530// ARM-BE:#define __SIZEOF_POINTER__ 4
1531// ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
1532// ARM-BE:#define __SIZEOF_SHORT__ 2
1533// ARM-BE:#define __SIZEOF_SIZE_T__ 4
1534// ARM-BE:#define __SIZEOF_WCHAR_T__ 4
1535// ARM-BE:#define __SIZEOF_WINT_T__ 4
1536// ARM-BE:#define __SIZE_MAX__ 4294967295U
1537// ARM-BE:#define __SIZE_TYPE__ unsigned int
1538// ARM-BE:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00001539// ARM-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001540// ARM-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001541// ARM-BE:#define __UINT16_TYPE__ unsigned short
1542// ARM-BE:#define __UINT32_C_SUFFIX__ U
1543// ARM-BE:#define __UINT32_MAX__ 4294967295U
1544// ARM-BE:#define __UINT32_TYPE__ unsigned int
1545// ARM-BE:#define __UINT64_C_SUFFIX__ ULL
1546// ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
1547// ARM-BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001548// ARM-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001549// ARM-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001550// ARM-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001551// ARM-BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001552// ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001553// ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001554// ARM-BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001555// ARM-BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001556// ARM-BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001557// ARM-BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001558// ARM-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001559// ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
1560// ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
1561// ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
1562// ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1563// ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001564// ARM-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001565// ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001566// ARM-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001567// ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
1568// ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
1569// ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
1570// ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1571// ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001572// ARM-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001573// ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001574// ARM-BE:#define __USER_LABEL_PREFIX__ _
1575// ARM-BE:#define __WCHAR_MAX__ 4294967295U
1576// ARM-BE:#define __WCHAR_TYPE__ unsigned int
1577// ARM-BE:#define __WCHAR_WIDTH__ 32
1578// ARM-BE:#define __WINT_TYPE__ int
1579// ARM-BE:#define __WINT_WIDTH__ 32
1580// ARM-BE:#define __arm 1
1581// ARM-BE:#define __arm__ 1
1582
James Y Knightc97efa42016-02-11 16:51:29 +00001583// 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 +00001584//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001585// ARMEABISOFTFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001586// ARMEABISOFTFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001587// ARMEABISOFTFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001588// ARMEABISOFTFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001589// ARMEABISOFTFP:#define __ARM_ARCH 4
1590// ARMEABISOFTFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001591// ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001592// ARMEABISOFTFP:#define __ARM_EABI__ 1
1593// ARMEABISOFTFP:#define __ARM_PCS 1
1594// ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001595// ARMEABISOFTFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001596// ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1597// ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
1598// ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
1599// ARMEABISOFTFP:#define __CHAR_BIT__ 8
1600// ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1601// ARMEABISOFTFP:#define __DBL_DIG__ 15
1602// ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
1603// ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
1604// ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
1605// ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
1606// ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
1607// ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
1608// ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
1609// ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
1610// ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
1611// ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
1612// ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001613// ARMEABISOFTFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001614// ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1615// ARMEABISOFTFP:#define __FLT_DIG__ 6
1616// ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
1617// ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
1618// ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
1619// ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
1620// ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
1621// ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
1622// ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
1623// ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
1624// ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
1625// ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
1626// ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
1627// ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
1628// ARMEABISOFTFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001629// ARMEABISOFTFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001630// ARMEABISOFTFP:#define __INT16_FMTd__ "hd"
1631// ARMEABISOFTFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001632// ARMEABISOFTFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001633// ARMEABISOFTFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001634// ARMEABISOFTFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001635// ARMEABISOFTFP:#define __INT32_FMTd__ "d"
1636// ARMEABISOFTFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001637// ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001638// ARMEABISOFTFP:#define __INT32_TYPE__ int
1639// ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001640// ARMEABISOFTFP:#define __INT64_FMTd__ "lld"
1641// ARMEABISOFTFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001642// ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001643// ARMEABISOFTFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001644// ARMEABISOFTFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001645// ARMEABISOFTFP:#define __INT8_FMTd__ "hhd"
1646// ARMEABISOFTFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001647// ARMEABISOFTFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001648// ARMEABISOFTFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001649// ARMEABISOFTFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001650// ARMEABISOFTFP:#define __INTMAX_FMTd__ "lld"
1651// ARMEABISOFTFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001652// ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
1653// ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
1654// ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001655// ARMEABISOFTFP:#define __INTPTR_FMTd__ "ld"
1656// ARMEABISOFTFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001657// ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001658// ARMEABISOFTFP:#define __INTPTR_TYPE__ long int
1659// ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001660// ARMEABISOFTFP:#define __INT_FAST16_FMTd__ "hd"
1661// ARMEABISOFTFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001662// ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
1663// ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001664// ARMEABISOFTFP:#define __INT_FAST32_FMTd__ "d"
1665// ARMEABISOFTFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001666// ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
1667// ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001668// ARMEABISOFTFP:#define __INT_FAST64_FMTd__ "lld"
1669// ARMEABISOFTFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001670// ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
1671// ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001672// ARMEABISOFTFP:#define __INT_FAST8_FMTd__ "hhd"
1673// ARMEABISOFTFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001674// ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001675// ARMEABISOFTFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001676// ARMEABISOFTFP:#define __INT_LEAST16_FMTd__ "hd"
1677// ARMEABISOFTFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001678// ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
1679// ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001680// ARMEABISOFTFP:#define __INT_LEAST32_FMTd__ "d"
1681// ARMEABISOFTFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001682// ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
1683// ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001684// ARMEABISOFTFP:#define __INT_LEAST64_FMTd__ "lld"
1685// ARMEABISOFTFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001686// ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1687// ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001688// ARMEABISOFTFP:#define __INT_LEAST8_FMTd__ "hhd"
1689// ARMEABISOFTFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001690// ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001691// ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001692// ARMEABISOFTFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001693// ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001694// ARMEABISOFTFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001695// ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001696// ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
1697// ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
1698// ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
1699// ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
1700// ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
1701// ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001702// ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001703// ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
1704// ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001705// ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001706// ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
1707// ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
1708// ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
1709// ARMEABISOFTFP-NOT:#define __LP64__
1710// ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
1711// ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
1712// ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
1713// ARMEABISOFTFP:#define __REGISTER_PREFIX__
1714// ARMEABISOFTFP:#define __SCHAR_MAX__ 127
1715// ARMEABISOFTFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001716// ARMEABISOFTFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001717// ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
1718// ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
1719// ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
1720// ARMEABISOFTFP:#define __SIZEOF_INT__ 4
1721// ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
1722// ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
1723// ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
1724// ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
1725// ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
1726// ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
1727// ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
1728// ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
1729// ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001730// ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001731// ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
1732// ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
1733// ARMEABISOFTFP:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00001734// ARMEABISOFTFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001735// ARMEABISOFTFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001736// ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
1737// ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
1738// ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
1739// ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
1740// ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
1741// ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
1742// ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001743// ARMEABISOFTFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001744// ARMEABISOFTFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001745// ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001746// ARMEABISOFTFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001747// ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001748// ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001749// ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001750// ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001751// ARMEABISOFTFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001752// ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001753// ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001754// ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
1755// ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
1756// ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
1757// ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1758// ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001759// ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001760// ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001761// ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001762// ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
1763// ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
1764// ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
1765// ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1766// ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001767// ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001768// ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001769// ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
1770// ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
1771// ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
1772// ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
1773// ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
1774// ARMEABISOFTFP:#define __WINT_WIDTH__ 32
1775// ARMEABISOFTFP:#define __arm 1
1776// ARMEABISOFTFP:#define __arm__ 1
1777
James Y Knightc97efa42016-02-11 16:51:29 +00001778// 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 +00001779//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001780// ARMEABIHARDFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001781// ARMEABIHARDFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001782// ARMEABIHARDFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001783// ARMEABIHARDFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001784// ARMEABIHARDFP:#define __ARM_ARCH 4
1785// ARMEABIHARDFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001786// ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001787// ARMEABIHARDFP:#define __ARM_EABI__ 1
1788// ARMEABIHARDFP:#define __ARM_PCS 1
1789// ARMEABIHARDFP:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001790// ARMEABIHARDFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001791// ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1792// ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
1793// ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
1794// ARMEABIHARDFP:#define __CHAR_BIT__ 8
1795// ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1796// ARMEABIHARDFP:#define __DBL_DIG__ 15
1797// ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
1798// ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
1799// ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
1800// ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
1801// ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
1802// ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
1803// ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
1804// ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
1805// ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
1806// ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
1807// ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001808// ARMEABIHARDFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001809// ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1810// ARMEABIHARDFP:#define __FLT_DIG__ 6
1811// ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
1812// ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
1813// ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
1814// ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
1815// ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
1816// ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
1817// ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
1818// ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
1819// ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
1820// ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
1821// ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
1822// ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
1823// ARMEABIHARDFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001824// ARMEABIHARDFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001825// ARMEABIHARDFP:#define __INT16_FMTd__ "hd"
1826// ARMEABIHARDFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001827// ARMEABIHARDFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001828// ARMEABIHARDFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001829// ARMEABIHARDFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001830// ARMEABIHARDFP:#define __INT32_FMTd__ "d"
1831// ARMEABIHARDFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001832// ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001833// ARMEABIHARDFP:#define __INT32_TYPE__ int
1834// ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001835// ARMEABIHARDFP:#define __INT64_FMTd__ "lld"
1836// ARMEABIHARDFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001837// ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001838// ARMEABIHARDFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001839// ARMEABIHARDFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001840// ARMEABIHARDFP:#define __INT8_FMTd__ "hhd"
1841// ARMEABIHARDFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001842// ARMEABIHARDFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001843// ARMEABIHARDFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001844// ARMEABIHARDFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001845// ARMEABIHARDFP:#define __INTMAX_FMTd__ "lld"
1846// ARMEABIHARDFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001847// ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
1848// ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
1849// ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001850// ARMEABIHARDFP:#define __INTPTR_FMTd__ "ld"
1851// ARMEABIHARDFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001852// ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001853// ARMEABIHARDFP:#define __INTPTR_TYPE__ long int
1854// ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001855// ARMEABIHARDFP:#define __INT_FAST16_FMTd__ "hd"
1856// ARMEABIHARDFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001857// ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
1858// ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001859// ARMEABIHARDFP:#define __INT_FAST32_FMTd__ "d"
1860// ARMEABIHARDFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001861// ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
1862// ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001863// ARMEABIHARDFP:#define __INT_FAST64_FMTd__ "lld"
1864// ARMEABIHARDFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001865// ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
1866// ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001867// ARMEABIHARDFP:#define __INT_FAST8_FMTd__ "hhd"
1868// ARMEABIHARDFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001869// ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001870// ARMEABIHARDFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001871// ARMEABIHARDFP:#define __INT_LEAST16_FMTd__ "hd"
1872// ARMEABIHARDFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001873// ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
1874// ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001875// ARMEABIHARDFP:#define __INT_LEAST32_FMTd__ "d"
1876// ARMEABIHARDFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001877// ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
1878// ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001879// ARMEABIHARDFP:#define __INT_LEAST64_FMTd__ "lld"
1880// ARMEABIHARDFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001881// ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1882// ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001883// ARMEABIHARDFP:#define __INT_LEAST8_FMTd__ "hhd"
1884// ARMEABIHARDFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001885// ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001886// ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001887// ARMEABIHARDFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001888// ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001889// ARMEABIHARDFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001890// ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001891// ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
1892// ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
1893// ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
1894// ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
1895// ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
1896// ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001897// ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001898// ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
1899// ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001900// ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001901// ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
1902// ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
1903// ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
1904// ARMEABIHARDFP-NOT:#define __LP64__
1905// ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
1906// ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
1907// ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
1908// ARMEABIHARDFP:#define __REGISTER_PREFIX__
1909// ARMEABIHARDFP:#define __SCHAR_MAX__ 127
1910// ARMEABIHARDFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001911// ARMEABIHARDFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001912// ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
1913// ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
1914// ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
1915// ARMEABIHARDFP:#define __SIZEOF_INT__ 4
1916// ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
1917// ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
1918// ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
1919// ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
1920// ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
1921// ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
1922// ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
1923// ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
1924// ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001925// ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001926// ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
1927// ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
1928// ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00001929// ARMEABIHARDFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001930// ARMEABIHARDFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001931// ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
1932// ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
1933// ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
1934// ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
1935// ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
1936// ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
1937// ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001938// ARMEABIHARDFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001939// ARMEABIHARDFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001940// ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001941// ARMEABIHARDFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001942// ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001943// ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001944// ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001945// ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001946// ARMEABIHARDFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001947// ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001948// ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001949// ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
1950// ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
1951// ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
1952// ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1953// ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001954// ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001955// ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001956// ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001957// ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
1958// ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
1959// ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
1960// ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1961// ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001962// ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001963// ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001964// ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
1965// ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
1966// ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
1967// ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
1968// ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
1969// ARMEABIHARDFP:#define __WINT_WIDTH__ 32
1970// ARMEABIHARDFP:#define __arm 1
1971// ARMEABIHARDFP:#define __arm__ 1
1972
James Y Knightc97efa42016-02-11 16:51:29 +00001973// 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 +00001974//
1975// ARM-NETBSD-NOT:#define _LP64
1976// ARM-NETBSD:#define __APCS_32__ 1
1977// ARM-NETBSD-NOT:#define __ARMEB__ 1
1978// ARM-NETBSD:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001979// ARM-NETBSD:#define __ARM_ARCH_4T__ 1
Joerg Sonnenbergercc1edb52014-05-13 18:58:36 +00001980// ARM-NETBSD:#define __ARM_DWARF_EH__ 1
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00001981// ARM-NETBSD:#define __ARM_EABI__ 1
1982// ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001983// ARM-NETBSD:#define __BIGGEST_ALIGNMENT__ 8
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00001984// ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1985// ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
1986// ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
1987// ARM-NETBSD:#define __CHAR_BIT__ 8
1988// ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1989// ARM-NETBSD:#define __DBL_DIG__ 15
1990// ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
1991// ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
1992// ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
1993// ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
1994// ARM-NETBSD:#define __DBL_MANT_DIG__ 53
1995// ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
1996// ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
1997// ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
1998// ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
1999// ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2000// ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002001// ARM-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002002// ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2003// ARM-NETBSD:#define __FLT_DIG__ 6
2004// ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2005// ARM-NETBSD:#define __FLT_EVAL_METHOD__ 0
2006// ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
2007// ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
2008// ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2009// ARM-NETBSD:#define __FLT_MANT_DIG__ 24
2010// ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
2011// ARM-NETBSD:#define __FLT_MAX_EXP__ 128
2012// ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2013// ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2014// ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
2015// ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2016// ARM-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002017// ARM-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002018// ARM-NETBSD:#define __INT16_FMTd__ "hd"
2019// ARM-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002020// ARM-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002021// ARM-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002022// ARM-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002023// ARM-NETBSD:#define __INT32_FMTd__ "d"
2024// ARM-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002025// ARM-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002026// ARM-NETBSD:#define __INT32_TYPE__ int
2027// ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002028// ARM-NETBSD:#define __INT64_FMTd__ "lld"
2029// ARM-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002030// ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002031// ARM-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002032// ARM-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002033// ARM-NETBSD:#define __INT8_FMTd__ "hhd"
2034// ARM-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002035// ARM-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002036// ARM-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002037// ARM-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002038// ARM-NETBSD:#define __INTMAX_FMTd__ "lld"
2039// ARM-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002040// ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2041// ARM-NETBSD:#define __INTMAX_TYPE__ long long int
2042// ARM-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002043// ARM-NETBSD:#define __INTPTR_FMTd__ "ld"
2044// ARM-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002045// ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002046// ARM-NETBSD:#define __INTPTR_TYPE__ long int
2047// ARM-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002048// ARM-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2049// ARM-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002050// ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
2051// ARM-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002052// ARM-NETBSD:#define __INT_FAST32_FMTd__ "d"
2053// ARM-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002054// ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2055// ARM-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002056// ARM-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2057// ARM-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002058// ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2059// ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002060// ARM-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2061// ARM-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002062// ARM-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002063// ARM-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002064// ARM-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2065// ARM-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002066// ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
2067// ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002068// ARM-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2069// ARM-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002070// ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2071// ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002072// ARM-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2073// ARM-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002074// ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2075// ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002076// ARM-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2077// ARM-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002078// ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002079// ARM-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002080// ARM-NETBSD:#define __INT_MAX__ 2147483647
2081// ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2082// ARM-NETBSD:#define __LDBL_DIG__ 15
2083// ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2084// ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
2085// ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2086// ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2087// ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
2088// ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
2089// ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
2090// ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
2091// ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
2092// ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
2093// ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
2094// ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
2095// ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2096// ARM-NETBSD:#define __LONG_MAX__ 2147483647L
2097// ARM-NETBSD-NOT:#define __LP64__
2098// ARM-NETBSD:#define __POINTER_WIDTH__ 32
2099// ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
2100// ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
2101// ARM-NETBSD:#define __REGISTER_PREFIX__
2102// ARM-NETBSD:#define __SCHAR_MAX__ 127
2103// ARM-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002104// ARM-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002105// ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2106// ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
2107// ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
2108// ARM-NETBSD:#define __SIZEOF_INT__ 4
2109// ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
2110// ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2111// ARM-NETBSD:#define __SIZEOF_LONG__ 4
2112// ARM-NETBSD:#define __SIZEOF_POINTER__ 4
2113// ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2114// ARM-NETBSD:#define __SIZEOF_SHORT__ 2
2115// ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
2116// ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2117// ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002118// ARM-NETBSD:#define __SIZE_MAX__ 4294967295UL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002119// ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
2120// ARM-NETBSD:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002121// ARM-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002122// ARM-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002123// ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
2124// ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
2125// ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
2126// ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
2127// ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2128// ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2129// ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002130// ARM-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002131// ARM-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002132// ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00002133// ARM-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002134// ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002135// ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002136// ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002137// ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002138// ARM-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002139// ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002140// ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002141// ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2142// ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2143// ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2144// ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2145// ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002146// ARM-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002147// ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002148// ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002149// ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2150// ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2151// ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2152// ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2153// ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002154// ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002155// ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002156// ARM-NETBSD:#define __USER_LABEL_PREFIX__
2157// ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
2158// ARM-NETBSD:#define __WCHAR_TYPE__ int
2159// ARM-NETBSD:#define __WCHAR_WIDTH__ 32
2160// ARM-NETBSD:#define __WINT_TYPE__ int
2161// ARM-NETBSD:#define __WINT_WIDTH__ 32
2162// ARM-NETBSD:#define __arm 1
2163// ARM-NETBSD:#define __arm__ 1
2164
James Y Knightc97efa42016-02-11 16:51:29 +00002165// RUN: %clang -target arm-apple-darwin-eabi -arch armv7s -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-DARWIN-NO-EABI %s
2166// RUN: %clang -target arm-apple-darwin-eabi -arch armv6m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-DARWIN-EABI %s
2167// RUN: %clang -target arm-apple-darwin-eabi -arch armv7m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-DARWIN-EABI %s
2168// RUN: %clang -target arm-apple-darwin-eabi -arch armv7em -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-DARWIN-EABI %s
2169// RUN: %clang -target thumbv7-apple-darwin-eabi -arch armv7 -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-DARWIN-NO-EABI %s
Tim Northovere77f78c2013-11-11 19:11:22 +00002170// ARM-DARWIN-NO-EABI-NOT: #define __ARM_EABI__ 1
Oliver Stannard28ee5d22014-08-28 12:15:49 +00002171// ARM-DARWIN-EABI: #define __ARM_EABI__ 1
Tim Northovere77f78c2013-11-11 19:11:22 +00002172
James Y Knightc97efa42016-02-11 16:51:29 +00002173// 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 +00002174// ARM-BITRIG:#define __ARM_DWARF_EH__ 1
2175// ARM-BITRIG:#define __SIZEOF_SIZE_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002176// ARM-BITRIG:#define __SIZE_MAX__ 4294967295UL
Renato Golin9ba39232015-02-27 16:35:48 +00002177// ARM-BITRIG:#define __SIZE_TYPE__ long unsigned int
2178// ARM-BITRIG:#define __SIZE_WIDTH__ 32
2179
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002180// Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
2181
James Y Knightc97efa42016-02-11 16:51:29 +00002182// 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 +00002183// ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
2184
James Y Knightc97efa42016-02-11 16:51:29 +00002185// 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 +00002186// THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
2187
James Y Knightc97efa42016-02-11 16:51:29 +00002188// 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 +00002189// ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2190
James Y Knightc97efa42016-02-11 16:51:29 +00002191// 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 +00002192// THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2193
James Y Knightc97efa42016-02-11 16:51:29 +00002194// 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 +00002195// THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2196
James Y Knightc97efa42016-02-11 16:51:29 +00002197// 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 +00002198// ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2199
James Y Knightc97efa42016-02-11 16:51:29 +00002200// 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 +00002201// ARMv8: #define __THUMB_INTERWORK__ 1
2202// ARMv8-NOT: #define __thumb2__
2203
James Y Knightc97efa42016-02-11 16:51:29 +00002204// 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 +00002205// ARMebv8: #define __THUMB_INTERWORK__ 1
2206// ARMebv8-NOT: #define __thumb2__
2207
James Y Knightc97efa42016-02-11 16:51:29 +00002208// 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 +00002209// Thumbv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002210// Thumbv8: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002211
James Y Knightc97efa42016-02-11 16:51:29 +00002212// 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 +00002213// Thumbebv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002214// Thumbebv8: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002215
James Y Knightc97efa42016-02-11 16:51:29 +00002216// 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 +00002217// Thumbv5: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002218// Thumbv5-NOT: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002219
James Y Knightc97efa42016-02-11 16:51:29 +00002220// 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 +00002221// Thumbv6t2: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002222// Thumbv6t2: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002223
James Y Knightc97efa42016-02-11 16:51:29 +00002224// 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 +00002225// Thumbv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002226// Thumbv7: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002227
James Y Knightc97efa42016-02-11 16:51:29 +00002228// 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 +00002229// Thumbebv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002230// Thumbebv7: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002231
Chris Lattnere963d092009-10-29 04:55:36 +00002232//
James Y Knightc97efa42016-02-11 16:51:29 +00002233// 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 +00002234//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002235// I386-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002236// I386:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002237// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002238// I386:#define __CHAR16_TYPE__ unsigned short
2239// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002240// I386:#define __CHAR_BIT__ 8
2241// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2242// I386:#define __DBL_DIG__ 15
2243// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
2244// I386:#define __DBL_HAS_DENORM__ 1
2245// I386:#define __DBL_HAS_INFINITY__ 1
2246// I386:#define __DBL_HAS_QUIET_NAN__ 1
2247// I386:#define __DBL_MANT_DIG__ 53
2248// I386:#define __DBL_MAX_10_EXP__ 308
2249// I386:#define __DBL_MAX_EXP__ 1024
2250// I386:#define __DBL_MAX__ 1.7976931348623157e+308
2251// I386:#define __DBL_MIN_10_EXP__ (-307)
2252// I386:#define __DBL_MIN_EXP__ (-1021)
2253// I386:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002254// I386:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00002255// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2256// I386:#define __FLT_DIG__ 6
2257// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramercf501472011-12-28 15:47:06 +00002258// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnere963d092009-10-29 04:55:36 +00002259// I386:#define __FLT_HAS_DENORM__ 1
2260// I386:#define __FLT_HAS_INFINITY__ 1
2261// I386:#define __FLT_HAS_QUIET_NAN__ 1
2262// I386:#define __FLT_MANT_DIG__ 24
2263// I386:#define __FLT_MAX_10_EXP__ 38
2264// I386:#define __FLT_MAX_EXP__ 128
2265// I386:#define __FLT_MAX__ 3.40282347e+38F
2266// I386:#define __FLT_MIN_10_EXP__ (-37)
2267// I386:#define __FLT_MIN_EXP__ (-125)
2268// I386:#define __FLT_MIN__ 1.17549435e-38F
2269// I386:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002270// I386:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002271// I386:#define __INT16_FMTd__ "hd"
2272// I386:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002273// I386:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00002274// I386:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002275// I386:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002276// I386:#define __INT32_FMTd__ "d"
2277// I386:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002278// I386:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00002279// I386:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002280// I386:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002281// I386:#define __INT64_FMTd__ "lld"
2282// I386:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002283// I386:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00002284// I386:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002285// I386:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002286// I386:#define __INT8_FMTd__ "hhd"
2287// I386:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002288// I386:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002289// I386:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002290// I386:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002291// I386:#define __INTMAX_FMTd__ "lld"
2292// I386:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00002293// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00002294// I386:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002295// I386:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002296// I386:#define __INTPTR_FMTd__ "d"
2297// I386:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002298// I386:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00002299// I386:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002300// I386:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002301// I386:#define __INT_FAST16_FMTd__ "hd"
2302// I386:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002303// I386:#define __INT_FAST16_MAX__ 32767
2304// I386:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002305// I386:#define __INT_FAST32_FMTd__ "d"
2306// I386:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002307// I386:#define __INT_FAST32_MAX__ 2147483647
2308// I386:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002309// I386:#define __INT_FAST64_FMTd__ "lld"
2310// I386:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002311// I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
2312// I386:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002313// I386:#define __INT_FAST8_FMTd__ "hhd"
2314// I386:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002315// I386:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002316// I386:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002317// I386:#define __INT_LEAST16_FMTd__ "hd"
2318// I386:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002319// I386:#define __INT_LEAST16_MAX__ 32767
2320// I386:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002321// I386:#define __INT_LEAST32_FMTd__ "d"
2322// I386:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002323// I386:#define __INT_LEAST32_MAX__ 2147483647
2324// I386:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002325// I386:#define __INT_LEAST64_FMTd__ "lld"
2326// I386:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002327// I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2328// I386:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002329// I386:#define __INT_LEAST8_FMTd__ "hhd"
2330// I386:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002331// I386:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002332// I386:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00002333// I386:#define __INT_MAX__ 2147483647
2334// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2335// I386:#define __LDBL_DIG__ 18
2336// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2337// I386:#define __LDBL_HAS_DENORM__ 1
2338// I386:#define __LDBL_HAS_INFINITY__ 1
2339// I386:#define __LDBL_HAS_QUIET_NAN__ 1
2340// I386:#define __LDBL_MANT_DIG__ 64
2341// I386:#define __LDBL_MAX_10_EXP__ 4932
2342// I386:#define __LDBL_MAX_EXP__ 16384
2343// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2344// I386:#define __LDBL_MIN_10_EXP__ (-4931)
2345// I386:#define __LDBL_MIN_EXP__ (-16381)
2346// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2347// I386:#define __LITTLE_ENDIAN__ 1
2348// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
2349// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002350// I386-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00002351// I386:#define __NO_MATH_INLINES 1
2352// I386:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00002353// I386:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00002354// I386:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002355// I386:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002356// I386:#define __SCHAR_MAX__ 127
2357// I386:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002358// I386:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00002359// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002360// I386:#define __SIZEOF_DOUBLE__ 8
2361// I386:#define __SIZEOF_FLOAT__ 4
2362// I386:#define __SIZEOF_INT__ 4
2363// I386:#define __SIZEOF_LONG_DOUBLE__ 12
2364// I386:#define __SIZEOF_LONG_LONG__ 8
2365// I386:#define __SIZEOF_LONG__ 4
2366// I386:#define __SIZEOF_POINTER__ 4
2367// I386:#define __SIZEOF_PTRDIFF_T__ 4
2368// I386:#define __SIZEOF_SHORT__ 2
2369// I386:#define __SIZEOF_SIZE_T__ 4
2370// I386:#define __SIZEOF_WCHAR_T__ 4
2371// I386:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002372// I386:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00002373// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002374// I386:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002375// I386:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002376// I386:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002377// I386:#define __UINT16_TYPE__ unsigned short
2378// I386:#define __UINT32_C_SUFFIX__ U
2379// I386:#define __UINT32_MAX__ 4294967295U
2380// I386:#define __UINT32_TYPE__ unsigned int
2381// I386:#define __UINT64_C_SUFFIX__ ULL
2382// I386:#define __UINT64_MAX__ 18446744073709551615ULL
2383// I386:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002384// I386:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002385// I386:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002386// I386:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002387// I386:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002388// I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00002389// I386:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002390// I386:#define __UINTMAX_WIDTH__ 64
2391// I386:#define __UINTPTR_MAX__ 4294967295U
2392// I386:#define __UINTPTR_TYPE__ unsigned int
2393// I386:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002394// I386:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002395// I386:#define __UINT_FAST16_TYPE__ unsigned short
2396// I386:#define __UINT_FAST32_MAX__ 4294967295U
2397// I386:#define __UINT_FAST32_TYPE__ unsigned int
2398// I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2399// I386:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002400// I386:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002401// I386:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002402// I386:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002403// I386:#define __UINT_LEAST16_TYPE__ unsigned short
2404// I386:#define __UINT_LEAST32_MAX__ 4294967295U
2405// I386:#define __UINT_LEAST32_TYPE__ unsigned int
2406// I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2407// I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002408// I386:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002409// I386:#define __UINT_LEAST8_TYPE__ unsigned char
Chris Lattnere963d092009-10-29 04:55:36 +00002410// I386:#define __USER_LABEL_PREFIX__ _
2411// I386:#define __WCHAR_MAX__ 2147483647
2412// I386:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002413// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002414// I386:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002415// I386:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002416// I386:#define __i386 1
2417// I386:#define __i386__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002418// I386:#define i386 1
2419//
James Y Knightc97efa42016-02-11 16:51:29 +00002420// 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
Douglas Gregore6d6e512011-01-12 21:19:25 +00002421//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002422// I386-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002423// I386-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002424// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002425// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
2426// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
2427// I386-LINUX:#define __CHAR_BIT__ 8
2428// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2429// I386-LINUX:#define __DBL_DIG__ 15
2430// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2431// I386-LINUX:#define __DBL_HAS_DENORM__ 1
2432// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
2433// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2434// I386-LINUX:#define __DBL_MANT_DIG__ 53
2435// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
2436// I386-LINUX:#define __DBL_MAX_EXP__ 1024
2437// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2438// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2439// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
2440// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002441// I386-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002442// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2443// I386-LINUX:#define __FLT_DIG__ 6
2444// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2445// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
2446// I386-LINUX:#define __FLT_HAS_DENORM__ 1
2447// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
2448// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2449// I386-LINUX:#define __FLT_MANT_DIG__ 24
2450// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
2451// I386-LINUX:#define __FLT_MAX_EXP__ 128
2452// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2453// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2454// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
2455// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2456// I386-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002457// I386-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002458// I386-LINUX:#define __INT16_FMTd__ "hd"
2459// I386-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002460// I386-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00002461// I386-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002462// I386-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002463// I386-LINUX:#define __INT32_FMTd__ "d"
2464// I386-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002465// I386-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002466// I386-LINUX:#define __INT32_TYPE__ int
2467// I386-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002468// I386-LINUX:#define __INT64_FMTd__ "lld"
2469// I386-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002470// I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002471// I386-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002472// I386-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002473// I386-LINUX:#define __INT8_FMTd__ "hhd"
2474// I386-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002475// I386-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002476// I386-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002477// I386-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002478// I386-LINUX:#define __INTMAX_FMTd__ "lld"
2479// I386-LINUX:#define __INTMAX_FMTi__ "lli"
Douglas Gregore6d6e512011-01-12 21:19:25 +00002480// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2481// I386-LINUX:#define __INTMAX_TYPE__ long long int
2482// I386-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002483// I386-LINUX:#define __INTPTR_FMTd__ "d"
2484// I386-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002485// I386-LINUX:#define __INTPTR_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002486// I386-LINUX:#define __INTPTR_TYPE__ int
2487// I386-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002488// I386-LINUX:#define __INT_FAST16_FMTd__ "hd"
2489// I386-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002490// I386-LINUX:#define __INT_FAST16_MAX__ 32767
2491// I386-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002492// I386-LINUX:#define __INT_FAST32_FMTd__ "d"
2493// I386-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002494// I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
2495// I386-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002496// I386-LINUX:#define __INT_FAST64_FMTd__ "lld"
2497// I386-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002498// I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
2499// I386-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002500// I386-LINUX:#define __INT_FAST8_FMTd__ "hhd"
2501// I386-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002502// I386-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002503// I386-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002504// I386-LINUX:#define __INT_LEAST16_FMTd__ "hd"
2505// I386-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002506// I386-LINUX:#define __INT_LEAST16_MAX__ 32767
2507// I386-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002508// I386-LINUX:#define __INT_LEAST32_FMTd__ "d"
2509// I386-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002510// I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
2511// I386-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002512// I386-LINUX:#define __INT_LEAST64_FMTd__ "lld"
2513// I386-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002514// I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2515// I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002516// I386-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
2517// I386-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002518// I386-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002519// I386-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002520// I386-LINUX:#define __INT_MAX__ 2147483647
2521// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2522// I386-LINUX:#define __LDBL_DIG__ 18
2523// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2524// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
2525// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
2526// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2527// I386-LINUX:#define __LDBL_MANT_DIG__ 64
2528// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2529// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
2530// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2531// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2532// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2533// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2534// I386-LINUX:#define __LITTLE_ENDIAN__ 1
2535// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2536// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002537// I386-LINUX-NOT:#define __LP64__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002538// I386-LINUX:#define __NO_MATH_INLINES 1
2539// I386-LINUX:#define __POINTER_WIDTH__ 32
2540// I386-LINUX:#define __PTRDIFF_TYPE__ int
2541// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002542// I386-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002543// I386-LINUX:#define __SCHAR_MAX__ 127
2544// I386-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002545// I386-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002546// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2547// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
2548// I386-LINUX:#define __SIZEOF_FLOAT__ 4
2549// I386-LINUX:#define __SIZEOF_INT__ 4
2550// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
2551// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
2552// I386-LINUX:#define __SIZEOF_LONG__ 4
2553// I386-LINUX:#define __SIZEOF_POINTER__ 4
2554// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2555// I386-LINUX:#define __SIZEOF_SHORT__ 2
2556// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
2557// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
2558// I386-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002559// I386-LINUX:#define __SIZE_MAX__ 4294967295U
Douglas Gregore6d6e512011-01-12 21:19:25 +00002560// I386-LINUX:#define __SIZE_TYPE__ unsigned int
2561// I386-LINUX:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002562// I386-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002563// I386-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002564// I386-LINUX:#define __UINT16_TYPE__ unsigned short
2565// I386-LINUX:#define __UINT32_C_SUFFIX__ U
2566// I386-LINUX:#define __UINT32_MAX__ 4294967295U
2567// I386-LINUX:#define __UINT32_TYPE__ unsigned int
2568// I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
2569// I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
2570// I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002571// I386-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002572// I386-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002573// I386-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002574// I386-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002575// I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002576// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002577// I386-LINUX:#define __UINTMAX_WIDTH__ 64
2578// I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
2579// I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
2580// I386-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002581// I386-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002582// I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
2583// I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
2584// I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
2585// I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2586// I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002587// I386-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002588// I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002589// I386-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002590// I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
2591// I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
2592// I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
2593// I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2594// I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002595// I386-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002596// I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002597// I386-LINUX:#define __USER_LABEL_PREFIX__
2598// I386-LINUX:#define __WCHAR_MAX__ 2147483647
2599// I386-LINUX:#define __WCHAR_TYPE__ int
2600// I386-LINUX:#define __WCHAR_WIDTH__ 32
2601// I386-LINUX:#define __WINT_TYPE__ unsigned int
2602// I386-LINUX:#define __WINT_WIDTH__ 32
2603// I386-LINUX:#define __i386 1
2604// I386-LINUX:#define __i386__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00002605// I386-LINUX:#define i386 1
2606//
James Y Knightc97efa42016-02-11 16:51:29 +00002607// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD %s
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002608//
2609// I386-NETBSD-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002610// I386-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002611// I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2612// I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
2613// I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
2614// I386-NETBSD:#define __CHAR_BIT__ 8
2615// I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2616// I386-NETBSD:#define __DBL_DIG__ 15
2617// I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2618// I386-NETBSD:#define __DBL_HAS_DENORM__ 1
2619// I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
2620// I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2621// I386-NETBSD:#define __DBL_MANT_DIG__ 53
2622// I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
2623// I386-NETBSD:#define __DBL_MAX_EXP__ 1024
2624// I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2625// I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2626// I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2627// I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002628// I386-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002629// I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2630// I386-NETBSD:#define __FLT_DIG__ 6
2631// I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2632// I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
2633// I386-NETBSD:#define __FLT_HAS_DENORM__ 1
2634// I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
2635// I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2636// I386-NETBSD:#define __FLT_MANT_DIG__ 24
2637// I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
2638// I386-NETBSD:#define __FLT_MAX_EXP__ 128
2639// I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2640// I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2641// I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
2642// I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2643// I386-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002644// I386-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002645// I386-NETBSD:#define __INT16_FMTd__ "hd"
2646// I386-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002647// I386-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002648// I386-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002649// I386-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002650// I386-NETBSD:#define __INT32_FMTd__ "d"
2651// I386-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002652// I386-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002653// I386-NETBSD:#define __INT32_TYPE__ int
2654// I386-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002655// I386-NETBSD:#define __INT64_FMTd__ "lld"
2656// I386-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002657// I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002658// I386-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002659// I386-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002660// I386-NETBSD:#define __INT8_FMTd__ "hhd"
2661// I386-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002662// I386-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002663// I386-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002664// I386-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002665// I386-NETBSD:#define __INTMAX_FMTd__ "lld"
2666// I386-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002667// I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2668// I386-NETBSD:#define __INTMAX_TYPE__ long long int
2669// I386-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002670// I386-NETBSD:#define __INTPTR_FMTd__ "d"
2671// I386-NETBSD:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002672// I386-NETBSD:#define __INTPTR_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002673// I386-NETBSD:#define __INTPTR_TYPE__ int
2674// I386-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002675// I386-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2676// I386-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002677// I386-NETBSD:#define __INT_FAST16_MAX__ 32767
2678// I386-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002679// I386-NETBSD:#define __INT_FAST32_FMTd__ "d"
2680// I386-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002681// I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2682// I386-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002683// I386-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2684// I386-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002685// I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2686// I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002687// I386-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2688// I386-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002689// I386-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002690// I386-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002691// I386-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2692// I386-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002693// I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
2694// I386-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002695// I386-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2696// I386-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002697// I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2698// I386-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002699// I386-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2700// I386-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002701// I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2702// I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002703// I386-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2704// I386-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002705// I386-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002706// I386-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002707// I386-NETBSD:#define __INT_MAX__ 2147483647
2708// I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2709// I386-NETBSD:#define __LDBL_DIG__ 18
2710// I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2711// I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
2712// I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2713// I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2714// I386-NETBSD:#define __LDBL_MANT_DIG__ 64
2715// I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
2716// I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
2717// I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2718// I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
2719// I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
2720// I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2721// I386-NETBSD:#define __LITTLE_ENDIAN__ 1
2722// I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2723// I386-NETBSD:#define __LONG_MAX__ 2147483647L
2724// I386-NETBSD-NOT:#define __LP64__
2725// I386-NETBSD:#define __NO_MATH_INLINES 1
2726// I386-NETBSD:#define __POINTER_WIDTH__ 32
2727// I386-NETBSD:#define __PTRDIFF_TYPE__ int
2728// I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002729// I386-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002730// I386-NETBSD:#define __SCHAR_MAX__ 127
2731// I386-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002732// I386-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002733// I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2734// I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
2735// I386-NETBSD:#define __SIZEOF_FLOAT__ 4
2736// I386-NETBSD:#define __SIZEOF_INT__ 4
2737// I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
2738// I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2739// I386-NETBSD:#define __SIZEOF_LONG__ 4
2740// I386-NETBSD:#define __SIZEOF_POINTER__ 4
2741// I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2742// I386-NETBSD:#define __SIZEOF_SHORT__ 2
2743// I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
2744// I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2745// I386-NETBSD:#define __SIZEOF_WINT_T__ 4
2746// I386-NETBSD:#define __SIZE_MAX__ 4294967295U
2747// I386-NETBSD:#define __SIZE_TYPE__ unsigned int
2748// I386-NETBSD:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002749// I386-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002750// I386-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002751// I386-NETBSD:#define __UINT16_TYPE__ unsigned short
2752// I386-NETBSD:#define __UINT32_C_SUFFIX__ U
2753// I386-NETBSD:#define __UINT32_MAX__ 4294967295U
2754// I386-NETBSD:#define __UINT32_TYPE__ unsigned int
2755// I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2756// I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2757// I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002758// I386-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002759// I386-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002760// I386-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002761// I386-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002762// I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002763// I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002764// I386-NETBSD:#define __UINTMAX_WIDTH__ 64
2765// I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
2766// I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
2767// I386-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002768// I386-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002769// I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2770// I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2771// I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2772// I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2773// I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002774// I386-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002775// I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002776// I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002777// I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2778// I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2779// I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2780// I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2781// I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002782// I386-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002783// I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002784// I386-NETBSD:#define __USER_LABEL_PREFIX__
2785// I386-NETBSD:#define __WCHAR_MAX__ 2147483647
2786// I386-NETBSD:#define __WCHAR_TYPE__ int
2787// I386-NETBSD:#define __WCHAR_WIDTH__ 32
2788// I386-NETBSD:#define __WINT_TYPE__ int
2789// I386-NETBSD:#define __WINT_WIDTH__ 32
2790// I386-NETBSD:#define __i386 1
2791// I386-NETBSD:#define __i386__ 1
2792// I386-NETBSD:#define i386 1
2793//
James Y Knightc97efa42016-02-11 16:51:29 +00002794// 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 +00002795// I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
James Y Knightc97efa42016-02-11 16:51:29 +00002796// 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 +00002797// I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002798// 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 +00002799// I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
2800
James Y Knightc97efa42016-02-11 16:51:29 +00002801// RUN: %clang_cc1 -E -dM -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2802// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2803// RUN: %clang_cc1 -E -dM -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2804// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
2805// I386-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00002806
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00002807//
James Y Knightc97efa42016-02-11 16:51:29 +00002808// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE %s
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002809//
2810// MIPS32BE:#define MIPSEB 1
2811// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002812// MIPS32BE-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002813// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00002814// MIPS32BE:#define _MIPS_ARCH "mips32r2"
2815// MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00002816// MIPS32BE:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002817// MIPS32BE:#define _MIPS_SIM _ABIO32
2818// MIPS32BE:#define _MIPS_SZINT 32
2819// MIPS32BE:#define _MIPS_SZLONG 32
2820// MIPS32BE:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00002821// MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00002822// MIPS32BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002823// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002824// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
2825// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
2826// MIPS32BE:#define __CHAR_BIT__ 8
2827// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
2828// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2829// MIPS32BE:#define __DBL_DIG__ 15
2830// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
2831// MIPS32BE:#define __DBL_HAS_DENORM__ 1
2832// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
2833// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
2834// MIPS32BE:#define __DBL_MANT_DIG__ 53
2835// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
2836// MIPS32BE:#define __DBL_MAX_EXP__ 1024
2837// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
2838// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
2839// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
2840// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002841// MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002842// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2843// MIPS32BE:#define __FLT_DIG__ 6
2844// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
2845// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
2846// MIPS32BE:#define __FLT_HAS_DENORM__ 1
2847// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
2848// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
2849// MIPS32BE:#define __FLT_MANT_DIG__ 24
2850// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
2851// MIPS32BE:#define __FLT_MAX_EXP__ 128
2852// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
2853// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
2854// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
2855// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
2856// MIPS32BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002857// MIPS32BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002858// MIPS32BE:#define __INT16_FMTd__ "hd"
2859// MIPS32BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002860// MIPS32BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002861// MIPS32BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002862// MIPS32BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002863// MIPS32BE:#define __INT32_FMTd__ "d"
2864// MIPS32BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002865// MIPS32BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002866// MIPS32BE:#define __INT32_TYPE__ int
2867// MIPS32BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002868// MIPS32BE:#define __INT64_FMTd__ "lld"
2869// MIPS32BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002870// MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002871// MIPS32BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002872// MIPS32BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002873// MIPS32BE:#define __INT8_FMTd__ "hhd"
2874// MIPS32BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002875// MIPS32BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002876// MIPS32BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002877// MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002878// MIPS32BE:#define __INTMAX_FMTd__ "lld"
2879// MIPS32BE:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002880// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
2881// MIPS32BE:#define __INTMAX_TYPE__ long long int
2882// MIPS32BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002883// MIPS32BE:#define __INTPTR_FMTd__ "ld"
2884// MIPS32BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002885// MIPS32BE:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002886// MIPS32BE:#define __INTPTR_TYPE__ long int
2887// MIPS32BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002888// MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
2889// MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002890// MIPS32BE:#define __INT_FAST16_MAX__ 32767
2891// MIPS32BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002892// MIPS32BE:#define __INT_FAST32_FMTd__ "d"
2893// MIPS32BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002894// MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
2895// MIPS32BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002896// MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
2897// MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002898// MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
2899// MIPS32BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002900// MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
2901// MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002902// MIPS32BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002903// MIPS32BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002904// MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
2905// MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002906// MIPS32BE:#define __INT_LEAST16_MAX__ 32767
2907// MIPS32BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002908// MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
2909// MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002910// MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
2911// MIPS32BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002912// MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
2913// MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002914// MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2915// MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002916// MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
2917// MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002918// MIPS32BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002919// MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002920// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002921// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002922// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002923// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002924// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
2925// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
2926// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
2927// MIPS32BE:#define __LDBL_MANT_DIG__ 53
2928// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
2929// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002930// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002931// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
2932// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002933// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002934// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
2935// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002936// MIPS32BE-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002937// MIPS32BE:#define __MIPSEB 1
2938// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002939// MIPS32BE:#define __POINTER_WIDTH__ 32
2940// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
2941// MIPS32BE:#define __PTRDIFF_TYPE__ int
2942// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002943// MIPS32BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002944// MIPS32BE:#define __SCHAR_MAX__ 127
2945// MIPS32BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002946// MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002947// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
2948// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
2949// MIPS32BE:#define __SIZEOF_FLOAT__ 4
2950// MIPS32BE:#define __SIZEOF_INT__ 4
2951// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
2952// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
2953// MIPS32BE:#define __SIZEOF_LONG__ 4
2954// MIPS32BE:#define __SIZEOF_POINTER__ 4
2955// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
2956// MIPS32BE:#define __SIZEOF_SHORT__ 2
2957// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
2958// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
2959// MIPS32BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002960// MIPS32BE:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002961// MIPS32BE:#define __SIZE_TYPE__ unsigned int
2962// MIPS32BE:#define __SIZE_WIDTH__ 32
2963// MIPS32BE:#define __STDC_HOSTED__ 0
Richard Smithab506ad2014-10-20 23:26:58 +00002964// MIPS32BE:#define __STDC_VERSION__ 201112L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002965// MIPS32BE:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002966// MIPS32BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002967// MIPS32BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002968// MIPS32BE:#define __UINT16_TYPE__ unsigned short
2969// MIPS32BE:#define __UINT32_C_SUFFIX__ U
2970// MIPS32BE:#define __UINT32_MAX__ 4294967295U
2971// MIPS32BE:#define __UINT32_TYPE__ unsigned int
2972// MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
2973// MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
2974// MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002975// MIPS32BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002976// MIPS32BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002977// MIPS32BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002978// MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002979// MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00002980// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002981// MIPS32BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002982// MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002983// MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002984// MIPS32BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002985// MIPS32BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002986// MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
2987// MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
2988// MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
2989// MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2990// MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002991// MIPS32BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002992// MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002993// MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002994// MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
2995// MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
2996// MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
2997// MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2998// MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002999// MIPS32BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003000// MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003001// MIPS32BE:#define __USER_LABEL_PREFIX__ _
3002// MIPS32BE:#define __WCHAR_MAX__ 2147483647
3003// MIPS32BE:#define __WCHAR_TYPE__ int
3004// MIPS32BE:#define __WCHAR_WIDTH__ 32
3005// MIPS32BE:#define __WINT_TYPE__ int
3006// MIPS32BE:#define __WINT_WIDTH__ 32
3007// MIPS32BE:#define __clang__ 1
3008// MIPS32BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003009// MIPS32BE:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003010// MIPS32BE:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003011// MIPS32BE:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003012// MIPS32BE:#define __mips_hard_float 1
3013// MIPS32BE:#define __mips_o32 1
3014// MIPS32BE:#define _mips 1
3015// MIPS32BE:#define mips 1
3016//
James Y Knightc97efa42016-02-11 16:51:29 +00003017// 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 +00003018//
3019// MIPS32EL:#define MIPSEL 1
3020// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003021// MIPS32EL-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003022// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003023// MIPS32EL:#define _MIPS_ARCH "mips32r2"
3024// MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003025// MIPS32EL:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003026// MIPS32EL:#define _MIPS_SIM _ABIO32
3027// MIPS32EL:#define _MIPS_SZINT 32
3028// MIPS32EL:#define _MIPS_SZLONG 32
3029// MIPS32EL:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003030// MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003031// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003032// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
3033// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
3034// MIPS32EL:#define __CHAR_BIT__ 8
3035// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
3036// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3037// MIPS32EL:#define __DBL_DIG__ 15
3038// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
3039// MIPS32EL:#define __DBL_HAS_DENORM__ 1
3040// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
3041// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
3042// MIPS32EL:#define __DBL_MANT_DIG__ 53
3043// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
3044// MIPS32EL:#define __DBL_MAX_EXP__ 1024
3045// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
3046// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
3047// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
3048// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003049// MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003050// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3051// MIPS32EL:#define __FLT_DIG__ 6
3052// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
3053// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
3054// MIPS32EL:#define __FLT_HAS_DENORM__ 1
3055// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
3056// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
3057// MIPS32EL:#define __FLT_MANT_DIG__ 24
3058// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
3059// MIPS32EL:#define __FLT_MAX_EXP__ 128
3060// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
3061// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
3062// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
3063// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
3064// MIPS32EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003065// MIPS32EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003066// MIPS32EL:#define __INT16_FMTd__ "hd"
3067// MIPS32EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003068// MIPS32EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003069// MIPS32EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003070// MIPS32EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003071// MIPS32EL:#define __INT32_FMTd__ "d"
3072// MIPS32EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003073// MIPS32EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003074// MIPS32EL:#define __INT32_TYPE__ int
3075// MIPS32EL:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003076// MIPS32EL:#define __INT64_FMTd__ "lld"
3077// MIPS32EL:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003078// MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003079// MIPS32EL:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003080// MIPS32EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003081// MIPS32EL:#define __INT8_FMTd__ "hhd"
3082// MIPS32EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003083// MIPS32EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003084// MIPS32EL:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003085// MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003086// MIPS32EL:#define __INTMAX_FMTd__ "lld"
3087// MIPS32EL:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003088// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
3089// MIPS32EL:#define __INTMAX_TYPE__ long long int
3090// MIPS32EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003091// MIPS32EL:#define __INTPTR_FMTd__ "ld"
3092// MIPS32EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003093// MIPS32EL:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003094// MIPS32EL:#define __INTPTR_TYPE__ long int
3095// MIPS32EL:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003096// MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
3097// MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003098// MIPS32EL:#define __INT_FAST16_MAX__ 32767
3099// MIPS32EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003100// MIPS32EL:#define __INT_FAST32_FMTd__ "d"
3101// MIPS32EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003102// MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
3103// MIPS32EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003104// MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
3105// MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003106// MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
3107// MIPS32EL:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003108// MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
3109// MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003110// MIPS32EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003111// MIPS32EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003112// MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
3113// MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003114// MIPS32EL:#define __INT_LEAST16_MAX__ 32767
3115// MIPS32EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003116// MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
3117// MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003118// MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
3119// MIPS32EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003120// MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
3121// MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003122// MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3123// MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003124// MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
3125// MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003126// MIPS32EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003127// MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003128// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003129// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003130// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003131// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003132// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
3133// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
3134// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
3135// MIPS32EL:#define __LDBL_MANT_DIG__ 53
3136// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
3137// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003138// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003139// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
3140// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003141// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00003142// MIPS32EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003143// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
3144// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003145// MIPS32EL-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003146// MIPS32EL:#define __MIPSEL 1
3147// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003148// MIPS32EL:#define __POINTER_WIDTH__ 32
3149// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
3150// MIPS32EL:#define __PTRDIFF_TYPE__ int
3151// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003152// MIPS32EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003153// MIPS32EL:#define __SCHAR_MAX__ 127
3154// MIPS32EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003155// MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003156// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
3157// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
3158// MIPS32EL:#define __SIZEOF_FLOAT__ 4
3159// MIPS32EL:#define __SIZEOF_INT__ 4
3160// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
3161// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
3162// MIPS32EL:#define __SIZEOF_LONG__ 4
3163// MIPS32EL:#define __SIZEOF_POINTER__ 4
3164// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
3165// MIPS32EL:#define __SIZEOF_SHORT__ 2
3166// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
3167// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
3168// MIPS32EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003169// MIPS32EL:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003170// MIPS32EL:#define __SIZE_TYPE__ unsigned int
3171// MIPS32EL:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003172// MIPS32EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003173// MIPS32EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003174// MIPS32EL:#define __UINT16_TYPE__ unsigned short
3175// MIPS32EL:#define __UINT32_C_SUFFIX__ U
3176// MIPS32EL:#define __UINT32_MAX__ 4294967295U
3177// MIPS32EL:#define __UINT32_TYPE__ unsigned int
3178// MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
3179// MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
3180// MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003181// MIPS32EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003182// MIPS32EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003183// MIPS32EL:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003184// MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003185// MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003186// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003187// MIPS32EL:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003188// MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003189// MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003190// MIPS32EL:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003191// MIPS32EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003192// MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
3193// MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
3194// MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
3195// MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3196// MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003197// MIPS32EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003198// MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003199// MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003200// MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
3201// MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
3202// MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
3203// MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3204// MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003205// MIPS32EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003206// MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003207// MIPS32EL:#define __USER_LABEL_PREFIX__ _
3208// MIPS32EL:#define __WCHAR_MAX__ 2147483647
3209// MIPS32EL:#define __WCHAR_TYPE__ int
3210// MIPS32EL:#define __WCHAR_WIDTH__ 32
3211// MIPS32EL:#define __WINT_TYPE__ int
3212// MIPS32EL:#define __WINT_WIDTH__ 32
3213// MIPS32EL:#define __clang__ 1
3214// MIPS32EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003215// MIPS32EL:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003216// MIPS32EL:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003217// MIPS32EL:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003218// MIPS32EL:#define __mips_hard_float 1
3219// MIPS32EL:#define __mips_o32 1
3220// MIPS32EL:#define _mips 1
3221// MIPS32EL:#define mips 1
3222//
Simon Atanasyan495523e42015-01-22 23:16:48 +00003223// RUN: %clang_cc1 -E -dM -ffreestanding \
3224// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00003225// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003226//
3227// MIPSN32BE: #define MIPSEB 1
3228// MIPSN32BE: #define _ABIN32 2
3229// MIPSN32BE: #define _ILP32 1
3230// MIPSN32BE: #define _MIPSEB 1
3231// MIPSN32BE: #define _MIPS_ARCH "mips64r2"
3232// MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
3233// MIPSN32BE: #define _MIPS_FPSET 32
3234// MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
3235// MIPSN32BE: #define _MIPS_SIM _ABIN32
3236// MIPSN32BE: #define _MIPS_SZINT 32
3237// MIPSN32BE: #define _MIPS_SZLONG 32
3238// MIPSN32BE: #define _MIPS_SZPTR 32
3239// MIPSN32BE: #define __ATOMIC_ACQUIRE 2
3240// MIPSN32BE: #define __ATOMIC_ACQ_REL 4
3241// MIPSN32BE: #define __ATOMIC_CONSUME 1
3242// MIPSN32BE: #define __ATOMIC_RELAXED 0
3243// MIPSN32BE: #define __ATOMIC_RELEASE 3
3244// MIPSN32BE: #define __ATOMIC_SEQ_CST 5
3245// MIPSN32BE: #define __BIG_ENDIAN__ 1
3246// MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3247// MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
3248// MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
3249// MIPSN32BE: #define __CHAR_BIT__ 8
3250// MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
3251// MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3252// MIPSN32BE: #define __DBL_DIG__ 15
3253// MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
3254// MIPSN32BE: #define __DBL_HAS_DENORM__ 1
3255// MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
3256// MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
3257// MIPSN32BE: #define __DBL_MANT_DIG__ 53
3258// MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
3259// MIPSN32BE: #define __DBL_MAX_EXP__ 1024
3260// MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
3261// MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
3262// MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
3263// MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003264// MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003265// MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
3266// MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3267// MIPSN32BE: #define __FLT_DIG__ 6
3268// MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
3269// MIPSN32BE: #define __FLT_EVAL_METHOD__ 0
3270// MIPSN32BE: #define __FLT_HAS_DENORM__ 1
3271// MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
3272// MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
3273// MIPSN32BE: #define __FLT_MANT_DIG__ 24
3274// MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
3275// MIPSN32BE: #define __FLT_MAX_EXP__ 128
3276// MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
3277// MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
3278// MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
3279// MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
3280// MIPSN32BE: #define __FLT_RADIX__ 2
3281// MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3282// MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3283// MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3284// MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3285// MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3286// MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3287// MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3288// MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3289// MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3290// MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3291// MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3292// MIPSN32BE: #define __GNUC_MINOR__ 2
3293// MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
3294// MIPSN32BE: #define __GNUC_STDC_INLINE__ 1
3295// MIPSN32BE: #define __GNUC__ 4
3296// MIPSN32BE: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003297// MIPSN32BE: #define __ILP32__ 1
3298// MIPSN32BE: #define __INT16_C_SUFFIX__
3299// MIPSN32BE: #define __INT16_FMTd__ "hd"
3300// MIPSN32BE: #define __INT16_FMTi__ "hi"
3301// MIPSN32BE: #define __INT16_MAX__ 32767
3302// MIPSN32BE: #define __INT16_TYPE__ short
3303// MIPSN32BE: #define __INT32_C_SUFFIX__
3304// MIPSN32BE: #define __INT32_FMTd__ "d"
3305// MIPSN32BE: #define __INT32_FMTi__ "i"
3306// MIPSN32BE: #define __INT32_MAX__ 2147483647
3307// MIPSN32BE: #define __INT32_TYPE__ int
3308// MIPSN32BE: #define __INT64_C_SUFFIX__ LL
3309// MIPSN32BE: #define __INT64_FMTd__ "lld"
3310// MIPSN32BE: #define __INT64_FMTi__ "lli"
3311// MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
3312// MIPSN32BE: #define __INT64_TYPE__ long long int
3313// MIPSN32BE: #define __INT8_C_SUFFIX__
3314// MIPSN32BE: #define __INT8_FMTd__ "hhd"
3315// MIPSN32BE: #define __INT8_FMTi__ "hhi"
3316// MIPSN32BE: #define __INT8_MAX__ 127
3317// MIPSN32BE: #define __INT8_TYPE__ signed char
3318// MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
3319// MIPSN32BE: #define __INTMAX_FMTd__ "lld"
3320// MIPSN32BE: #define __INTMAX_FMTi__ "lli"
3321// MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
3322// MIPSN32BE: #define __INTMAX_TYPE__ long long int
3323// MIPSN32BE: #define __INTMAX_WIDTH__ 64
3324// MIPSN32BE: #define __INTPTR_FMTd__ "ld"
3325// MIPSN32BE: #define __INTPTR_FMTi__ "li"
3326// MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
3327// MIPSN32BE: #define __INTPTR_TYPE__ long int
3328// MIPSN32BE: #define __INTPTR_WIDTH__ 32
3329// MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
3330// MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
3331// MIPSN32BE: #define __INT_FAST16_MAX__ 32767
3332// MIPSN32BE: #define __INT_FAST16_TYPE__ short
3333// MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
3334// MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
3335// MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
3336// MIPSN32BE: #define __INT_FAST32_TYPE__ int
3337// MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
3338// MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
3339// MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
3340// MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
3341// MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
3342// MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
3343// MIPSN32BE: #define __INT_FAST8_MAX__ 127
3344// MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
3345// MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
3346// MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
3347// MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
3348// MIPSN32BE: #define __INT_LEAST16_TYPE__ short
3349// MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
3350// MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
3351// MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
3352// MIPSN32BE: #define __INT_LEAST32_TYPE__ int
3353// MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
3354// MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
3355// MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3356// MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
3357// MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
3358// MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
3359// MIPSN32BE: #define __INT_LEAST8_MAX__ 127
3360// MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
3361// MIPSN32BE: #define __INT_MAX__ 2147483647
3362// MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3363// MIPSN32BE: #define __LDBL_DIG__ 33
3364// MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3365// MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
3366// MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
3367// MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
3368// MIPSN32BE: #define __LDBL_MANT_DIG__ 113
3369// MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
3370// MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
3371// MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3372// MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
3373// MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
3374// MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3375// MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
3376// MIPSN32BE: #define __LONG_MAX__ 2147483647L
3377// MIPSN32BE: #define __MIPSEB 1
3378// MIPSN32BE: #define __MIPSEB__ 1
3379// MIPSN32BE: #define __NO_INLINE__ 1
3380// MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
3381// MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
3382// MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
3383// MIPSN32BE: #define __POINTER_WIDTH__ 32
3384// MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
3385// MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
3386// MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
3387// MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
3388// MIPSN32BE: #define __PTRDIFF_TYPE__ int
3389// MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
3390// MIPSN32BE: #define __REGISTER_PREFIX__
3391// MIPSN32BE: #define __SCHAR_MAX__ 127
3392// MIPSN32BE: #define __SHRT_MAX__ 32767
3393// MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
3394// MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
3395// MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
3396// MIPSN32BE: #define __SIZEOF_FLOAT__ 4
3397// MIPSN32BE: #define __SIZEOF_INT__ 4
3398// MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
3399// MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
3400// MIPSN32BE: #define __SIZEOF_LONG__ 4
3401// MIPSN32BE: #define __SIZEOF_POINTER__ 4
3402// MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
3403// MIPSN32BE: #define __SIZEOF_SHORT__ 2
3404// MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
3405// MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
3406// MIPSN32BE: #define __SIZEOF_WINT_T__ 4
3407// MIPSN32BE: #define __SIZE_FMTX__ "X"
3408// MIPSN32BE: #define __SIZE_FMTo__ "o"
3409// MIPSN32BE: #define __SIZE_FMTu__ "u"
3410// MIPSN32BE: #define __SIZE_FMTx__ "x"
3411// MIPSN32BE: #define __SIZE_MAX__ 4294967295U
3412// MIPSN32BE: #define __SIZE_TYPE__ unsigned int
3413// MIPSN32BE: #define __SIZE_WIDTH__ 32
3414// MIPSN32BE: #define __STDC_HOSTED__ 0
3415// MIPSN32BE: #define __STDC_UTF_16__ 1
3416// MIPSN32BE: #define __STDC_UTF_32__ 1
3417// MIPSN32BE: #define __STDC_VERSION__ 201112L
3418// MIPSN32BE: #define __STDC__ 1
3419// MIPSN32BE: #define __UINT16_C_SUFFIX__
3420// MIPSN32BE: #define __UINT16_FMTX__ "hX"
3421// MIPSN32BE: #define __UINT16_FMTo__ "ho"
3422// MIPSN32BE: #define __UINT16_FMTu__ "hu"
3423// MIPSN32BE: #define __UINT16_FMTx__ "hx"
3424// MIPSN32BE: #define __UINT16_MAX__ 65535
3425// MIPSN32BE: #define __UINT16_TYPE__ unsigned short
3426// MIPSN32BE: #define __UINT32_C_SUFFIX__ U
3427// MIPSN32BE: #define __UINT32_FMTX__ "X"
3428// MIPSN32BE: #define __UINT32_FMTo__ "o"
3429// MIPSN32BE: #define __UINT32_FMTu__ "u"
3430// MIPSN32BE: #define __UINT32_FMTx__ "x"
3431// MIPSN32BE: #define __UINT32_MAX__ 4294967295U
3432// MIPSN32BE: #define __UINT32_TYPE__ unsigned int
3433// MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
3434// MIPSN32BE: #define __UINT64_FMTX__ "llX"
3435// MIPSN32BE: #define __UINT64_FMTo__ "llo"
3436// MIPSN32BE: #define __UINT64_FMTu__ "llu"
3437// MIPSN32BE: #define __UINT64_FMTx__ "llx"
3438// MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
3439// MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
3440// MIPSN32BE: #define __UINT8_C_SUFFIX__
3441// MIPSN32BE: #define __UINT8_FMTX__ "hhX"
3442// MIPSN32BE: #define __UINT8_FMTo__ "hho"
3443// MIPSN32BE: #define __UINT8_FMTu__ "hhu"
3444// MIPSN32BE: #define __UINT8_FMTx__ "hhx"
3445// MIPSN32BE: #define __UINT8_MAX__ 255
3446// MIPSN32BE: #define __UINT8_TYPE__ unsigned char
3447// MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
3448// MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
3449// MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
3450// MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
3451// MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
3452// MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
3453// MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
3454// MIPSN32BE: #define __UINTMAX_WIDTH__ 64
3455// MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
3456// MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
3457// MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
3458// MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
3459// MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
3460// MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
3461// MIPSN32BE: #define __UINTPTR_WIDTH__ 32
3462// MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
3463// MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
3464// MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
3465// MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
3466// MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
3467// MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
3468// MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
3469// MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
3470// MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
3471// MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
3472// MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
3473// MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
3474// MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
3475// MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
3476// MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
3477// MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
3478// MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3479// MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
3480// MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
3481// MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
3482// MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
3483// MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
3484// MIPSN32BE: #define __UINT_FAST8_MAX__ 255
3485// MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
3486// MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
3487// MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
3488// MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
3489// MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
3490// MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
3491// MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
3492// MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
3493// MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
3494// MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
3495// MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
3496// MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
3497// MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
3498// MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
3499// MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
3500// MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
3501// MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
3502// MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3503// MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
3504// MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
3505// MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
3506// MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
3507// MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
3508// MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
3509// MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
3510// MIPSN32BE: #define __USER_LABEL_PREFIX__ _
3511// MIPSN32BE: #define __WCHAR_MAX__ 2147483647
3512// MIPSN32BE: #define __WCHAR_TYPE__ int
3513// MIPSN32BE: #define __WCHAR_WIDTH__ 32
3514// MIPSN32BE: #define __WINT_TYPE__ int
3515// MIPSN32BE: #define __WINT_WIDTH__ 32
3516// MIPSN32BE: #define __clang__ 1
3517// MIPSN32BE: #define __llvm__ 1
3518// MIPSN32BE: #define __mips 64
3519// MIPSN32BE: #define __mips64 1
3520// MIPSN32BE: #define __mips64__ 1
3521// MIPSN32BE: #define __mips__ 1
3522// MIPSN32BE: #define __mips_fpr 64
3523// MIPSN32BE: #define __mips_hard_float 1
3524// MIPSN32BE: #define __mips_isa_rev 2
3525// MIPSN32BE: #define __mips_n32 1
3526// MIPSN32BE: #define _mips 1
3527// MIPSN32BE: #define mips 1
3528//
3529// RUN: %clang_cc1 -E -dM -ffreestanding \
3530// RUN: -triple=mips64el-none-none -target-abi n32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00003531// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003532//
3533// MIPSN32EL: #define MIPSEL 1
3534// MIPSN32EL: #define _ABIN32 2
3535// MIPSN32EL: #define _ILP32 1
3536// MIPSN32EL: #define _MIPSEL 1
3537// MIPSN32EL: #define _MIPS_ARCH "mips64r2"
3538// MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
3539// MIPSN32EL: #define _MIPS_FPSET 32
3540// MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
3541// MIPSN32EL: #define _MIPS_SIM _ABIN32
3542// MIPSN32EL: #define _MIPS_SZINT 32
3543// MIPSN32EL: #define _MIPS_SZLONG 32
3544// MIPSN32EL: #define _MIPS_SZPTR 32
3545// MIPSN32EL: #define __ATOMIC_ACQUIRE 2
3546// MIPSN32EL: #define __ATOMIC_ACQ_REL 4
3547// MIPSN32EL: #define __ATOMIC_CONSUME 1
3548// MIPSN32EL: #define __ATOMIC_RELAXED 0
3549// MIPSN32EL: #define __ATOMIC_RELEASE 3
3550// MIPSN32EL: #define __ATOMIC_SEQ_CST 5
3551// MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3552// MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
3553// MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
3554// MIPSN32EL: #define __CHAR_BIT__ 8
3555// MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
3556// MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3557// MIPSN32EL: #define __DBL_DIG__ 15
3558// MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
3559// MIPSN32EL: #define __DBL_HAS_DENORM__ 1
3560// MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
3561// MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
3562// MIPSN32EL: #define __DBL_MANT_DIG__ 53
3563// MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
3564// MIPSN32EL: #define __DBL_MAX_EXP__ 1024
3565// MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
3566// MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
3567// MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
3568// MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003569// MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003570// MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
3571// MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3572// MIPSN32EL: #define __FLT_DIG__ 6
3573// MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
3574// MIPSN32EL: #define __FLT_EVAL_METHOD__ 0
3575// MIPSN32EL: #define __FLT_HAS_DENORM__ 1
3576// MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
3577// MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
3578// MIPSN32EL: #define __FLT_MANT_DIG__ 24
3579// MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
3580// MIPSN32EL: #define __FLT_MAX_EXP__ 128
3581// MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
3582// MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
3583// MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
3584// MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
3585// MIPSN32EL: #define __FLT_RADIX__ 2
3586// MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3587// MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3588// MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3589// MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3590// MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3591// MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3592// MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3593// MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3594// MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3595// MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3596// MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3597// MIPSN32EL: #define __GNUC_MINOR__ 2
3598// MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
3599// MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
3600// MIPSN32EL: #define __GNUC__ 4
3601// MIPSN32EL: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003602// MIPSN32EL: #define __ILP32__ 1
3603// MIPSN32EL: #define __INT16_C_SUFFIX__
3604// MIPSN32EL: #define __INT16_FMTd__ "hd"
3605// MIPSN32EL: #define __INT16_FMTi__ "hi"
3606// MIPSN32EL: #define __INT16_MAX__ 32767
3607// MIPSN32EL: #define __INT16_TYPE__ short
3608// MIPSN32EL: #define __INT32_C_SUFFIX__
3609// MIPSN32EL: #define __INT32_FMTd__ "d"
3610// MIPSN32EL: #define __INT32_FMTi__ "i"
3611// MIPSN32EL: #define __INT32_MAX__ 2147483647
3612// MIPSN32EL: #define __INT32_TYPE__ int
3613// MIPSN32EL: #define __INT64_C_SUFFIX__ LL
3614// MIPSN32EL: #define __INT64_FMTd__ "lld"
3615// MIPSN32EL: #define __INT64_FMTi__ "lli"
3616// MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
3617// MIPSN32EL: #define __INT64_TYPE__ long long int
3618// MIPSN32EL: #define __INT8_C_SUFFIX__
3619// MIPSN32EL: #define __INT8_FMTd__ "hhd"
3620// MIPSN32EL: #define __INT8_FMTi__ "hhi"
3621// MIPSN32EL: #define __INT8_MAX__ 127
3622// MIPSN32EL: #define __INT8_TYPE__ signed char
3623// MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
3624// MIPSN32EL: #define __INTMAX_FMTd__ "lld"
3625// MIPSN32EL: #define __INTMAX_FMTi__ "lli"
3626// MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
3627// MIPSN32EL: #define __INTMAX_TYPE__ long long int
3628// MIPSN32EL: #define __INTMAX_WIDTH__ 64
3629// MIPSN32EL: #define __INTPTR_FMTd__ "ld"
3630// MIPSN32EL: #define __INTPTR_FMTi__ "li"
3631// MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
3632// MIPSN32EL: #define __INTPTR_TYPE__ long int
3633// MIPSN32EL: #define __INTPTR_WIDTH__ 32
3634// MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
3635// MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
3636// MIPSN32EL: #define __INT_FAST16_MAX__ 32767
3637// MIPSN32EL: #define __INT_FAST16_TYPE__ short
3638// MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
3639// MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
3640// MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
3641// MIPSN32EL: #define __INT_FAST32_TYPE__ int
3642// MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
3643// MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
3644// MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
3645// MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
3646// MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
3647// MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
3648// MIPSN32EL: #define __INT_FAST8_MAX__ 127
3649// MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
3650// MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
3651// MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
3652// MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
3653// MIPSN32EL: #define __INT_LEAST16_TYPE__ short
3654// MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
3655// MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
3656// MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
3657// MIPSN32EL: #define __INT_LEAST32_TYPE__ int
3658// MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
3659// MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
3660// MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3661// MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
3662// MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
3663// MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
3664// MIPSN32EL: #define __INT_LEAST8_MAX__ 127
3665// MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
3666// MIPSN32EL: #define __INT_MAX__ 2147483647
3667// MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3668// MIPSN32EL: #define __LDBL_DIG__ 33
3669// MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3670// MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
3671// MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
3672// MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
3673// MIPSN32EL: #define __LDBL_MANT_DIG__ 113
3674// MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
3675// MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
3676// MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3677// MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
3678// MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
3679// MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3680// MIPSN32EL: #define __LITTLE_ENDIAN__ 1
3681// MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
3682// MIPSN32EL: #define __LONG_MAX__ 2147483647L
3683// MIPSN32EL: #define __MIPSEL 1
3684// MIPSN32EL: #define __MIPSEL__ 1
3685// MIPSN32EL: #define __NO_INLINE__ 1
3686// MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
3687// MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
3688// MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
3689// MIPSN32EL: #define __POINTER_WIDTH__ 32
3690// MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
3691// MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
3692// MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
3693// MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
3694// MIPSN32EL: #define __PTRDIFF_TYPE__ int
3695// MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
3696// MIPSN32EL: #define __REGISTER_PREFIX__
3697// MIPSN32EL: #define __SCHAR_MAX__ 127
3698// MIPSN32EL: #define __SHRT_MAX__ 32767
3699// MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
3700// MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
3701// MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
3702// MIPSN32EL: #define __SIZEOF_FLOAT__ 4
3703// MIPSN32EL: #define __SIZEOF_INT__ 4
3704// MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
3705// MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
3706// MIPSN32EL: #define __SIZEOF_LONG__ 4
3707// MIPSN32EL: #define __SIZEOF_POINTER__ 4
3708// MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
3709// MIPSN32EL: #define __SIZEOF_SHORT__ 2
3710// MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
3711// MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
3712// MIPSN32EL: #define __SIZEOF_WINT_T__ 4
3713// MIPSN32EL: #define __SIZE_FMTX__ "X"
3714// MIPSN32EL: #define __SIZE_FMTo__ "o"
3715// MIPSN32EL: #define __SIZE_FMTu__ "u"
3716// MIPSN32EL: #define __SIZE_FMTx__ "x"
3717// MIPSN32EL: #define __SIZE_MAX__ 4294967295U
3718// MIPSN32EL: #define __SIZE_TYPE__ unsigned int
3719// MIPSN32EL: #define __SIZE_WIDTH__ 32
3720// MIPSN32EL: #define __STDC_HOSTED__ 0
3721// MIPSN32EL: #define __STDC_UTF_16__ 1
3722// MIPSN32EL: #define __STDC_UTF_32__ 1
3723// MIPSN32EL: #define __STDC_VERSION__ 201112L
3724// MIPSN32EL: #define __STDC__ 1
3725// MIPSN32EL: #define __UINT16_C_SUFFIX__
3726// MIPSN32EL: #define __UINT16_FMTX__ "hX"
3727// MIPSN32EL: #define __UINT16_FMTo__ "ho"
3728// MIPSN32EL: #define __UINT16_FMTu__ "hu"
3729// MIPSN32EL: #define __UINT16_FMTx__ "hx"
3730// MIPSN32EL: #define __UINT16_MAX__ 65535
3731// MIPSN32EL: #define __UINT16_TYPE__ unsigned short
3732// MIPSN32EL: #define __UINT32_C_SUFFIX__ U
3733// MIPSN32EL: #define __UINT32_FMTX__ "X"
3734// MIPSN32EL: #define __UINT32_FMTo__ "o"
3735// MIPSN32EL: #define __UINT32_FMTu__ "u"
3736// MIPSN32EL: #define __UINT32_FMTx__ "x"
3737// MIPSN32EL: #define __UINT32_MAX__ 4294967295U
3738// MIPSN32EL: #define __UINT32_TYPE__ unsigned int
3739// MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
3740// MIPSN32EL: #define __UINT64_FMTX__ "llX"
3741// MIPSN32EL: #define __UINT64_FMTo__ "llo"
3742// MIPSN32EL: #define __UINT64_FMTu__ "llu"
3743// MIPSN32EL: #define __UINT64_FMTx__ "llx"
3744// MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
3745// MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
3746// MIPSN32EL: #define __UINT8_C_SUFFIX__
3747// MIPSN32EL: #define __UINT8_FMTX__ "hhX"
3748// MIPSN32EL: #define __UINT8_FMTo__ "hho"
3749// MIPSN32EL: #define __UINT8_FMTu__ "hhu"
3750// MIPSN32EL: #define __UINT8_FMTx__ "hhx"
3751// MIPSN32EL: #define __UINT8_MAX__ 255
3752// MIPSN32EL: #define __UINT8_TYPE__ unsigned char
3753// MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
3754// MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
3755// MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
3756// MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
3757// MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
3758// MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
3759// MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
3760// MIPSN32EL: #define __UINTMAX_WIDTH__ 64
3761// MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
3762// MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
3763// MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
3764// MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
3765// MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
3766// MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
3767// MIPSN32EL: #define __UINTPTR_WIDTH__ 32
3768// MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
3769// MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
3770// MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
3771// MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
3772// MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
3773// MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
3774// MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
3775// MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
3776// MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
3777// MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
3778// MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
3779// MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
3780// MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
3781// MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
3782// MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
3783// MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
3784// MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3785// MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
3786// MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
3787// MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
3788// MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
3789// MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
3790// MIPSN32EL: #define __UINT_FAST8_MAX__ 255
3791// MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
3792// MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
3793// MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
3794// MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
3795// MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
3796// MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
3797// MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
3798// MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
3799// MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
3800// MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
3801// MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
3802// MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
3803// MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
3804// MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
3805// MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
3806// MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
3807// MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
3808// MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3809// MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
3810// MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
3811// MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
3812// MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
3813// MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
3814// MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
3815// MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
3816// MIPSN32EL: #define __USER_LABEL_PREFIX__ _
3817// MIPSN32EL: #define __WCHAR_MAX__ 2147483647
3818// MIPSN32EL: #define __WCHAR_TYPE__ int
3819// MIPSN32EL: #define __WCHAR_WIDTH__ 32
3820// MIPSN32EL: #define __WINT_TYPE__ int
3821// MIPSN32EL: #define __WINT_WIDTH__ 32
3822// MIPSN32EL: #define __clang__ 1
3823// MIPSN32EL: #define __llvm__ 1
3824// MIPSN32EL: #define __mips 64
3825// MIPSN32EL: #define __mips64 1
3826// MIPSN32EL: #define __mips64__ 1
3827// MIPSN32EL: #define __mips__ 1
3828// MIPSN32EL: #define __mips_fpr 64
3829// MIPSN32EL: #define __mips_hard_float 1
3830// MIPSN32EL: #define __mips_isa_rev 2
3831// MIPSN32EL: #define __mips_n32 1
3832// MIPSN32EL: #define _mips 1
3833// MIPSN32EL: #define mips 1
3834//
James Y Knightc97efa42016-02-11 16:51:29 +00003835// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE %s
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003836//
3837// MIPS64BE:#define MIPSEB 1
3838// MIPS64BE:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003839// MIPS64BE:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003840// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003841// MIPS64BE:#define _MIPS_ARCH "mips64r2"
3842// MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003843// MIPS64BE:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003844// MIPS64BE:#define _MIPS_SIM _ABI64
3845// MIPS64BE:#define _MIPS_SZINT 32
3846// MIPS64BE:#define _MIPS_SZLONG 64
3847// MIPS64BE:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00003848// MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
Robert Lytton2c942c62014-03-10 12:06:29 +00003849// MIPS64BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003850// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003851// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
3852// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
3853// MIPS64BE:#define __CHAR_BIT__ 8
3854// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
3855// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3856// MIPS64BE:#define __DBL_DIG__ 15
3857// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
3858// MIPS64BE:#define __DBL_HAS_DENORM__ 1
3859// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
3860// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
3861// MIPS64BE:#define __DBL_MANT_DIG__ 53
3862// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
3863// MIPS64BE:#define __DBL_MAX_EXP__ 1024
3864// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
3865// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
3866// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
3867// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003868// MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003869// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3870// MIPS64BE:#define __FLT_DIG__ 6
3871// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
3872// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
3873// MIPS64BE:#define __FLT_HAS_DENORM__ 1
3874// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
3875// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
3876// MIPS64BE:#define __FLT_MANT_DIG__ 24
3877// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
3878// MIPS64BE:#define __FLT_MAX_EXP__ 128
3879// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
3880// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
3881// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
3882// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
3883// MIPS64BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003884// MIPS64BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003885// MIPS64BE:#define __INT16_FMTd__ "hd"
3886// MIPS64BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003887// MIPS64BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003888// MIPS64BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003889// MIPS64BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003890// MIPS64BE:#define __INT32_FMTd__ "d"
3891// MIPS64BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003892// MIPS64BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003893// MIPS64BE:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00003894// MIPS64BE:#define __INT64_C_SUFFIX__ L
3895// MIPS64BE:#define __INT64_FMTd__ "ld"
3896// MIPS64BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003897// MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003898// MIPS64BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00003899// MIPS64BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003900// MIPS64BE:#define __INT8_FMTd__ "hhd"
3901// MIPS64BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003902// MIPS64BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003903// MIPS64BE:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00003904// MIPS64BE:#define __INTMAX_C_SUFFIX__ L
3905// MIPS64BE:#define __INTMAX_FMTd__ "ld"
3906// MIPS64BE:#define __INTMAX_FMTi__ "li"
3907// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
3908// MIPS64BE:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003909// MIPS64BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003910// MIPS64BE:#define __INTPTR_FMTd__ "ld"
3911// MIPS64BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003912// MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003913// MIPS64BE:#define __INTPTR_TYPE__ long int
3914// MIPS64BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003915// MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
3916// MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003917// MIPS64BE:#define __INT_FAST16_MAX__ 32767
3918// MIPS64BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003919// MIPS64BE:#define __INT_FAST32_FMTd__ "d"
3920// MIPS64BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003921// MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
3922// MIPS64BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003923// MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
3924// MIPS64BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003925// MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
3926// MIPS64BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003927// MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
3928// MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003929// MIPS64BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003930// MIPS64BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003931// MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
3932// MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003933// MIPS64BE:#define __INT_LEAST16_MAX__ 32767
3934// MIPS64BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003935// MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
3936// MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003937// MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
3938// MIPS64BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003939// MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
3940// MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003941// MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
3942// MIPS64BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003943// MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
3944// MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003945// MIPS64BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003946// MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003947// MIPS64BE:#define __INT_MAX__ 2147483647
3948// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3949// MIPS64BE:#define __LDBL_DIG__ 33
3950// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3951// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
3952// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
3953// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
3954// MIPS64BE:#define __LDBL_MANT_DIG__ 113
3955// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
3956// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
3957// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3958// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
3959// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
3960// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3961// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
3962// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003963// MIPS64BE:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003964// MIPS64BE:#define __MIPSEB 1
3965// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003966// MIPS64BE:#define __POINTER_WIDTH__ 64
3967// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
3968// MIPS64BE:#define __PTRDIFF_TYPE__ long int
3969// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003970// MIPS64BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003971// MIPS64BE:#define __SCHAR_MAX__ 127
3972// MIPS64BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003973// MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003974// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
3975// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
3976// MIPS64BE:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00003977// MIPS64BE:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003978// MIPS64BE:#define __SIZEOF_INT__ 4
3979// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
3980// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
3981// MIPS64BE:#define __SIZEOF_LONG__ 8
3982// MIPS64BE:#define __SIZEOF_POINTER__ 8
3983// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
3984// MIPS64BE:#define __SIZEOF_SHORT__ 2
3985// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
3986// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
3987// MIPS64BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003988// MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003989// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
3990// MIPS64BE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003991// MIPS64BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003992// MIPS64BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003993// MIPS64BE:#define __UINT16_TYPE__ unsigned short
3994// MIPS64BE:#define __UINT32_C_SUFFIX__ U
3995// MIPS64BE:#define __UINT32_MAX__ 4294967295U
3996// MIPS64BE:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00003997// MIPS64BE:#define __UINT64_C_SUFFIX__ UL
3998// MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
3999// MIPS64BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004000// MIPS64BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004001// MIPS64BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004002// MIPS64BE:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004003// MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
4004// MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
4005// MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004006// MIPS64BE:#define __UINTMAX_WIDTH__ 64
4007// MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
4008// MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
4009// MIPS64BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004010// MIPS64BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004011// MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
4012// MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
4013// MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
4014// MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4015// MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004016// MIPS64BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004017// MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004018// MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004019// MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
4020// MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
4021// MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
4022// MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4023// MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004024// MIPS64BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004025// MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004026// MIPS64BE:#define __USER_LABEL_PREFIX__ _
4027// MIPS64BE:#define __WCHAR_MAX__ 2147483647
4028// MIPS64BE:#define __WCHAR_TYPE__ int
4029// MIPS64BE:#define __WCHAR_WIDTH__ 32
4030// MIPS64BE:#define __WINT_TYPE__ int
4031// MIPS64BE:#define __WINT_WIDTH__ 32
4032// MIPS64BE:#define __clang__ 1
4033// MIPS64BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004034// MIPS64BE:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004035// MIPS64BE:#define __mips64 1
4036// MIPS64BE:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004037// MIPS64BE:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004038// MIPS64BE:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004039// MIPS64BE:#define __mips_hard_float 1
4040// MIPS64BE:#define __mips_n64 1
4041// MIPS64BE:#define _mips 1
4042// MIPS64BE:#define mips 1
4043//
James Y Knightc97efa42016-02-11 16:51:29 +00004044// 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 +00004045//
4046// MIPS64EL:#define MIPSEL 1
4047// MIPS64EL:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004048// MIPS64EL:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004049// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004050// MIPS64EL:#define _MIPS_ARCH "mips64r2"
4051// MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004052// MIPS64EL:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004053// MIPS64EL:#define _MIPS_SIM _ABI64
4054// MIPS64EL:#define _MIPS_SZINT 32
4055// MIPS64EL:#define _MIPS_SZLONG 64
4056// MIPS64EL:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004057// MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004058// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004059// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
4060// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
4061// MIPS64EL:#define __CHAR_BIT__ 8
4062// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
4063// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4064// MIPS64EL:#define __DBL_DIG__ 15
4065// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
4066// MIPS64EL:#define __DBL_HAS_DENORM__ 1
4067// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
4068// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
4069// MIPS64EL:#define __DBL_MANT_DIG__ 53
4070// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
4071// MIPS64EL:#define __DBL_MAX_EXP__ 1024
4072// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
4073// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
4074// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
4075// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004076// MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004077// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4078// MIPS64EL:#define __FLT_DIG__ 6
4079// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
4080// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
4081// MIPS64EL:#define __FLT_HAS_DENORM__ 1
4082// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
4083// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
4084// MIPS64EL:#define __FLT_MANT_DIG__ 24
4085// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
4086// MIPS64EL:#define __FLT_MAX_EXP__ 128
4087// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
4088// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
4089// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
4090// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
4091// MIPS64EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004092// MIPS64EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004093// MIPS64EL:#define __INT16_FMTd__ "hd"
4094// MIPS64EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004095// MIPS64EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004096// MIPS64EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004097// MIPS64EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004098// MIPS64EL:#define __INT32_FMTd__ "d"
4099// MIPS64EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004100// MIPS64EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004101// MIPS64EL:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004102// MIPS64EL:#define __INT64_C_SUFFIX__ L
4103// MIPS64EL:#define __INT64_FMTd__ "ld"
4104// MIPS64EL:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004105// MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004106// MIPS64EL:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004107// MIPS64EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004108// MIPS64EL:#define __INT8_FMTd__ "hhd"
4109// MIPS64EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004110// MIPS64EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004111// MIPS64EL:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004112// MIPS64EL:#define __INTMAX_C_SUFFIX__ L
4113// MIPS64EL:#define __INTMAX_FMTd__ "ld"
4114// MIPS64EL:#define __INTMAX_FMTi__ "li"
4115// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
4116// MIPS64EL:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004117// MIPS64EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004118// MIPS64EL:#define __INTPTR_FMTd__ "ld"
4119// MIPS64EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004120// MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004121// MIPS64EL:#define __INTPTR_TYPE__ long int
4122// MIPS64EL:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004123// MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
4124// MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004125// MIPS64EL:#define __INT_FAST16_MAX__ 32767
4126// MIPS64EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004127// MIPS64EL:#define __INT_FAST32_FMTd__ "d"
4128// MIPS64EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004129// MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
4130// MIPS64EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004131// MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
4132// MIPS64EL:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004133// MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
4134// MIPS64EL:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004135// MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
4136// MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004137// MIPS64EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004138// MIPS64EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004139// MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
4140// MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004141// MIPS64EL:#define __INT_LEAST16_MAX__ 32767
4142// MIPS64EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004143// MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
4144// MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004145// MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
4146// MIPS64EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004147// MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
4148// MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004149// MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
4150// MIPS64EL:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004151// MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
4152// MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004153// MIPS64EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004154// MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004155// MIPS64EL:#define __INT_MAX__ 2147483647
4156// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4157// MIPS64EL:#define __LDBL_DIG__ 33
4158// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4159// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
4160// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
4161// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
4162// MIPS64EL:#define __LDBL_MANT_DIG__ 113
4163// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
4164// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
4165// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4166// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
4167// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
4168// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
Robert Lytton2c942c62014-03-10 12:06:29 +00004169// MIPS64EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004170// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
4171// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004172// MIPS64EL:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004173// MIPS64EL:#define __MIPSEL 1
4174// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004175// MIPS64EL:#define __POINTER_WIDTH__ 64
4176// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
4177// MIPS64EL:#define __PTRDIFF_TYPE__ long int
4178// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004179// MIPS64EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004180// MIPS64EL:#define __SCHAR_MAX__ 127
4181// MIPS64EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004182// MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004183// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
4184// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
4185// MIPS64EL:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004186// MIPS64EL:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004187// MIPS64EL:#define __SIZEOF_INT__ 4
4188// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
4189// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
4190// MIPS64EL:#define __SIZEOF_LONG__ 8
4191// MIPS64EL:#define __SIZEOF_POINTER__ 8
4192// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
4193// MIPS64EL:#define __SIZEOF_SHORT__ 2
4194// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
4195// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
4196// MIPS64EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004197// MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004198// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
4199// MIPS64EL:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004200// MIPS64EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004201// MIPS64EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004202// MIPS64EL:#define __UINT16_TYPE__ unsigned short
4203// MIPS64EL:#define __UINT32_C_SUFFIX__ U
4204// MIPS64EL:#define __UINT32_MAX__ 4294967295U
4205// MIPS64EL:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004206// MIPS64EL:#define __UINT64_C_SUFFIX__ UL
4207// MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
4208// MIPS64EL:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004209// MIPS64EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004210// MIPS64EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004211// MIPS64EL:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004212// MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
4213// MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
4214// MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004215// MIPS64EL:#define __UINTMAX_WIDTH__ 64
4216// MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
4217// MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
4218// MIPS64EL:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004219// MIPS64EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004220// MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
4221// MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
4222// MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
4223// MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4224// MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004225// MIPS64EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004226// MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004227// MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004228// MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
4229// MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
4230// MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
4231// MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4232// MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004233// MIPS64EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004234// MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004235// MIPS64EL:#define __USER_LABEL_PREFIX__ _
4236// MIPS64EL:#define __WCHAR_MAX__ 2147483647
4237// MIPS64EL:#define __WCHAR_TYPE__ int
4238// MIPS64EL:#define __WCHAR_WIDTH__ 32
4239// MIPS64EL:#define __WINT_TYPE__ int
4240// MIPS64EL:#define __WINT_WIDTH__ 32
4241// MIPS64EL:#define __clang__ 1
4242// MIPS64EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004243// MIPS64EL:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004244// MIPS64EL:#define __mips64 1
4245// MIPS64EL:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004246// MIPS64EL:#define __mips__ 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004247// MIPS64EL:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004248// MIPS64EL:#define __mips_hard_float 1
4249// MIPS64EL:#define __mips_n64 1
4250// MIPS64EL:#define _mips 1
4251// MIPS64EL:#define mips 1
4252//
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004253// Check MIPS arch and isa macros
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004254//
4255// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4256// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004257// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004258//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004259// MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
4260// MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004261// MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4262// MIPS-ARCH-DEF32:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004263//
4264// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
4265// RUN: -target-cpu mips32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004266// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004267//
4268// MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
4269// MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004270// MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4271// MIPS-ARCH-32:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004272//
4273// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4274// RUN: -target-cpu mips32r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004275// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004276//
4277// MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
4278// MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004279// MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
4280// MIPS-ARCH-32R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004281//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004282// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004283// RUN: -target-cpu mips32r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004284// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004285//
4286// MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
4287// MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
4288// MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
4289// MIPS-ARCH-32R3:#define __mips_isa_rev 3
4290//
4291// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4292// RUN: -target-cpu mips32r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004293// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004294//
4295// MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
4296// MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
4297// MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
4298// MIPS-ARCH-32R5:#define __mips_isa_rev 5
4299//
4300// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004301// RUN: -target-cpu mips32r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004302// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004303//
4304// MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
4305// MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
4306// MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
4307// MIPS-ARCH-32R6:#define __mips_isa_rev 6
4308//
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004309// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4310// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004311// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004312//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004313// MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
4314// MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004315// MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4316// MIPS-ARCH-DEF64:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004317//
4318// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4319// RUN: -target-cpu mips64 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004320// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004321//
4322// MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
4323// MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004324// MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4325// MIPS-ARCH-64:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004326//
4327// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4328// RUN: -target-cpu mips64r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004329// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004330//
4331// MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
4332// MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004333// MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
4334// MIPS-ARCH-64R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004335//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004336// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004337// RUN: -target-cpu mips64r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004338// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004339//
4340// MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
4341// MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
4342// MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
4343// MIPS-ARCH-64R3:#define __mips_isa_rev 3
4344//
4345// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4346// RUN: -target-cpu mips64r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004347// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004348//
4349// MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
4350// MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
4351// MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
4352// MIPS-ARCH-64R5:#define __mips_isa_rev 5
4353//
4354// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004355// RUN: -target-cpu mips64r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004356// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004357//
4358// MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
4359// MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
4360// MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
4361// MIPS-ARCH-64R6:#define __mips_isa_rev 6
4362//
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004363// Check MIPS float ABI macros
4364//
4365// RUN: %clang_cc1 -E -dM -ffreestanding \
4366// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004367// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004368// MIPS-FABI-HARD:#define __mips_hard_float 1
4369//
4370// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
4371// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004372// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004373// MIPS-FABI-SOFT:#define __mips_soft_float 1
4374//
4375// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
4376// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004377// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyand3d173d2012-06-05 13:06:56 +00004378// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004379// MIPS-FABI-SINGLE:#define __mips_single_float 1
4380//
Simon Atanasyan16071912013-04-14 14:07:30 +00004381// RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
4382// RUN: -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004383// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
Simon Atanasyan16071912013-04-14 14:07:30 +00004384// MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
4385// MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
4386//
Simon Atanasyan72244b62012-07-05 16:06:06 +00004387// Check MIPS features macros
4388//
4389// RUN: %clang_cc1 -target-feature +mips16 \
4390// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004391// RUN: | FileCheck -match-full-lines -check-prefix MIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004392// MIPS16:#define __mips16 1
4393//
4394// RUN: %clang_cc1 -target-feature -mips16 \
4395// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004396// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004397// NOMIPS16-NOT:#define __mips16 1
4398//
Simon Atanasyan60777612013-04-14 14:07:51 +00004399// RUN: %clang_cc1 -target-feature +micromips \
4400// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004401// RUN: | FileCheck -match-full-lines -check-prefix MICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004402// MICROMIPS:#define __mips_micromips 1
4403//
4404// RUN: %clang_cc1 -target-feature -micromips \
4405// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004406// RUN: | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004407// NOMICROMIPS-NOT:#define __mips_micromips 1
4408//
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004409// RUN: %clang_cc1 -target-feature +dsp \
4410// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004411// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004412// MIPS-DSP:#define __mips_dsp 1
4413// MIPS-DSP:#define __mips_dsp_rev 1
4414// MIPS-DSP-NOT:#define __mips_dspr2 1
4415//
4416// RUN: %clang_cc1 -target-feature +dspr2 \
4417// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004418// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004419// MIPS-DSPR2:#define __mips_dsp 1
4420// MIPS-DSPR2:#define __mips_dsp_rev 2
4421// MIPS-DSPR2:#define __mips_dspr2 1
4422//
Jack Carter44ff1e52013-08-12 17:20:29 +00004423// RUN: %clang_cc1 -target-feature +msa \
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 MIPS-MSA %s
Jack Carter44ff1e52013-08-12 17:20:29 +00004426// MIPS-MSA:#define __mips_msa 1
4427//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004428// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004429// 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 MIPS-NAN2008 %s
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004431// MIPS-NAN2008:#define __mips_nan2008 1
4432//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004433// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
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 NOMIPS-NAN2008 %s
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004436// NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
4437//
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004438// RUN: %clang_cc1 -target-feature -fp64 \
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 MIPS32-MFP32 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004441// MIPS32-MFP32:#define _MIPS_FPSET 16
4442// MIPS32-MFP32:#define __mips_fpr 32
4443//
4444// RUN: %clang_cc1 -target-feature +fp64 \
4445// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004446// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004447// MIPS32-MFP64:#define _MIPS_FPSET 32
4448// MIPS32-MFP64:#define __mips_fpr 64
4449//
4450// RUN: %clang_cc1 -target-feature +single-float \
4451// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004452// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004453// MIPS32-MFP32SF:#define _MIPS_FPSET 32
4454// MIPS32-MFP32SF:#define __mips_fpr 32
4455//
4456// RUN: %clang_cc1 -target-feature +fp64 \
4457// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004458// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004459// MIPS64-MFP64:#define _MIPS_FPSET 32
4460// MIPS64-MFP64:#define __mips_fpr 64
4461//
4462// RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
4463// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004464// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004465// MIPS64-NOMFP64:#define _MIPS_FPSET 32
4466// MIPS64-NOMFP64:#define __mips_fpr 32
4467//
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004468// RUN: %clang_cc1 -target-cpu mips32r6 \
4469// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004470// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004471// RUN: %clang_cc1 -target-cpu mips64r6 \
4472// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004473// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004474// MIPS-XXR6:#define _MIPS_FPSET 32
4475// MIPS-XXR6:#define __mips_fpr 64
4476// MIPS-XXR6:#define __mips_nan2008 1
4477//
James Y Knightc97efa42016-02-11 16:51:29 +00004478// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MSP430 %s
Chris Lattnere963d092009-10-29 04:55:36 +00004479//
4480// MSP430:#define MSP430 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004481// MSP430-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004482// MSP430:#define __BIGGEST_ALIGNMENT__ 2
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004483// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00004484// MSP430:#define __CHAR16_TYPE__ unsigned short
4485// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00004486// MSP430:#define __CHAR_BIT__ 8
4487// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4488// MSP430:#define __DBL_DIG__ 15
4489// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
4490// MSP430:#define __DBL_HAS_DENORM__ 1
4491// MSP430:#define __DBL_HAS_INFINITY__ 1
4492// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
4493// MSP430:#define __DBL_MANT_DIG__ 53
4494// MSP430:#define __DBL_MAX_10_EXP__ 308
4495// MSP430:#define __DBL_MAX_EXP__ 1024
4496// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
4497// MSP430:#define __DBL_MIN_10_EXP__ (-307)
4498// MSP430:#define __DBL_MIN_EXP__ (-1021)
4499// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004500// MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00004501// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4502// MSP430:#define __FLT_DIG__ 6
4503// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
4504// MSP430:#define __FLT_EVAL_METHOD__ 0
4505// MSP430:#define __FLT_HAS_DENORM__ 1
4506// MSP430:#define __FLT_HAS_INFINITY__ 1
4507// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
4508// MSP430:#define __FLT_MANT_DIG__ 24
4509// MSP430:#define __FLT_MAX_10_EXP__ 38
4510// MSP430:#define __FLT_MAX_EXP__ 128
4511// MSP430:#define __FLT_MAX__ 3.40282347e+38F
4512// MSP430:#define __FLT_MIN_10_EXP__ (-37)
4513// MSP430:#define __FLT_MIN_EXP__ (-125)
4514// MSP430:#define __FLT_MIN__ 1.17549435e-38F
4515// MSP430:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004516// MSP430:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004517// MSP430:#define __INT16_FMTd__ "hd"
4518// MSP430:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004519// MSP430:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004520// MSP430:#define __INT16_TYPE__ short
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00004521// MSP430:#define __INT32_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004522// MSP430:#define __INT32_FMTd__ "ld"
4523// MSP430:#define __INT32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004524// MSP430:#define __INT32_MAX__ 2147483647L
Chris Lattner55c98772009-11-12 08:08:27 +00004525// MSP430:#define __INT32_TYPE__ long int
JF Bastienab8d0a02014-06-25 01:31:33 +00004526// MSP430:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004527// MSP430:#define __INT64_FMTd__ "lld"
4528// MSP430:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004529// MSP430:#define __INT64_MAX__ 9223372036854775807LL
4530// MSP430:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004531// MSP430:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004532// MSP430:#define __INT8_FMTd__ "hhd"
4533// MSP430:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004534// MSP430:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004535// MSP430:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004536// MSP430:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004537// MSP430:#define __INTMAX_FMTd__ "lld"
4538// MSP430:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikovef412902013-07-01 19:42:40 +00004539// MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
4540// MSP430:#define __INTMAX_TYPE__ long long int
4541// MSP430:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004542// MSP430:#define __INTPTR_FMTd__ "d"
4543// MSP430:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004544// MSP430:#define __INTPTR_MAX__ 32767
Anton Korobeynikovef412902013-07-01 19:42:40 +00004545// MSP430:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00004546// MSP430:#define __INTPTR_WIDTH__ 16
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004547// MSP430:#define __INT_FAST16_FMTd__ "hd"
4548// MSP430:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004549// MSP430:#define __INT_FAST16_MAX__ 32767
4550// MSP430:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004551// MSP430:#define __INT_FAST32_FMTd__ "ld"
4552// MSP430:#define __INT_FAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004553// MSP430:#define __INT_FAST32_MAX__ 2147483647L
4554// MSP430:#define __INT_FAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004555// MSP430:#define __INT_FAST64_FMTd__ "lld"
4556// MSP430:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004557// MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
4558// MSP430:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004559// MSP430:#define __INT_FAST8_FMTd__ "hhd"
4560// MSP430:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004561// MSP430:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004562// MSP430:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004563// MSP430:#define __INT_LEAST16_FMTd__ "hd"
4564// MSP430:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004565// MSP430:#define __INT_LEAST16_MAX__ 32767
4566// MSP430:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004567// MSP430:#define __INT_LEAST32_FMTd__ "ld"
4568// MSP430:#define __INT_LEAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004569// MSP430:#define __INT_LEAST32_MAX__ 2147483647L
4570// MSP430:#define __INT_LEAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004571// MSP430:#define __INT_LEAST64_FMTd__ "lld"
4572// MSP430:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004573// MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
4574// MSP430:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004575// MSP430:#define __INT_LEAST8_FMTd__ "hhd"
4576// MSP430:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004577// MSP430:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004578// MSP430:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00004579// MSP430:#define __INT_MAX__ 32767
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004580// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00004581// MSP430:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004582// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00004583// MSP430:#define __LDBL_HAS_DENORM__ 1
4584// MSP430:#define __LDBL_HAS_INFINITY__ 1
4585// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
4586// MSP430:#define __LDBL_MANT_DIG__ 53
4587// MSP430:#define __LDBL_MAX_10_EXP__ 308
4588// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004589// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00004590// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
4591// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004592// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004593// MSP430:#define __LITTLE_ENDIAN__ 1
Anton Korobeynikov485810e2010-01-14 21:36:52 +00004594// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00004595// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004596// MSP430-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00004597// MSP430:#define __MSP430__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00004598// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck9b25f782009-11-19 13:18:59 +00004599// MSP430:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00004600// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004601// MSP430:#define __SCHAR_MAX__ 127
4602// MSP430:#define __SHRT_MAX__ 32767
James Y Knightc97efa42016-02-11 16:51:29 +00004603// MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
Ken Dyckadc85112009-11-22 15:41:04 +00004604// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00004605// MSP430:#define __SIZEOF_DOUBLE__ 8
4606// MSP430:#define __SIZEOF_FLOAT__ 4
4607// MSP430:#define __SIZEOF_INT__ 2
4608// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
4609// MSP430:#define __SIZEOF_LONG_LONG__ 8
4610// MSP430:#define __SIZEOF_LONG__ 4
4611// MSP430:#define __SIZEOF_POINTER__ 2
4612// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
4613// MSP430:#define __SIZEOF_SHORT__ 2
4614// MSP430:#define __SIZEOF_SIZE_T__ 2
4615// MSP430:#define __SIZEOF_WCHAR_T__ 2
4616// MSP430:#define __SIZEOF_WINT_T__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004617// MSP430:#define __SIZE_MAX__ 65535U
Chris Lattnere963d092009-10-29 04:55:36 +00004618// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00004619// MSP430:#define __SIZE_WIDTH__ 16
JF Bastienab8d0a02014-06-25 01:31:33 +00004620// MSP430:#define __UINT16_C_SUFFIX__ U
James Y Knightc97efa42016-02-11 16:51:29 +00004621// MSP430:#define __UINT16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004622// MSP430:#define __UINT16_TYPE__ unsigned short
4623// MSP430:#define __UINT32_C_SUFFIX__ UL
4624// MSP430:#define __UINT32_MAX__ 4294967295UL
4625// MSP430:#define __UINT32_TYPE__ long unsigned int
4626// MSP430:#define __UINT64_C_SUFFIX__ ULL
4627// MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
4628// MSP430:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004629// MSP430:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004630// MSP430:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004631// MSP430:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004632// MSP430:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00004633// MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikovef412902013-07-01 19:42:40 +00004634// MSP430:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004635// MSP430:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004636// MSP430:#define __UINTPTR_MAX__ 65535U
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00004637// MSP430:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004638// MSP430:#define __UINTPTR_WIDTH__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00004639// MSP430:#define __UINT_FAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004640// MSP430:#define __UINT_FAST16_TYPE__ unsigned short
4641// MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
4642// MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
4643// MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
4644// MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004645// MSP430:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004646// MSP430:#define __UINT_FAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00004647// MSP430:#define __UINT_LEAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00004648// MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
4649// MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
4650// MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
4651// MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4652// MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004653// MSP430:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004654// MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
Chris Lattnere963d092009-10-29 04:55:36 +00004655// MSP430:#define __USER_LABEL_PREFIX__ _
Chris Lattner0fb5bbd2009-11-12 08:04:33 +00004656// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004657// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00004658// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004659// MSP430:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00004660// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00004661// MSP430:#define __clang__ 1
4662//
James Y Knightc97efa42016-02-11 16:51:29 +00004663// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX32 %s
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004664//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004665// NVPTX32-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004666// NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004667// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004668// NVPTX32:#define __CHAR16_TYPE__ unsigned short
4669// NVPTX32:#define __CHAR32_TYPE__ unsigned int
4670// NVPTX32:#define __CHAR_BIT__ 8
4671// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
4672// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4673// NVPTX32:#define __DBL_DIG__ 15
4674// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
4675// NVPTX32:#define __DBL_HAS_DENORM__ 1
4676// NVPTX32:#define __DBL_HAS_INFINITY__ 1
4677// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
4678// NVPTX32:#define __DBL_MANT_DIG__ 53
4679// NVPTX32:#define __DBL_MAX_10_EXP__ 308
4680// NVPTX32:#define __DBL_MAX_EXP__ 1024
4681// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
4682// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
4683// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
4684// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004685// NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004686// NVPTX32:#define __FINITE_MATH_ONLY__ 0
4687// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4688// NVPTX32:#define __FLT_DIG__ 6
4689// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
4690// NVPTX32:#define __FLT_EVAL_METHOD__ 0
4691// NVPTX32:#define __FLT_HAS_DENORM__ 1
4692// NVPTX32:#define __FLT_HAS_INFINITY__ 1
4693// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
4694// NVPTX32:#define __FLT_MANT_DIG__ 24
4695// NVPTX32:#define __FLT_MAX_10_EXP__ 38
4696// NVPTX32:#define __FLT_MAX_EXP__ 128
4697// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
4698// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
4699// NVPTX32:#define __FLT_MIN_EXP__ (-125)
4700// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
4701// NVPTX32:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004702// NVPTX32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004703// NVPTX32:#define __INT16_FMTd__ "hd"
4704// NVPTX32:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004705// NVPTX32:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004706// NVPTX32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004707// NVPTX32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004708// NVPTX32:#define __INT32_FMTd__ "d"
4709// NVPTX32:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004710// NVPTX32:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004711// NVPTX32:#define __INT32_TYPE__ int
4712// NVPTX32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004713// NVPTX32:#define __INT64_FMTd__ "lld"
4714// NVPTX32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004715// NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004716// NVPTX32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004717// NVPTX32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004718// NVPTX32:#define __INT8_FMTd__ "hhd"
4719// NVPTX32:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004720// NVPTX32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004721// NVPTX32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004722// NVPTX32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004723// NVPTX32:#define __INTMAX_FMTd__ "lld"
4724// NVPTX32:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004725// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
4726// NVPTX32:#define __INTMAX_TYPE__ long long int
4727// NVPTX32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004728// NVPTX32:#define __INTPTR_FMTd__ "d"
4729// NVPTX32:#define __INTPTR_FMTi__ "i"
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00004730// NVPTX32:#define __INTPTR_MAX__ 2147483647
4731// NVPTX32:#define __INTPTR_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004732// NVPTX32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004733// NVPTX32:#define __INT_FAST16_FMTd__ "hd"
4734// NVPTX32:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004735// NVPTX32:#define __INT_FAST16_MAX__ 32767
4736// NVPTX32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004737// NVPTX32:#define __INT_FAST32_FMTd__ "d"
4738// NVPTX32:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004739// NVPTX32:#define __INT_FAST32_MAX__ 2147483647
4740// NVPTX32:#define __INT_FAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00004741// NVPTX32:#define __INT_FAST64_FMTd__ "lld"
4742// NVPTX32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004743// NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004744// NVPTX32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004745// NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
4746// NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004747// NVPTX32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004748// NVPTX32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004749// NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
4750// NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004751// NVPTX32:#define __INT_LEAST16_MAX__ 32767
4752// NVPTX32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004753// NVPTX32:#define __INT_LEAST32_FMTd__ "d"
4754// NVPTX32:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004755// NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
4756// NVPTX32:#define __INT_LEAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00004757// NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
4758// NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004759// NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004760// NVPTX32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004761// NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
4762// NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004763// NVPTX32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004764// NVPTX32:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004765// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004766// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004767// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004768// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004769// NVPTX32:#define __LDBL_HAS_DENORM__ 1
4770// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
4771// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
4772// NVPTX32:#define __LDBL_MANT_DIG__ 53
4773// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
4774// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004775// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004776// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
4777// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004778// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004779// NVPTX32:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004780// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004781// NVPTX32:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004782// NVPTX32-NOT:#define __LP64__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004783// NVPTX32:#define __NVPTX__ 1
4784// NVPTX32:#define __POINTER_WIDTH__ 32
4785// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00004786// NVPTX32:#define __PTRDIFF_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004787// NVPTX32:#define __PTRDIFF_WIDTH__ 32
4788// NVPTX32:#define __PTX__ 1
4789// NVPTX32:#define __SCHAR_MAX__ 127
4790// NVPTX32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004791// NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004792// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
4793// NVPTX32:#define __SIZEOF_DOUBLE__ 8
4794// NVPTX32:#define __SIZEOF_FLOAT__ 4
4795// NVPTX32:#define __SIZEOF_INT__ 4
4796// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
4797// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
Artem Belevich236cfdc2015-09-28 22:54:08 +00004798// NVPTX32:#define __SIZEOF_LONG__ 4
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004799// NVPTX32:#define __SIZEOF_POINTER__ 4
4800// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
4801// NVPTX32:#define __SIZEOF_SHORT__ 2
4802// NVPTX32:#define __SIZEOF_SIZE_T__ 4
4803// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
4804// NVPTX32:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004805// NVPTX32:#define __SIZE_MAX__ 4294967295U
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004806// NVPTX32:#define __SIZE_TYPE__ unsigned int
4807// NVPTX32:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00004808// NVPTX32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004809// NVPTX32:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004810// NVPTX32:#define __UINT16_TYPE__ unsigned short
4811// NVPTX32:#define __UINT32_C_SUFFIX__ U
4812// NVPTX32:#define __UINT32_MAX__ 4294967295U
4813// NVPTX32:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00004814// NVPTX32:#define __UINT64_C_SUFFIX__ ULL
4815// NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
4816// NVPTX32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004817// NVPTX32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004818// NVPTX32:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004819// NVPTX32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004820// NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00004821// NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004822// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004823// NVPTX32:#define __UINTMAX_WIDTH__ 64
4824// NVPTX32:#define __UINTPTR_MAX__ 4294967295U
4825// NVPTX32:#define __UINTPTR_TYPE__ unsigned int
4826// NVPTX32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004827// NVPTX32:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004828// NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
4829// NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
4830// NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004831// NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004832// NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004833// NVPTX32:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004834// NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004835// NVPTX32:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004836// NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
4837// NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
4838// NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004839// NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00004840// NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004841// NVPTX32:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004842// NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004843// NVPTX32:#define __USER_LABEL_PREFIX__ _
4844// NVPTX32:#define __WCHAR_MAX__ 2147483647
4845// NVPTX32:#define __WCHAR_TYPE__ int
4846// NVPTX32:#define __WCHAR_WIDTH__ 32
4847// NVPTX32:#define __WINT_TYPE__ int
4848// NVPTX32:#define __WINT_WIDTH__ 32
4849//
James Y Knightc97efa42016-02-11 16:51:29 +00004850// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX64 %s
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004851//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004852// NVPTX64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00004853// NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004854// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004855// NVPTX64:#define __CHAR16_TYPE__ unsigned short
4856// NVPTX64:#define __CHAR32_TYPE__ unsigned int
4857// NVPTX64:#define __CHAR_BIT__ 8
4858// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
4859// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4860// NVPTX64:#define __DBL_DIG__ 15
4861// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
4862// NVPTX64:#define __DBL_HAS_DENORM__ 1
4863// NVPTX64:#define __DBL_HAS_INFINITY__ 1
4864// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
4865// NVPTX64:#define __DBL_MANT_DIG__ 53
4866// NVPTX64:#define __DBL_MAX_10_EXP__ 308
4867// NVPTX64:#define __DBL_MAX_EXP__ 1024
4868// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
4869// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
4870// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
4871// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004872// NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004873// NVPTX64:#define __FINITE_MATH_ONLY__ 0
4874// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4875// NVPTX64:#define __FLT_DIG__ 6
4876// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
4877// NVPTX64:#define __FLT_EVAL_METHOD__ 0
4878// NVPTX64:#define __FLT_HAS_DENORM__ 1
4879// NVPTX64:#define __FLT_HAS_INFINITY__ 1
4880// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
4881// NVPTX64:#define __FLT_MANT_DIG__ 24
4882// NVPTX64:#define __FLT_MAX_10_EXP__ 38
4883// NVPTX64:#define __FLT_MAX_EXP__ 128
4884// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
4885// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
4886// NVPTX64:#define __FLT_MIN_EXP__ (-125)
4887// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
4888// NVPTX64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004889// NVPTX64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004890// NVPTX64:#define __INT16_FMTd__ "hd"
4891// NVPTX64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004892// NVPTX64:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004893// NVPTX64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004894// NVPTX64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004895// NVPTX64:#define __INT32_FMTd__ "d"
4896// NVPTX64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004897// NVPTX64:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004898// NVPTX64:#define __INT32_TYPE__ int
4899// NVPTX64:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004900// NVPTX64:#define __INT64_FMTd__ "lld"
4901// NVPTX64:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00004902// NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004903// NVPTX64:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004904// NVPTX64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004905// NVPTX64:#define __INT8_FMTd__ "hhd"
4906// NVPTX64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004907// NVPTX64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004908// NVPTX64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00004909// NVPTX64:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004910// NVPTX64:#define __INTMAX_FMTd__ "lld"
4911// NVPTX64:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004912// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
4913// NVPTX64:#define __INTMAX_TYPE__ long long int
4914// NVPTX64:#define __INTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00004915// NVPTX64:#define __INTPTR_FMTd__ "ld"
4916// NVPTX64:#define __INTPTR_FMTi__ "li"
4917// NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
4918// NVPTX64:#define __INTPTR_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004919// NVPTX64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004920// NVPTX64:#define __INT_FAST16_FMTd__ "hd"
4921// NVPTX64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004922// NVPTX64:#define __INT_FAST16_MAX__ 32767
4923// NVPTX64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004924// NVPTX64:#define __INT_FAST32_FMTd__ "d"
4925// NVPTX64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004926// NVPTX64:#define __INT_FAST32_MAX__ 2147483647
4927// NVPTX64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004928// NVPTX64:#define __INT_FAST64_FMTd__ "ld"
4929// NVPTX64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004930// NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
4931// NVPTX64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004932// NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
4933// NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004934// NVPTX64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004935// NVPTX64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004936// NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
4937// NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004938// NVPTX64:#define __INT_LEAST16_MAX__ 32767
4939// NVPTX64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004940// NVPTX64:#define __INT_LEAST32_FMTd__ "d"
4941// NVPTX64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004942// NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
4943// NVPTX64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004944// NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
4945// NVPTX64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004946// NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
4947// NVPTX64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004948// NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
4949// NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004950// NVPTX64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004951// NVPTX64:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004952// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004953// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004954// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004955// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004956// NVPTX64:#define __LDBL_HAS_DENORM__ 1
4957// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
4958// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
4959// NVPTX64:#define __LDBL_MANT_DIG__ 53
4960// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
4961// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004962// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004963// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
4964// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00004965// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00004966// NVPTX64:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004967// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
4968// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004969// NVPTX64:#define __LP64__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004970// NVPTX64:#define __NVPTX__ 1
4971// NVPTX64:#define __POINTER_WIDTH__ 64
4972// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00004973// NVPTX64:#define __PTRDIFF_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004974// NVPTX64:#define __PTRDIFF_WIDTH__ 64
4975// NVPTX64:#define __PTX__ 1
4976// NVPTX64:#define __SCHAR_MAX__ 127
4977// NVPTX64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004978// NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004979// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
4980// NVPTX64:#define __SIZEOF_DOUBLE__ 8
4981// NVPTX64:#define __SIZEOF_FLOAT__ 4
4982// NVPTX64:#define __SIZEOF_INT__ 4
4983// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
4984// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
4985// NVPTX64:#define __SIZEOF_LONG__ 8
4986// NVPTX64:#define __SIZEOF_POINTER__ 8
4987// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
4988// NVPTX64:#define __SIZEOF_SHORT__ 2
4989// NVPTX64:#define __SIZEOF_SIZE_T__ 8
4990// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
4991// NVPTX64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004992// NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
Eli Bendersky15f63422015-04-01 18:29:27 +00004993// NVPTX64:#define __SIZE_TYPE__ long unsigned int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00004994// NVPTX64:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004995// NVPTX64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004996// NVPTX64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004997// NVPTX64:#define __UINT16_TYPE__ unsigned short
4998// NVPTX64:#define __UINT32_C_SUFFIX__ U
4999// NVPTX64:#define __UINT32_MAX__ 4294967295U
5000// NVPTX64:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005001// NVPTX64:#define __UINT64_C_SUFFIX__ ULL
5002// NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
5003// NVPTX64:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005004// NVPTX64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005005// NVPTX64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005006// NVPTX64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005007// NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005008// NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005009// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005010// NVPTX64:#define __UINTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005011// NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
5012// NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005013// NVPTX64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005014// NVPTX64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005015// NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
5016// NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
5017// NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
5018// NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5019// NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005020// NVPTX64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005021// NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005022// NVPTX64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005023// NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
5024// NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
5025// NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
5026// NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5027// NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005028// NVPTX64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005029// NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005030// NVPTX64:#define __USER_LABEL_PREFIX__ _
5031// NVPTX64:#define __WCHAR_MAX__ 2147483647
5032// NVPTX64:#define __WCHAR_TYPE__ int
5033// NVPTX64:#define __WCHAR_WIDTH__ 32
5034// NVPTX64:#define __WINT_TYPE__ int
5035// NVPTX64:#define __WINT_WIDTH__ 32
5036//
James Y Knightc97efa42016-02-11 16:51:29 +00005037// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -match-full-lines -check-prefix PPC603E %s
Hal Finkel6b984f02012-07-03 16:51:04 +00005038//
5039// PPC603E:#define _ARCH_603 1
5040// PPC603E:#define _ARCH_603E 1
5041// PPC603E:#define _ARCH_PPC 1
5042// PPC603E:#define _ARCH_PPCGR 1
5043// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005044// PPC603E-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00005045// PPC603E:#define __BIGGEST_ALIGNMENT__ 8
Hal Finkel6b984f02012-07-03 16:51:04 +00005046// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005047// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel6b984f02012-07-03 16:51:04 +00005048// PPC603E:#define __CHAR16_TYPE__ unsigned short
5049// PPC603E:#define __CHAR32_TYPE__ unsigned int
5050// PPC603E:#define __CHAR_BIT__ 8
5051// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5052// PPC603E:#define __DBL_DIG__ 15
5053// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
5054// PPC603E:#define __DBL_HAS_DENORM__ 1
5055// PPC603E:#define __DBL_HAS_INFINITY__ 1
5056// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
5057// PPC603E:#define __DBL_MANT_DIG__ 53
5058// PPC603E:#define __DBL_MAX_10_EXP__ 308
5059// PPC603E:#define __DBL_MAX_EXP__ 1024
5060// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
5061// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
5062// PPC603E:#define __DBL_MIN_EXP__ (-1021)
5063// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005064// PPC603E:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Hal Finkel6b984f02012-07-03 16:51:04 +00005065// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5066// PPC603E:#define __FLT_DIG__ 6
5067// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
5068// PPC603E:#define __FLT_EVAL_METHOD__ 0
5069// PPC603E:#define __FLT_HAS_DENORM__ 1
5070// PPC603E:#define __FLT_HAS_INFINITY__ 1
5071// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
5072// PPC603E:#define __FLT_MANT_DIG__ 24
5073// PPC603E:#define __FLT_MAX_10_EXP__ 38
5074// PPC603E:#define __FLT_MAX_EXP__ 128
5075// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
5076// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
5077// PPC603E:#define __FLT_MIN_EXP__ (-125)
5078// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
5079// PPC603E:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005080// PPC603E:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005081// PPC603E:#define __INT16_FMTd__ "hd"
5082// PPC603E:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005083// PPC603E:#define __INT16_MAX__ 32767
Hal Finkel6b984f02012-07-03 16:51:04 +00005084// PPC603E:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005085// PPC603E:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005086// PPC603E:#define __INT32_FMTd__ "d"
5087// PPC603E:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005088// PPC603E:#define __INT32_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005089// PPC603E:#define __INT32_TYPE__ int
5090// PPC603E:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005091// PPC603E:#define __INT64_FMTd__ "lld"
5092// PPC603E:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005093// PPC603E:#define __INT64_MAX__ 9223372036854775807LL
Hal Finkel6b984f02012-07-03 16:51:04 +00005094// PPC603E:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005095// PPC603E:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005096// PPC603E:#define __INT8_FMTd__ "hhd"
5097// PPC603E:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005098// PPC603E:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005099// PPC603E:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005100// PPC603E:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005101// PPC603E:#define __INTMAX_FMTd__ "lld"
5102// PPC603E:#define __INTMAX_FMTi__ "lli"
Hal Finkel6b984f02012-07-03 16:51:04 +00005103// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
5104// PPC603E:#define __INTMAX_TYPE__ long long int
5105// PPC603E:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005106// PPC603E:#define __INTPTR_FMTd__ "ld"
5107// PPC603E:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005108// PPC603E:#define __INTPTR_MAX__ 2147483647L
Hal Finkel6b984f02012-07-03 16:51:04 +00005109// PPC603E:#define __INTPTR_TYPE__ long int
5110// PPC603E:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005111// PPC603E:#define __INT_FAST16_FMTd__ "hd"
5112// PPC603E:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005113// PPC603E:#define __INT_FAST16_MAX__ 32767
5114// PPC603E:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005115// PPC603E:#define __INT_FAST32_FMTd__ "d"
5116// PPC603E:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005117// PPC603E:#define __INT_FAST32_MAX__ 2147483647
5118// PPC603E:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005119// PPC603E:#define __INT_FAST64_FMTd__ "lld"
5120// PPC603E:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005121// PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
5122// PPC603E:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005123// PPC603E:#define __INT_FAST8_FMTd__ "hhd"
5124// PPC603E:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005125// PPC603E:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005126// PPC603E:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005127// PPC603E:#define __INT_LEAST16_FMTd__ "hd"
5128// PPC603E:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005129// PPC603E:#define __INT_LEAST16_MAX__ 32767
5130// PPC603E:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005131// PPC603E:#define __INT_LEAST32_FMTd__ "d"
5132// PPC603E:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005133// PPC603E:#define __INT_LEAST32_MAX__ 2147483647
5134// PPC603E:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005135// PPC603E:#define __INT_LEAST64_FMTd__ "lld"
5136// PPC603E:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005137// PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5138// PPC603E:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005139// PPC603E:#define __INT_LEAST8_FMTd__ "hhd"
5140// PPC603E:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005141// PPC603E:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005142// PPC603E:#define __INT_LEAST8_TYPE__ signed char
Hal Finkel6b984f02012-07-03 16:51:04 +00005143// PPC603E:#define __INT_MAX__ 2147483647
5144// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5145// PPC603E:#define __LDBL_DIG__ 31
5146// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5147// PPC603E:#define __LDBL_HAS_DENORM__ 1
5148// PPC603E:#define __LDBL_HAS_INFINITY__ 1
5149// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
5150// PPC603E:#define __LDBL_MANT_DIG__ 106
5151// PPC603E:#define __LDBL_MAX_10_EXP__ 308
5152// PPC603E:#define __LDBL_MAX_EXP__ 1024
5153// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5154// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
5155// PPC603E:#define __LDBL_MIN_EXP__ (-968)
5156// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5157// PPC603E:#define __LONG_DOUBLE_128__ 1
5158// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
5159// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005160// PPC603E-NOT:#define __LP64__
Hal Finkel6b984f02012-07-03 16:51:04 +00005161// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005162// PPC603E:#define __POINTER_WIDTH__ 32
5163// PPC603E:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005164// PPC603E:#define __PPC__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005165// PPC603E:#define __PTRDIFF_TYPE__ long int
5166// PPC603E:#define __PTRDIFF_WIDTH__ 32
5167// PPC603E:#define __REGISTER_PREFIX__
5168// PPC603E:#define __SCHAR_MAX__ 127
5169// PPC603E:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005170// PPC603E:#define __SIG_ATOMIC_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005171// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
5172// PPC603E:#define __SIZEOF_DOUBLE__ 8
5173// PPC603E:#define __SIZEOF_FLOAT__ 4
5174// PPC603E:#define __SIZEOF_INT__ 4
5175// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
5176// PPC603E:#define __SIZEOF_LONG_LONG__ 8
5177// PPC603E:#define __SIZEOF_LONG__ 4
5178// PPC603E:#define __SIZEOF_POINTER__ 4
5179// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
5180// PPC603E:#define __SIZEOF_SHORT__ 2
5181// PPC603E:#define __SIZEOF_SIZE_T__ 4
5182// PPC603E:#define __SIZEOF_WCHAR_T__ 4
5183// PPC603E:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00005184// PPC603E:#define __SIZE_MAX__ 4294967295UL
Hal Finkel6b984f02012-07-03 16:51:04 +00005185// PPC603E:#define __SIZE_TYPE__ long unsigned int
5186// PPC603E:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00005187// PPC603E:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005188// PPC603E:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005189// PPC603E:#define __UINT16_TYPE__ unsigned short
5190// PPC603E:#define __UINT32_C_SUFFIX__ U
5191// PPC603E:#define __UINT32_MAX__ 4294967295U
5192// PPC603E:#define __UINT32_TYPE__ unsigned int
5193// PPC603E:#define __UINT64_C_SUFFIX__ ULL
5194// PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
5195// PPC603E:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005196// PPC603E:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005197// PPC603E:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005198// PPC603E:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005199// PPC603E:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005200// PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
Hal Finkel6b984f02012-07-03 16:51:04 +00005201// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005202// PPC603E:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005203// PPC603E:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005204// PPC603E:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005205// PPC603E:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005206// PPC603E:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005207// PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
5208// PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
5209// PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
5210// PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5211// PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005212// PPC603E:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005213// PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005214// PPC603E:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005215// PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
5216// PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
5217// PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
5218// PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5219// PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005220// PPC603E:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005221// PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
Hal Finkel6b984f02012-07-03 16:51:04 +00005222// PPC603E:#define __USER_LABEL_PREFIX__ _
5223// PPC603E:#define __WCHAR_MAX__ 2147483647
5224// PPC603E:#define __WCHAR_TYPE__ int
5225// PPC603E:#define __WCHAR_WIDTH__ 32
5226// PPC603E:#define __WINT_TYPE__ int
5227// PPC603E:#define __WINT_WIDTH__ 32
5228// PPC603E:#define __powerpc__ 1
5229// PPC603E:#define __ppc__ 1
5230//
James Y Knightc97efa42016-02-11 16:51:29 +00005231// 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
Chris Lattnere963d092009-10-29 04:55:36 +00005232//
5233// PPC64:#define _ARCH_PPC 1
5234// PPC64:#define _ARCH_PPC64 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005235// PPC64:#define _ARCH_PPCGR 1
5236// PPC64:#define _ARCH_PPCSQ 1
5237// PPC64:#define _ARCH_PWR4 1
5238// PPC64:#define _ARCH_PWR5 1
5239// PPC64:#define _ARCH_PWR6 1
Hal Finkel8eb59282012-06-11 22:35:19 +00005240// PPC64:#define _ARCH_PWR7 1
Chris Lattnere963d092009-10-29 04:55:36 +00005241// PPC64:#define _BIG_ENDIAN 1
5242// PPC64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005243// PPC64:#define __BIGGEST_ALIGNMENT__ 8
Chris Lattnere963d092009-10-29 04:55:36 +00005244// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005245// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00005246// PPC64:#define __CHAR16_TYPE__ unsigned short
5247// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00005248// PPC64:#define __CHAR_BIT__ 8
5249// PPC64:#define __CHAR_UNSIGNED__ 1
5250// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5251// PPC64:#define __DBL_DIG__ 15
5252// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5253// PPC64:#define __DBL_HAS_DENORM__ 1
5254// PPC64:#define __DBL_HAS_INFINITY__ 1
5255// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
5256// PPC64:#define __DBL_MANT_DIG__ 53
5257// PPC64:#define __DBL_MAX_10_EXP__ 308
5258// PPC64:#define __DBL_MAX_EXP__ 1024
5259// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
5260// PPC64:#define __DBL_MIN_10_EXP__ (-307)
5261// PPC64:#define __DBL_MIN_EXP__ (-1021)
5262// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005263// PPC64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00005264// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5265// PPC64:#define __FLT_DIG__ 6
5266// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
5267// PPC64:#define __FLT_EVAL_METHOD__ 0
5268// PPC64:#define __FLT_HAS_DENORM__ 1
5269// PPC64:#define __FLT_HAS_INFINITY__ 1
5270// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
5271// PPC64:#define __FLT_MANT_DIG__ 24
5272// PPC64:#define __FLT_MAX_10_EXP__ 38
5273// PPC64:#define __FLT_MAX_EXP__ 128
5274// PPC64:#define __FLT_MAX__ 3.40282347e+38F
5275// PPC64:#define __FLT_MIN_10_EXP__ (-37)
5276// PPC64:#define __FLT_MIN_EXP__ (-125)
5277// PPC64:#define __FLT_MIN__ 1.17549435e-38F
5278// PPC64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005279// PPC64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005280// PPC64:#define __INT16_FMTd__ "hd"
5281// PPC64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005282// PPC64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005283// PPC64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005284// PPC64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005285// PPC64:#define __INT32_FMTd__ "d"
5286// PPC64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005287// PPC64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00005288// PPC64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00005289// PPC64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005290// PPC64:#define __INT64_FMTd__ "ld"
5291// PPC64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005292// PPC64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00005293// PPC64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005294// PPC64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005295// PPC64:#define __INT8_FMTd__ "hhd"
5296// PPC64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005297// PPC64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005298// PPC64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005299// PPC64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005300// PPC64:#define __INTMAX_FMTd__ "ld"
5301// PPC64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00005302// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005303// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00005304// PPC64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005305// PPC64:#define __INTPTR_FMTd__ "ld"
5306// PPC64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005307// PPC64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005308// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005309// PPC64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005310// PPC64:#define __INT_FAST16_FMTd__ "hd"
5311// PPC64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005312// PPC64:#define __INT_FAST16_MAX__ 32767
5313// PPC64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005314// PPC64:#define __INT_FAST32_FMTd__ "d"
5315// PPC64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005316// PPC64:#define __INT_FAST32_MAX__ 2147483647
5317// PPC64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005318// PPC64:#define __INT_FAST64_FMTd__ "ld"
5319// PPC64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005320// PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
5321// PPC64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005322// PPC64:#define __INT_FAST8_FMTd__ "hhd"
5323// PPC64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005324// PPC64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005325// PPC64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005326// PPC64:#define __INT_LEAST16_FMTd__ "hd"
5327// PPC64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005328// PPC64:#define __INT_LEAST16_MAX__ 32767
5329// PPC64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005330// PPC64:#define __INT_LEAST32_FMTd__ "d"
5331// PPC64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005332// PPC64:#define __INT_LEAST32_MAX__ 2147483647
5333// PPC64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005334// PPC64:#define __INT_LEAST64_FMTd__ "ld"
5335// PPC64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005336// PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5337// PPC64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005338// PPC64:#define __INT_LEAST8_FMTd__ "hhd"
5339// PPC64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005340// PPC64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005341// PPC64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005342// PPC64:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005343// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5344// PPC64:#define __LDBL_DIG__ 31
5345// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005346// PPC64:#define __LDBL_HAS_DENORM__ 1
5347// PPC64:#define __LDBL_HAS_INFINITY__ 1
5348// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005349// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00005350// PPC64:#define __LDBL_MAX_10_EXP__ 308
5351// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00005352// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5353// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
5354// PPC64:#define __LDBL_MIN_EXP__ (-968)
5355// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnere963d092009-10-29 04:55:36 +00005356// PPC64:#define __LONG_DOUBLE_128__ 1
5357// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5358// PPC64:#define __LONG_MAX__ 9223372036854775807L
5359// PPC64:#define __LP64__ 1
5360// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005361// PPC64:#define __POINTER_WIDTH__ 64
5362// PPC64:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005363// PPC64:#define __PPC64__ 1
5364// PPC64:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00005365// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00005366// PPC64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005367// PPC64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005368// PPC64:#define __SCHAR_MAX__ 127
5369// PPC64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005370// PPC64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00005371// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005372// PPC64:#define __SIZEOF_DOUBLE__ 8
5373// PPC64:#define __SIZEOF_FLOAT__ 4
5374// PPC64:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00005375// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00005376// PPC64:#define __SIZEOF_LONG_LONG__ 8
5377// PPC64:#define __SIZEOF_LONG__ 8
5378// PPC64:#define __SIZEOF_POINTER__ 8
5379// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
5380// PPC64:#define __SIZEOF_SHORT__ 2
5381// PPC64:#define __SIZEOF_SIZE_T__ 8
5382// PPC64:#define __SIZEOF_WCHAR_T__ 4
5383// PPC64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005384// PPC64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00005385// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005386// PPC64:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005387// PPC64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005388// PPC64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005389// PPC64:#define __UINT16_TYPE__ unsigned short
5390// PPC64:#define __UINT32_C_SUFFIX__ U
5391// PPC64:#define __UINT32_MAX__ 4294967295U
5392// PPC64:#define __UINT32_TYPE__ unsigned int
5393// PPC64:#define __UINT64_C_SUFFIX__ UL
5394// PPC64:#define __UINT64_MAX__ 18446744073709551615UL
5395// PPC64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005396// PPC64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005397// PPC64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005398// PPC64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005399// PPC64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005400// PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00005401// PPC64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005402// PPC64:#define __UINTMAX_WIDTH__ 64
5403// PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
5404// PPC64:#define __UINTPTR_TYPE__ long unsigned int
5405// PPC64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005406// PPC64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005407// PPC64:#define __UINT_FAST16_TYPE__ unsigned short
5408// PPC64:#define __UINT_FAST32_MAX__ 4294967295U
5409// PPC64:#define __UINT_FAST32_TYPE__ unsigned int
5410// PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5411// PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005412// PPC64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005413// PPC64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005414// PPC64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005415// PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
5416// PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
5417// PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
5418// PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5419// PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005420// PPC64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005421// PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
Chris Lattnere963d092009-10-29 04:55:36 +00005422// PPC64:#define __USER_LABEL_PREFIX__ _
5423// PPC64:#define __WCHAR_MAX__ 2147483647
5424// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005425// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005426// PPC64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005427// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005428// PPC64:#define __ppc64__ 1
5429// PPC64:#define __ppc__ 1
5430//
James Y Knightc97efa42016-02-11 16:51:29 +00005431// 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 +00005432//
5433// PPC64LE:#define _ARCH_PPC 1
5434// PPC64LE:#define _ARCH_PPC64 1
5435// PPC64LE:#define _ARCH_PPCGR 1
5436// PPC64LE:#define _ARCH_PPCSQ 1
5437// PPC64LE:#define _ARCH_PWR4 1
5438// PPC64LE:#define _ARCH_PWR5 1
5439// PPC64LE:#define _ARCH_PWR5X 1
5440// PPC64LE:#define _ARCH_PWR6 1
5441// PPC64LE:#define _ARCH_PWR6X 1
5442// PPC64LE:#define _ARCH_PWR7 1
Will Schmidt5fa50f3c2014-03-24 21:09:16 +00005443// PPC64LE:#define _CALL_ELF 2
Bill Schmidt778d3872013-07-26 01:36:11 +00005444// PPC64LE:#define _LITTLE_ENDIAN 1
5445// PPC64LE:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005446// PPC64LE:#define __BIGGEST_ALIGNMENT__ 8
Bill Schmidt778d3872013-07-26 01:36:11 +00005447// PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5448// PPC64LE:#define __CHAR16_TYPE__ unsigned short
5449// PPC64LE:#define __CHAR32_TYPE__ unsigned int
5450// PPC64LE:#define __CHAR_BIT__ 8
5451// PPC64LE:#define __CHAR_UNSIGNED__ 1
5452// PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5453// PPC64LE:#define __DBL_DIG__ 15
5454// PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
5455// PPC64LE:#define __DBL_HAS_DENORM__ 1
5456// PPC64LE:#define __DBL_HAS_INFINITY__ 1
5457// PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
5458// PPC64LE:#define __DBL_MANT_DIG__ 53
5459// PPC64LE:#define __DBL_MAX_10_EXP__ 308
5460// PPC64LE:#define __DBL_MAX_EXP__ 1024
5461// PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
5462// PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
5463// PPC64LE:#define __DBL_MIN_EXP__ (-1021)
5464// PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005465// PPC64LE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Bill Schmidt778d3872013-07-26 01:36:11 +00005466// PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5467// PPC64LE:#define __FLT_DIG__ 6
5468// PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
5469// PPC64LE:#define __FLT_EVAL_METHOD__ 0
5470// PPC64LE:#define __FLT_HAS_DENORM__ 1
5471// PPC64LE:#define __FLT_HAS_INFINITY__ 1
5472// PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
5473// PPC64LE:#define __FLT_MANT_DIG__ 24
5474// PPC64LE:#define __FLT_MAX_10_EXP__ 38
5475// PPC64LE:#define __FLT_MAX_EXP__ 128
5476// PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
5477// PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
5478// PPC64LE:#define __FLT_MIN_EXP__ (-125)
5479// PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
5480// PPC64LE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005481// PPC64LE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005482// PPC64LE:#define __INT16_FMTd__ "hd"
5483// PPC64LE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005484// PPC64LE:#define __INT16_MAX__ 32767
Bill Schmidt778d3872013-07-26 01:36:11 +00005485// PPC64LE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005486// PPC64LE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005487// PPC64LE:#define __INT32_FMTd__ "d"
5488// PPC64LE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005489// PPC64LE:#define __INT32_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005490// PPC64LE:#define __INT32_TYPE__ int
5491// PPC64LE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005492// PPC64LE:#define __INT64_FMTd__ "ld"
5493// PPC64LE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005494// PPC64LE:#define __INT64_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005495// PPC64LE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005496// PPC64LE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005497// PPC64LE:#define __INT8_FMTd__ "hhd"
5498// PPC64LE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005499// PPC64LE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005500// PPC64LE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005501// PPC64LE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005502// PPC64LE:#define __INTMAX_FMTd__ "ld"
5503// PPC64LE:#define __INTMAX_FMTi__ "li"
Bill Schmidt778d3872013-07-26 01:36:11 +00005504// PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
5505// PPC64LE:#define __INTMAX_TYPE__ long int
5506// PPC64LE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005507// PPC64LE:#define __INTPTR_FMTd__ "ld"
5508// PPC64LE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005509// PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005510// PPC64LE:#define __INTPTR_TYPE__ long int
5511// PPC64LE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005512// PPC64LE:#define __INT_FAST16_FMTd__ "hd"
5513// PPC64LE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005514// PPC64LE:#define __INT_FAST16_MAX__ 32767
5515// PPC64LE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005516// PPC64LE:#define __INT_FAST32_FMTd__ "d"
5517// PPC64LE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005518// PPC64LE:#define __INT_FAST32_MAX__ 2147483647
5519// PPC64LE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005520// PPC64LE:#define __INT_FAST64_FMTd__ "ld"
5521// PPC64LE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005522// PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
5523// PPC64LE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005524// PPC64LE:#define __INT_FAST8_FMTd__ "hhd"
5525// PPC64LE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005526// PPC64LE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005527// PPC64LE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005528// PPC64LE:#define __INT_LEAST16_FMTd__ "hd"
5529// PPC64LE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005530// PPC64LE:#define __INT_LEAST16_MAX__ 32767
5531// PPC64LE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005532// PPC64LE:#define __INT_LEAST32_FMTd__ "d"
5533// PPC64LE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005534// PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
5535// PPC64LE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005536// PPC64LE:#define __INT_LEAST64_FMTd__ "ld"
5537// PPC64LE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005538// PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
5539// PPC64LE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005540// PPC64LE:#define __INT_LEAST8_FMTd__ "hhd"
5541// PPC64LE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005542// PPC64LE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005543// PPC64LE:#define __INT_LEAST8_TYPE__ signed char
Bill Schmidt778d3872013-07-26 01:36:11 +00005544// PPC64LE:#define __INT_MAX__ 2147483647
5545// PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5546// PPC64LE:#define __LDBL_DIG__ 31
5547// PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5548// PPC64LE:#define __LDBL_HAS_DENORM__ 1
5549// PPC64LE:#define __LDBL_HAS_INFINITY__ 1
5550// PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
5551// PPC64LE:#define __LDBL_MANT_DIG__ 106
5552// PPC64LE:#define __LDBL_MAX_10_EXP__ 308
5553// PPC64LE:#define __LDBL_MAX_EXP__ 1024
5554// PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5555// PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
5556// PPC64LE:#define __LDBL_MIN_EXP__ (-968)
5557// PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5558// PPC64LE:#define __LITTLE_ENDIAN__ 1
5559// PPC64LE:#define __LONG_DOUBLE_128__ 1
5560// PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
5561// PPC64LE:#define __LONG_MAX__ 9223372036854775807L
5562// PPC64LE:#define __LP64__ 1
5563// PPC64LE:#define __NATURAL_ALIGNMENT__ 1
5564// PPC64LE:#define __POINTER_WIDTH__ 64
5565// PPC64LE:#define __POWERPC__ 1
5566// PPC64LE:#define __PPC64__ 1
5567// PPC64LE:#define __PPC__ 1
5568// PPC64LE:#define __PTRDIFF_TYPE__ long int
5569// PPC64LE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005570// PPC64LE:#define __REGISTER_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00005571// PPC64LE:#define __SCHAR_MAX__ 127
5572// PPC64LE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005573// PPC64LE:#define __SIG_ATOMIC_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005574// PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
5575// PPC64LE:#define __SIZEOF_DOUBLE__ 8
5576// PPC64LE:#define __SIZEOF_FLOAT__ 4
5577// PPC64LE:#define __SIZEOF_INT__ 4
5578// PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
5579// PPC64LE:#define __SIZEOF_LONG_LONG__ 8
5580// PPC64LE:#define __SIZEOF_LONG__ 8
5581// PPC64LE:#define __SIZEOF_POINTER__ 8
5582// PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
5583// PPC64LE:#define __SIZEOF_SHORT__ 2
5584// PPC64LE:#define __SIZEOF_SIZE_T__ 8
5585// PPC64LE:#define __SIZEOF_WCHAR_T__ 4
5586// PPC64LE:#define __SIZEOF_WINT_T__ 4
5587// PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
5588// PPC64LE:#define __SIZE_TYPE__ long unsigned int
5589// PPC64LE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005590// PPC64LE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005591// PPC64LE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005592// PPC64LE:#define __UINT16_TYPE__ unsigned short
5593// PPC64LE:#define __UINT32_C_SUFFIX__ U
5594// PPC64LE:#define __UINT32_MAX__ 4294967295U
5595// PPC64LE:#define __UINT32_TYPE__ unsigned int
5596// PPC64LE:#define __UINT64_C_SUFFIX__ UL
5597// PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
5598// PPC64LE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005599// PPC64LE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005600// PPC64LE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005601// PPC64LE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005602// PPC64LE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005603// PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
Bill Schmidt778d3872013-07-26 01:36:11 +00005604// PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005605// PPC64LE:#define __UINTMAX_WIDTH__ 64
5606// PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
5607// PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
5608// PPC64LE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005609// PPC64LE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005610// PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
5611// PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
5612// PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
5613// PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5614// PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005615// PPC64LE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005616// PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005617// PPC64LE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005618// PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
5619// PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
5620// PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
5621// PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5622// PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005623// PPC64LE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005624// PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
Bill Schmidt778d3872013-07-26 01:36:11 +00005625// PPC64LE:#define __USER_LABEL_PREFIX__ _
5626// PPC64LE:#define __WCHAR_MAX__ 2147483647
5627// PPC64LE:#define __WCHAR_TYPE__ int
5628// PPC64LE:#define __WCHAR_WIDTH__ 32
5629// PPC64LE:#define __WINT_TYPE__ int
5630// PPC64LE:#define __WINT_WIDTH__ 32
5631// PPC64LE:#define __ppc64__ 1
5632// PPC64LE:#define __ppc__ 1
5633//
James Y Knightc97efa42016-02-11 16:51:29 +00005634// 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 +00005635//
5636// PPCA2Q:#define _ARCH_A2 1
5637// PPCA2Q:#define _ARCH_A2Q 1
5638// PPCA2Q:#define _ARCH_PPC 1
5639// PPCA2Q:#define _ARCH_PPC64 1
5640// PPCA2Q:#define _ARCH_QP 1
5641//
James Y Knightc97efa42016-02-11 16:51:29 +00005642// 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 +00005643//
5644// PPCBGQ:#define __THW_BLUEGENE__ 1
5645// PPCBGQ:#define __TOS_BGQ__ 1
5646// PPCBGQ:#define __bg__ 1
5647// PPCBGQ:#define __bgq__ 1
5648//
James Y Knightc97efa42016-02-11 16:51:29 +00005649// 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 +00005650//
5651// PPC630:#define _ARCH_630 1
5652// PPC630:#define _ARCH_PPC 1
5653// PPC630:#define _ARCH_PPC64 1
5654// PPC630:#define _ARCH_PPCGR 1
5655//
James Y Knightc97efa42016-02-11 16:51:29 +00005656// 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 +00005657//
5658// PPCPWR3:#define _ARCH_PPC 1
5659// PPCPWR3:#define _ARCH_PPC64 1
5660// PPCPWR3:#define _ARCH_PPCGR 1
5661//
James Y Knightc97efa42016-02-11 16:51:29 +00005662// 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 +00005663//
5664// PPCPOWER3:#define _ARCH_PPC 1
5665// PPCPOWER3:#define _ARCH_PPC64 1
5666// PPCPOWER3:#define _ARCH_PPCGR 1
5667//
James Y Knightc97efa42016-02-11 16:51:29 +00005668// 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 +00005669//
5670// PPCPWR4:#define _ARCH_PPC 1
5671// PPCPWR4:#define _ARCH_PPC64 1
5672// PPCPWR4:#define _ARCH_PPCGR 1
5673// PPCPWR4:#define _ARCH_PPCSQ 1
5674// PPCPWR4:#define _ARCH_PWR4 1
5675//
James Y Knightc97efa42016-02-11 16:51:29 +00005676// 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 +00005677//
5678// PPCPOWER4:#define _ARCH_PPC 1
5679// PPCPOWER4:#define _ARCH_PPC64 1
5680// PPCPOWER4:#define _ARCH_PPCGR 1
5681// PPCPOWER4:#define _ARCH_PPCSQ 1
5682// PPCPOWER4:#define _ARCH_PWR4 1
5683//
James Y Knightc97efa42016-02-11 16:51:29 +00005684// 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 +00005685//
5686// PPCPWR5:#define _ARCH_PPC 1
5687// PPCPWR5:#define _ARCH_PPC64 1
5688// PPCPWR5:#define _ARCH_PPCGR 1
5689// PPCPWR5:#define _ARCH_PPCSQ 1
5690// PPCPWR5:#define _ARCH_PWR4 1
5691// PPCPWR5:#define _ARCH_PWR5 1
5692//
James Y Knightc97efa42016-02-11 16:51:29 +00005693// 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 +00005694//
5695// PPCPOWER5:#define _ARCH_PPC 1
5696// PPCPOWER5:#define _ARCH_PPC64 1
5697// PPCPOWER5:#define _ARCH_PPCGR 1
5698// PPCPOWER5:#define _ARCH_PPCSQ 1
5699// PPCPOWER5:#define _ARCH_PWR4 1
5700// PPCPOWER5:#define _ARCH_PWR5 1
5701//
James Y Knightc97efa42016-02-11 16:51:29 +00005702// 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 +00005703//
5704// PPCPWR5X:#define _ARCH_PPC 1
5705// PPCPWR5X:#define _ARCH_PPC64 1
5706// PPCPWR5X:#define _ARCH_PPCGR 1
5707// PPCPWR5X:#define _ARCH_PPCSQ 1
5708// PPCPWR5X:#define _ARCH_PWR4 1
5709// PPCPWR5X:#define _ARCH_PWR5 1
5710// PPCPWR5X:#define _ARCH_PWR5X 1
5711//
James Y Knightc97efa42016-02-11 16:51:29 +00005712// 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 +00005713//
5714// PPCPOWER5X:#define _ARCH_PPC 1
5715// PPCPOWER5X:#define _ARCH_PPC64 1
5716// PPCPOWER5X:#define _ARCH_PPCGR 1
5717// PPCPOWER5X:#define _ARCH_PPCSQ 1
5718// PPCPOWER5X:#define _ARCH_PWR4 1
5719// PPCPOWER5X:#define _ARCH_PWR5 1
5720// PPCPOWER5X:#define _ARCH_PWR5X 1
5721//
James Y Knightc97efa42016-02-11 16:51:29 +00005722// 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 +00005723//
5724// PPCPWR6:#define _ARCH_PPC 1
5725// PPCPWR6:#define _ARCH_PPC64 1
5726// PPCPWR6:#define _ARCH_PPCGR 1
5727// PPCPWR6:#define _ARCH_PPCSQ 1
5728// PPCPWR6:#define _ARCH_PWR4 1
5729// PPCPWR6:#define _ARCH_PWR5 1
5730// PPCPWR6:#define _ARCH_PWR5X 1
5731// PPCPWR6:#define _ARCH_PWR6 1
5732//
James Y Knightc97efa42016-02-11 16:51:29 +00005733// 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 +00005734//
5735// PPCPOWER6:#define _ARCH_PPC 1
5736// PPCPOWER6:#define _ARCH_PPC64 1
5737// PPCPOWER6:#define _ARCH_PPCGR 1
5738// PPCPOWER6:#define _ARCH_PPCSQ 1
5739// PPCPOWER6:#define _ARCH_PWR4 1
5740// PPCPOWER6:#define _ARCH_PWR5 1
5741// PPCPOWER6:#define _ARCH_PWR5X 1
5742// PPCPOWER6:#define _ARCH_PWR6 1
5743//
James Y Knightc97efa42016-02-11 16:51:29 +00005744// 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 +00005745//
5746// PPCPWR6X:#define _ARCH_PPC 1
5747// PPCPWR6X:#define _ARCH_PPC64 1
5748// PPCPWR6X:#define _ARCH_PPCGR 1
5749// PPCPWR6X:#define _ARCH_PPCSQ 1
5750// PPCPWR6X:#define _ARCH_PWR4 1
5751// PPCPWR6X:#define _ARCH_PWR5 1
5752// PPCPWR6X:#define _ARCH_PWR5X 1
5753// PPCPWR6X:#define _ARCH_PWR6 1
5754// PPCPWR6X:#define _ARCH_PWR6X 1
5755//
James Y Knightc97efa42016-02-11 16:51:29 +00005756// 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 +00005757//
5758// PPCPOWER6X:#define _ARCH_PPC 1
5759// PPCPOWER6X:#define _ARCH_PPC64 1
5760// PPCPOWER6X:#define _ARCH_PPCGR 1
5761// PPCPOWER6X:#define _ARCH_PPCSQ 1
5762// PPCPOWER6X:#define _ARCH_PWR4 1
5763// PPCPOWER6X:#define _ARCH_PWR5 1
5764// PPCPOWER6X:#define _ARCH_PWR5X 1
5765// PPCPOWER6X:#define _ARCH_PWR6 1
5766// PPCPOWER6X:#define _ARCH_PWR6X 1
5767//
James Y Knightc97efa42016-02-11 16:51:29 +00005768// 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 +00005769//
5770// PPCPWR7:#define _ARCH_PPC 1
5771// PPCPWR7:#define _ARCH_PPC64 1
5772// PPCPWR7:#define _ARCH_PPCGR 1
5773// PPCPWR7:#define _ARCH_PPCSQ 1
5774// PPCPWR7:#define _ARCH_PWR4 1
5775// PPCPWR7:#define _ARCH_PWR5 1
5776// PPCPWR7:#define _ARCH_PWR5X 1
5777// PPCPWR7:#define _ARCH_PWR6 1
5778// PPCPWR7:#define _ARCH_PWR6X 1
5779// PPCPWR7:#define _ARCH_PWR7 1
5780//
James Y Knightc97efa42016-02-11 16:51:29 +00005781// 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 +00005782//
5783// PPCPOWER7:#define _ARCH_PPC 1
5784// PPCPOWER7:#define _ARCH_PPC64 1
5785// PPCPOWER7:#define _ARCH_PPCGR 1
5786// PPCPOWER7:#define _ARCH_PPCSQ 1
5787// PPCPOWER7:#define _ARCH_PWR4 1
5788// PPCPOWER7:#define _ARCH_PWR5 1
5789// PPCPOWER7:#define _ARCH_PWR5X 1
5790// PPCPOWER7:#define _ARCH_PWR6 1
5791// PPCPOWER7:#define _ARCH_PWR6X 1
5792// PPCPOWER7:#define _ARCH_PWR7 1
5793//
James Y Knightc97efa42016-02-11 16:51:29 +00005794// 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 +00005795//
5796// PPCPWR8:#define _ARCH_PPC 1
5797// PPCPWR8:#define _ARCH_PPC64 1
5798// PPCPWR8:#define _ARCH_PPCGR 1
5799// PPCPWR8:#define _ARCH_PPCSQ 1
5800// PPCPWR8:#define _ARCH_PWR4 1
5801// PPCPWR8:#define _ARCH_PWR5 1
5802// PPCPWR8:#define _ARCH_PWR5X 1
5803// PPCPWR8:#define _ARCH_PWR6 1
5804// PPCPWR8:#define _ARCH_PWR6X 1
5805// PPCPWR8:#define _ARCH_PWR7 1
5806// PPCPWR8:#define _ARCH_PWR8 1
5807//
James Y Knightc97efa42016-02-11 16:51:29 +00005808// 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 +00005809//
5810// PPCPOWER8:#define _ARCH_PPC 1
5811// PPCPOWER8:#define _ARCH_PPC64 1
5812// PPCPOWER8:#define _ARCH_PPCGR 1
5813// PPCPOWER8:#define _ARCH_PPCSQ 1
5814// PPCPOWER8:#define _ARCH_PWR4 1
5815// PPCPOWER8:#define _ARCH_PWR5 1
5816// PPCPOWER8:#define _ARCH_PWR5X 1
5817// PPCPOWER8:#define _ARCH_PWR6 1
5818// PPCPOWER8:#define _ARCH_PWR6X 1
5819// PPCPOWER8:#define _ARCH_PWR7 1
5820// PPCPOWER8:#define _ARCH_PWR8 1
5821//
James Y Knightc97efa42016-02-11 16:51:29 +00005822// 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 +00005823//
5824// PPC64-LINUX:#define _ARCH_PPC 1
5825// PPC64-LINUX:#define _ARCH_PPC64 1
5826// PPC64-LINUX:#define _BIG_ENDIAN 1
5827// PPC64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005828// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 8
Nico Weber3435ede2012-01-31 02:07:33 +00005829// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005830// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00005831// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
5832// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
5833// PPC64-LINUX:#define __CHAR_BIT__ 8
5834// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
5835// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5836// PPC64-LINUX:#define __DBL_DIG__ 15
5837// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
5838// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
5839// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
5840// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
5841// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
5842// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
5843// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
5844// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
5845// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
5846// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
5847// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005848// PPC64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00005849// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5850// PPC64-LINUX:#define __FLT_DIG__ 6
5851// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
5852// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
5853// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
5854// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
5855// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
5856// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
5857// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
5858// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
5859// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
5860// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
5861// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
5862// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
5863// PPC64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005864// PPC64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005865// PPC64-LINUX:#define __INT16_FMTd__ "hd"
5866// PPC64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005867// PPC64-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00005868// PPC64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005869// PPC64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005870// PPC64-LINUX:#define __INT32_FMTd__ "d"
5871// PPC64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005872// PPC64-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005873// PPC64-LINUX:#define __INT32_TYPE__ int
5874// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005875// PPC64-LINUX:#define __INT64_FMTd__ "ld"
5876// PPC64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005877// PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00005878// PPC64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005879// PPC64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005880// PPC64-LINUX:#define __INT8_FMTd__ "hhd"
5881// PPC64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005882// PPC64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005883// PPC64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005884// PPC64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005885// PPC64-LINUX:#define __INTMAX_FMTd__ "ld"
5886// PPC64-LINUX:#define __INTMAX_FMTi__ "li"
Nico Weber3435ede2012-01-31 02:07:33 +00005887// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
5888// PPC64-LINUX:#define __INTMAX_TYPE__ long int
5889// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005890// PPC64-LINUX:#define __INTPTR_FMTd__ "ld"
5891// PPC64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005892// PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00005893// PPC64-LINUX:#define __INTPTR_TYPE__ long int
5894// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005895// PPC64-LINUX:#define __INT_FAST16_FMTd__ "hd"
5896// PPC64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005897// PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
5898// PPC64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005899// PPC64-LINUX:#define __INT_FAST32_FMTd__ "d"
5900// PPC64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005901// PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
5902// PPC64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005903// PPC64-LINUX:#define __INT_FAST64_FMTd__ "ld"
5904// PPC64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005905// PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
5906// PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005907// PPC64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
5908// PPC64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005909// PPC64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005910// PPC64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005911// PPC64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
5912// PPC64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005913// PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
5914// PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005915// PPC64-LINUX:#define __INT_LEAST32_FMTd__ "d"
5916// PPC64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005917// PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
5918// PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005919// PPC64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
5920// PPC64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005921// PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
5922// PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005923// PPC64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
5924// PPC64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005925// PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005926// PPC64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00005927// PPC64-LINUX:#define __INT_MAX__ 2147483647
5928// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5929// PPC64-LINUX:#define __LDBL_DIG__ 31
5930// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5931// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
5932// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
5933// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
5934// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
5935// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
5936// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
5937// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5938// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
5939// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
5940// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
5941// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
5942// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
5943// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
5944// PPC64-LINUX:#define __LP64__ 1
5945// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005946// PPC64-LINUX:#define __POINTER_WIDTH__ 64
5947// PPC64-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005948// PPC64-LINUX:#define __PPC64__ 1
5949// PPC64-LINUX:#define __PPC__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005950// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
5951// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
5952// PPC64-LINUX:#define __REGISTER_PREFIX__
5953// PPC64-LINUX:#define __SCHAR_MAX__ 127
5954// PPC64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005955// PPC64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005956// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
5957// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
5958// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
5959// PPC64-LINUX:#define __SIZEOF_INT__ 4
5960// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
5961// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
5962// PPC64-LINUX:#define __SIZEOF_LONG__ 8
5963// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
5964// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
5965// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
5966// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
5967// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
5968// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005969// PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00005970// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
5971// PPC64-LINUX:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005972// PPC64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005973// PPC64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005974// PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
5975// PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
5976// PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
5977// PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
5978// PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
5979// PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
5980// PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005981// PPC64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005982// PPC64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005983// PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005984// PPC64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005985// PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00005986// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005987// PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
5988// PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
5989// PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
5990// PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005991// PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005992// PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
5993// PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
5994// PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
5995// PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5996// PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005997// PPC64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005998// PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005999// PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006000// PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6001// PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6002// PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6003// PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6004// PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006005// PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006006// PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006007// PPC64-LINUX:#define __USER_LABEL_PREFIX__
6008// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
6009// PPC64-LINUX:#define __WCHAR_TYPE__ int
6010// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
6011// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
6012// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
6013// PPC64-LINUX:#define __WINT_WIDTH__ 32
6014// PPC64-LINUX:#define __powerpc64__ 1
6015// PPC64-LINUX:#define __powerpc__ 1
6016// PPC64-LINUX:#define __ppc64__ 1
6017// PPC64-LINUX:#define __ppc__ 1
Ulrich Weigand8afad612014-07-28 13:17:52 +00006018
James Y Knightc97efa42016-02-11 16:51:29 +00006019// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6020// 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
6021// 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
6022// 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
6023// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6024// 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
6025// 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 +00006026// PPC64-ELFv1:#define _CALL_ELF 1
6027// PPC64-ELFv2:#define _CALL_ELF 2
Nico Weber3435ede2012-01-31 02:07:33 +00006028//
James Y Knightc97efa42016-02-11 16:51:29 +00006029// 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 +00006030//
6031// PPC:#define _ARCH_PPC 1
6032// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006033// PPC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006034// PPC:#define __BIGGEST_ALIGNMENT__ 8
Chris Lattnere963d092009-10-29 04:55:36 +00006035// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006036// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006037// PPC:#define __CHAR16_TYPE__ unsigned short
6038// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006039// PPC:#define __CHAR_BIT__ 8
6040// PPC:#define __CHAR_UNSIGNED__ 1
6041// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6042// PPC:#define __DBL_DIG__ 15
6043// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6044// PPC:#define __DBL_HAS_DENORM__ 1
6045// PPC:#define __DBL_HAS_INFINITY__ 1
6046// PPC:#define __DBL_HAS_QUIET_NAN__ 1
6047// PPC:#define __DBL_MANT_DIG__ 53
6048// PPC:#define __DBL_MAX_10_EXP__ 308
6049// PPC:#define __DBL_MAX_EXP__ 1024
6050// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
6051// PPC:#define __DBL_MIN_10_EXP__ (-307)
6052// PPC:#define __DBL_MIN_EXP__ (-1021)
6053// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006054// PPC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006055// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6056// PPC:#define __FLT_DIG__ 6
6057// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
6058// PPC:#define __FLT_EVAL_METHOD__ 0
6059// PPC:#define __FLT_HAS_DENORM__ 1
6060// PPC:#define __FLT_HAS_INFINITY__ 1
6061// PPC:#define __FLT_HAS_QUIET_NAN__ 1
6062// PPC:#define __FLT_MANT_DIG__ 24
6063// PPC:#define __FLT_MAX_10_EXP__ 38
6064// PPC:#define __FLT_MAX_EXP__ 128
6065// PPC:#define __FLT_MAX__ 3.40282347e+38F
6066// PPC:#define __FLT_MIN_10_EXP__ (-37)
6067// PPC:#define __FLT_MIN_EXP__ (-125)
6068// PPC:#define __FLT_MIN__ 1.17549435e-38F
6069// PPC:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006070// PPC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006071// PPC:#define __INT16_FMTd__ "hd"
6072// PPC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006073// PPC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006074// PPC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006075// PPC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006076// PPC:#define __INT32_FMTd__ "d"
6077// PPC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006078// PPC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006079// PPC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006080// PPC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006081// PPC:#define __INT64_FMTd__ "lld"
6082// PPC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006083// PPC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006084// PPC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006085// PPC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006086// PPC:#define __INT8_FMTd__ "hhd"
6087// PPC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006088// PPC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006089// PPC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006090// PPC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006091// PPC:#define __INTMAX_FMTd__ "lld"
6092// PPC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006093// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006094// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006095// PPC:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006096// PPC:#define __INTPTR_FMTd__ "ld"
6097// PPC:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006098// PPC:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00006099// PPC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006100// PPC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006101// PPC:#define __INT_FAST16_FMTd__ "hd"
6102// PPC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006103// PPC:#define __INT_FAST16_MAX__ 32767
6104// PPC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006105// PPC:#define __INT_FAST32_FMTd__ "d"
6106// PPC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006107// PPC:#define __INT_FAST32_MAX__ 2147483647
6108// PPC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006109// PPC:#define __INT_FAST64_FMTd__ "lld"
6110// PPC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006111// PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6112// PPC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006113// PPC:#define __INT_FAST8_FMTd__ "hhd"
6114// PPC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006115// PPC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006116// PPC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006117// PPC:#define __INT_LEAST16_FMTd__ "hd"
6118// PPC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006119// PPC:#define __INT_LEAST16_MAX__ 32767
6120// PPC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006121// PPC:#define __INT_LEAST32_FMTd__ "d"
6122// PPC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006123// PPC:#define __INT_LEAST32_MAX__ 2147483647
6124// PPC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006125// PPC:#define __INT_LEAST64_FMTd__ "lld"
6126// PPC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006127// PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6128// PPC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006129// PPC:#define __INT_LEAST8_FMTd__ "hhd"
6130// PPC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006131// PPC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006132// PPC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006133// PPC:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006134// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6135// PPC:#define __LDBL_DIG__ 31
6136// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006137// PPC:#define __LDBL_HAS_DENORM__ 1
6138// PPC:#define __LDBL_HAS_INFINITY__ 1
6139// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006140// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00006141// PPC:#define __LDBL_MAX_10_EXP__ 308
6142// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00006143// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6144// PPC:#define __LDBL_MIN_10_EXP__ (-291)
6145// PPC:#define __LDBL_MIN_EXP__ (-968)
6146// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Chris Lattnere963d092009-10-29 04:55:36 +00006147// PPC:#define __LONG_DOUBLE_128__ 1
6148// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6149// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006150// PPC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00006151// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00006152// PPC:#define __POINTER_WIDTH__ 32
6153// PPC:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006154// PPC:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00006155// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00006156// PPC:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006157// PPC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006158// PPC:#define __SCHAR_MAX__ 127
6159// PPC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006160// PPC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00006161// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00006162// PPC:#define __SIZEOF_DOUBLE__ 8
6163// PPC:#define __SIZEOF_FLOAT__ 4
6164// PPC:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00006165// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00006166// PPC:#define __SIZEOF_LONG_LONG__ 8
6167// PPC:#define __SIZEOF_LONG__ 4
6168// PPC:#define __SIZEOF_POINTER__ 4
6169// PPC:#define __SIZEOF_PTRDIFF_T__ 4
6170// PPC:#define __SIZEOF_SHORT__ 2
6171// PPC:#define __SIZEOF_SIZE_T__ 4
6172// PPC:#define __SIZEOF_WCHAR_T__ 4
6173// PPC:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00006174// PPC:#define __SIZE_MAX__ 4294967295UL
Chris Lattnere963d092009-10-29 04:55:36 +00006175// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00006176// PPC:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006177// PPC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006178// PPC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006179// PPC:#define __UINT16_TYPE__ unsigned short
6180// PPC:#define __UINT32_C_SUFFIX__ U
6181// PPC:#define __UINT32_MAX__ 4294967295U
6182// PPC:#define __UINT32_TYPE__ unsigned int
6183// PPC:#define __UINT64_C_SUFFIX__ ULL
6184// PPC:#define __UINT64_MAX__ 18446744073709551615ULL
6185// PPC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006186// PPC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006187// PPC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006188// PPC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006189// PPC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006190// PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00006191// PPC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006192// PPC:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006193// PPC:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006194// PPC:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006195// PPC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006196// PPC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006197// PPC:#define __UINT_FAST16_TYPE__ unsigned short
6198// PPC:#define __UINT_FAST32_MAX__ 4294967295U
6199// PPC:#define __UINT_FAST32_TYPE__ unsigned int
6200// PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6201// PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006202// PPC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006203// PPC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006204// PPC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006205// PPC:#define __UINT_LEAST16_TYPE__ unsigned short
6206// PPC:#define __UINT_LEAST32_MAX__ 4294967295U
6207// PPC:#define __UINT_LEAST32_TYPE__ unsigned int
6208// PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6209// PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006210// PPC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006211// PPC:#define __UINT_LEAST8_TYPE__ unsigned char
Chris Lattnere963d092009-10-29 04:55:36 +00006212// PPC:#define __USER_LABEL_PREFIX__ _
6213// PPC:#define __WCHAR_MAX__ 2147483647
6214// PPC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00006215// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006216// PPC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00006217// PPC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006218// PPC:#define __ppc__ 1
6219//
James Y Knightc97efa42016-02-11 16:51:29 +00006220// 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 +00006221//
6222// PPC-LINUX:#define _ARCH_PPC 1
6223// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006224// PPC-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006225// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 8
Nico Weber3435ede2012-01-31 02:07:33 +00006226// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006227// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006228// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
6229// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
6230// PPC-LINUX:#define __CHAR_BIT__ 8
6231// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
6232// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6233// PPC-LINUX:#define __DBL_DIG__ 15
6234// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6235// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
6236// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
6237// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6238// PPC-LINUX:#define __DBL_MANT_DIG__ 53
6239// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
6240// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
6241// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6242// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6243// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
6244// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006245// PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006246// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6247// PPC-LINUX:#define __FLT_DIG__ 6
6248// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6249// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
6250// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
6251// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
6252// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6253// PPC-LINUX:#define __FLT_MANT_DIG__ 24
6254// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
6255// PPC-LINUX:#define __FLT_MAX_EXP__ 128
6256// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6257// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6258// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
6259// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6260// PPC-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006261// PPC-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006262// PPC-LINUX:#define __INT16_FMTd__ "hd"
6263// PPC-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006264// PPC-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006265// PPC-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006266// PPC-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006267// PPC-LINUX:#define __INT32_FMTd__ "d"
6268// PPC-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006269// PPC-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006270// PPC-LINUX:#define __INT32_TYPE__ int
6271// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006272// PPC-LINUX:#define __INT64_FMTd__ "lld"
6273// PPC-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006274// PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Nico Weber3435ede2012-01-31 02:07:33 +00006275// PPC-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006276// PPC-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006277// PPC-LINUX:#define __INT8_FMTd__ "hhd"
6278// PPC-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006279// PPC-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006280// PPC-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006281// PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006282// PPC-LINUX:#define __INTMAX_FMTd__ "lld"
6283// PPC-LINUX:#define __INTMAX_FMTi__ "lli"
Nico Weber3435ede2012-01-31 02:07:33 +00006284// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
6285// PPC-LINUX:#define __INTMAX_TYPE__ long long int
6286// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006287// PPC-LINUX:#define __INTPTR_FMTd__ "d"
6288// PPC-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006289// PPC-LINUX:#define __INTPTR_MAX__ 2147483647
Hal Finkel26908382012-03-02 20:54:36 +00006290// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006291// PPC-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006292// PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
6293// PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006294// PPC-LINUX:#define __INT_FAST16_MAX__ 32767
6295// PPC-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006296// PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
6297// PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006298// PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
6299// PPC-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006300// PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
6301// PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006302// PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
6303// PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006304// PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6305// PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006306// PPC-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006307// PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006308// PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6309// PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006310// PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
6311// PPC-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006312// PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
6313// PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006314// PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6315// PPC-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006316// PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
6317// PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006318// PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6319// PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006320// PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6321// PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006322// PPC-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006323// PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006324// PPC-LINUX:#define __INT_MAX__ 2147483647
6325// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6326// PPC-LINUX:#define __LDBL_DIG__ 31
6327// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6328// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
6329// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
6330// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6331// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
6332// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
6333// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
6334// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6335// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6336// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
6337// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6338// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
6339// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6340// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006341// PPC-LINUX-NOT:#define __LP64__
Nico Weber3435ede2012-01-31 02:07:33 +00006342// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006343// PPC-LINUX:#define __POINTER_WIDTH__ 32
6344// PPC-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006345// PPC-LINUX:#define __PPC__ 1
Hal Finkel26908382012-03-02 20:54:36 +00006346// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006347// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
6348// PPC-LINUX:#define __REGISTER_PREFIX__
6349// PPC-LINUX:#define __SCHAR_MAX__ 127
6350// PPC-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006351// PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006352// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6353// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
6354// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
6355// PPC-LINUX:#define __SIZEOF_INT__ 4
6356// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6357// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
6358// PPC-LINUX:#define __SIZEOF_LONG__ 4
6359// PPC-LINUX:#define __SIZEOF_POINTER__ 4
6360// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
6361// PPC-LINUX:#define __SIZEOF_SHORT__ 2
6362// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
6363// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
6364// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006365// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
Nico Weber3435ede2012-01-31 02:07:33 +00006366// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
6367// PPC-LINUX:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006368// PPC-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006369// PPC-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006370// PPC-LINUX:#define __UINT16_TYPE__ unsigned short
6371// PPC-LINUX:#define __UINT32_C_SUFFIX__ U
6372// PPC-LINUX:#define __UINT32_MAX__ 4294967295U
6373// PPC-LINUX:#define __UINT32_TYPE__ unsigned int
6374// PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
6375// PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
6376// PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006377// PPC-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006378// PPC-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006379// PPC-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006380// PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006381// PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Nico Weber3435ede2012-01-31 02:07:33 +00006382// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006383// PPC-LINUX:#define __UINTMAX_WIDTH__ 64
6384// PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
6385// PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
6386// PPC-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006387// PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006388// PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6389// PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6390// PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6391// PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6392// PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006393// PPC-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006394// PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006395// PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006396// PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6397// PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6398// PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6399// PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6400// PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006401// PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006402// PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006403// PPC-LINUX:#define __USER_LABEL_PREFIX__
6404// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
6405// PPC-LINUX:#define __WCHAR_TYPE__ int
6406// PPC-LINUX:#define __WCHAR_WIDTH__ 32
6407// PPC-LINUX:#define __WINT_TYPE__ unsigned int
6408// PPC-LINUX:#define __WINT_UNSIGNED__ 1
6409// PPC-LINUX:#define __WINT_WIDTH__ 32
6410// PPC-LINUX:#define __powerpc__ 1
6411// PPC-LINUX:#define __ppc__ 1
6412//
James Y Knightc97efa42016-02-11 16:51:29 +00006413// 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 +00006414//
6415// PPC-DARWIN:#define _ARCH_PPC 1
6416// PPC-DARWIN:#define _BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00006417// PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
David Fang072d47b2013-05-16 17:51:48 +00006418// PPC-DARWIN:#define __BIG_ENDIAN__ 1
6419// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6420// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
6421// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
6422// PPC-DARWIN:#define __CHAR_BIT__ 8
6423// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6424// PPC-DARWIN:#define __DBL_DIG__ 15
6425// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
6426// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
6427// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
6428// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
6429// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
6430// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
6431// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
6432// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
6433// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
6434// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
6435// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006436// PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
David Fang072d47b2013-05-16 17:51:48 +00006437// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6438// PPC-DARWIN:#define __FLT_DIG__ 6
6439// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
6440// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
6441// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
6442// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
6443// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
6444// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
6445// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
6446// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
6447// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
6448// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
6449// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
6450// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
6451// PPC-DARWIN:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006452// PPC-DARWIN:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006453// PPC-DARWIN:#define __INT16_FMTd__ "hd"
6454// PPC-DARWIN:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006455// PPC-DARWIN:#define __INT16_MAX__ 32767
David Fang072d47b2013-05-16 17:51:48 +00006456// PPC-DARWIN:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006457// PPC-DARWIN:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006458// PPC-DARWIN:#define __INT32_FMTd__ "d"
6459// PPC-DARWIN:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006460// PPC-DARWIN:#define __INT32_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006461// PPC-DARWIN:#define __INT32_TYPE__ int
6462// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006463// PPC-DARWIN:#define __INT64_FMTd__ "lld"
6464// PPC-DARWIN:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006465// PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
David Fang072d47b2013-05-16 17:51:48 +00006466// PPC-DARWIN:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006467// PPC-DARWIN:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006468// PPC-DARWIN:#define __INT8_FMTd__ "hhd"
6469// PPC-DARWIN:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006470// PPC-DARWIN:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006471// PPC-DARWIN:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006472// PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006473// PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
6474// PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
David Fang072d47b2013-05-16 17:51:48 +00006475// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
6476// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
6477// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006478// PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
6479// PPC-DARWIN:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006480// PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
David Fang072d47b2013-05-16 17:51:48 +00006481// PPC-DARWIN:#define __INTPTR_TYPE__ long int
6482// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006483// PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
6484// PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006485// PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
6486// PPC-DARWIN:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006487// PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
6488// PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006489// PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
6490// PPC-DARWIN:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006491// PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
6492// PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006493// PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
6494// PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006495// PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
6496// PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006497// PPC-DARWIN:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006498// PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006499// PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
6500// PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006501// PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
6502// PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006503// PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
6504// PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006505// PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
6506// PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006507// PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
6508// PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006509// PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6510// PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006511// PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
6512// PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006513// PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006514// PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
David Fang072d47b2013-05-16 17:51:48 +00006515// PPC-DARWIN:#define __INT_MAX__ 2147483647
6516// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6517// PPC-DARWIN:#define __LDBL_DIG__ 31
6518// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6519// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
6520// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
6521// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
6522// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
6523// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
6524// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
6525// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6526// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
6527// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
6528// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6529// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
6530// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
6531// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
6532// PPC-DARWIN:#define __MACH__ 1
6533// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
6534// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
6535// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
6536// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
6537// PPC-DARWIN:#define __POINTER_WIDTH__ 32
6538// PPC-DARWIN:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006539// PPC-DARWIN:#define __PPC__ 1
David Fang072d47b2013-05-16 17:51:48 +00006540// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
6541// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006542// PPC-DARWIN:#define __REGISTER_PREFIX__
David Fang072d47b2013-05-16 17:51:48 +00006543// PPC-DARWIN:#define __SCHAR_MAX__ 127
6544// PPC-DARWIN:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006545// PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006546// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
6547// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
6548// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
6549// PPC-DARWIN:#define __SIZEOF_INT__ 4
6550// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
6551// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
6552// PPC-DARWIN:#define __SIZEOF_LONG__ 4
6553// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
6554// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
6555// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
6556// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
6557// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
6558// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
6559// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
6560// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
6561// PPC-DARWIN:#define __SIZE_WIDTH__ 32
6562// PPC-DARWIN:#define __STDC_HOSTED__ 0
Richard Smithab506ad2014-10-20 23:26:58 +00006563// PPC-DARWIN:#define __STDC_VERSION__ 201112L
David Fang072d47b2013-05-16 17:51:48 +00006564// PPC-DARWIN:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006565// PPC-DARWIN:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006566// PPC-DARWIN:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006567// PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
6568// PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
6569// PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
6570// PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
6571// PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
6572// PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
6573// PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006574// PPC-DARWIN:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006575// PPC-DARWIN:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006576// PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006577// PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006578// PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
David Fang072d47b2013-05-16 17:51:48 +00006579// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006580// PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006581// PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006582// PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006583// PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006584// PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006585// PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
6586// PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
6587// PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
6588// PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6589// PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006590// PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006591// PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006592// PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006593// PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
6594// PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
6595// PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
6596// PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6597// PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006598// PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006599// PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
David Fang072d47b2013-05-16 17:51:48 +00006600// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
6601// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
6602// PPC-DARWIN:#define __WCHAR_TYPE__ int
6603// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
6604// PPC-DARWIN:#define __WINT_TYPE__ int
6605// PPC-DARWIN:#define __WINT_WIDTH__ 32
6606// PPC-DARWIN:#define __powerpc__ 1
6607// PPC-DARWIN:#define __ppc__ 1
6608//
James Y Knightc97efa42016-02-11 16:51:29 +00006609// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
6610// 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 +00006611//
6612// AMDGPU:#define cl_khr_byte_addressable_store 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006613// AMDGCN:#define cl_khr_fp64 1
Tom Stellard22041372015-07-17 13:16:52 +00006614// AMDGPU:#define cl_khr_global_int32_base_atomics 1
6615// AMDGPU:#define cl_khr_global_int32_extended_atomics 1
6616// AMDGPU:#define cl_khr_local_int32_base_atomics 1
6617// AMDGPU:#define cl_khr_local_int32_extended_atomics 1
Tom Stellardfded50f2015-02-27 15:10:19 +00006618
James Y Knightc97efa42016-02-11 16:51:29 +00006619// RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix S390X %s
Ulrich Weigand47445072013-05-06 16:26:41 +00006620//
Tim Northovera6a19f12015-02-06 01:25:07 +00006621// S390X:#define __BIGGEST_ALIGNMENT__ 8
Ulrich Weigand47445072013-05-06 16:26:41 +00006622// S390X:#define __CHAR16_TYPE__ unsigned short
6623// S390X:#define __CHAR32_TYPE__ unsigned int
6624// S390X:#define __CHAR_BIT__ 8
6625// S390X:#define __CHAR_UNSIGNED__ 1
6626// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6627// S390X:#define __DBL_DIG__ 15
6628// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
6629// S390X:#define __DBL_HAS_DENORM__ 1
6630// S390X:#define __DBL_HAS_INFINITY__ 1
6631// S390X:#define __DBL_HAS_QUIET_NAN__ 1
6632// S390X:#define __DBL_MANT_DIG__ 53
6633// S390X:#define __DBL_MAX_10_EXP__ 308
6634// S390X:#define __DBL_MAX_EXP__ 1024
6635// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
6636// S390X:#define __DBL_MIN_10_EXP__ (-307)
6637// S390X:#define __DBL_MIN_EXP__ (-1021)
6638// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006639// S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ulrich Weigand47445072013-05-06 16:26:41 +00006640// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6641// S390X:#define __FLT_DIG__ 6
6642// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
6643// S390X:#define __FLT_EVAL_METHOD__ 0
6644// S390X:#define __FLT_HAS_DENORM__ 1
6645// S390X:#define __FLT_HAS_INFINITY__ 1
6646// S390X:#define __FLT_HAS_QUIET_NAN__ 1
6647// S390X:#define __FLT_MANT_DIG__ 24
6648// S390X:#define __FLT_MAX_10_EXP__ 38
6649// S390X:#define __FLT_MAX_EXP__ 128
6650// S390X:#define __FLT_MAX__ 3.40282347e+38F
6651// S390X:#define __FLT_MIN_10_EXP__ (-37)
6652// S390X:#define __FLT_MIN_EXP__ (-125)
6653// S390X:#define __FLT_MIN__ 1.17549435e-38F
6654// S390X:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006655// S390X:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006656// S390X:#define __INT16_FMTd__ "hd"
6657// S390X:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006658// S390X:#define __INT16_MAX__ 32767
Ulrich Weigand47445072013-05-06 16:26:41 +00006659// S390X:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006660// S390X:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006661// S390X:#define __INT32_FMTd__ "d"
6662// S390X:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006663// S390X:#define __INT32_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00006664// S390X:#define __INT32_TYPE__ int
Ulrich Weigand881497a2015-03-30 13:50:21 +00006665// S390X:#define __INT64_C_SUFFIX__ L
6666// S390X:#define __INT64_FMTd__ "ld"
6667// S390X:#define __INT64_FMTi__ "li"
6668// S390X:#define __INT64_MAX__ 9223372036854775807L
6669// S390X:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00006670// S390X:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006671// S390X:#define __INT8_FMTd__ "hhd"
6672// S390X:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006673// S390X:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006674// S390X:#define __INT8_TYPE__ signed char
Ulrich Weigand881497a2015-03-30 13:50:21 +00006675// S390X:#define __INTMAX_C_SUFFIX__ L
6676// S390X:#define __INTMAX_FMTd__ "ld"
6677// S390X:#define __INTMAX_FMTi__ "li"
6678// S390X:#define __INTMAX_MAX__ 9223372036854775807L
6679// S390X:#define __INTMAX_TYPE__ long int
Ulrich Weigand47445072013-05-06 16:26:41 +00006680// S390X:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006681// S390X:#define __INTPTR_FMTd__ "ld"
6682// S390X:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006683// S390X:#define __INTPTR_MAX__ 9223372036854775807L
Ulrich Weigand47445072013-05-06 16:26:41 +00006684// S390X:#define __INTPTR_TYPE__ long int
6685// S390X:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006686// S390X:#define __INT_FAST16_FMTd__ "hd"
6687// S390X:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006688// S390X:#define __INT_FAST16_MAX__ 32767
6689// S390X:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006690// S390X:#define __INT_FAST32_FMTd__ "d"
6691// S390X:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006692// S390X:#define __INT_FAST32_MAX__ 2147483647
6693// S390X:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006694// S390X:#define __INT_FAST64_FMTd__ "ld"
6695// S390X:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006696// S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
6697// S390X:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006698// S390X:#define __INT_FAST8_FMTd__ "hhd"
6699// S390X:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006700// S390X:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006701// S390X:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006702// S390X:#define __INT_LEAST16_FMTd__ "hd"
6703// S390X:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006704// S390X:#define __INT_LEAST16_MAX__ 32767
6705// S390X:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006706// S390X:#define __INT_LEAST32_FMTd__ "d"
6707// S390X:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006708// S390X:#define __INT_LEAST32_MAX__ 2147483647
6709// S390X:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006710// S390X:#define __INT_LEAST64_FMTd__ "ld"
6711// S390X:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006712// S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
6713// S390X:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006714// S390X:#define __INT_LEAST8_FMTd__ "hhd"
6715// S390X:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006716// S390X:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006717// S390X:#define __INT_LEAST8_TYPE__ signed char
Ulrich Weigand47445072013-05-06 16:26:41 +00006718// S390X:#define __INT_MAX__ 2147483647
6719// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
6720// S390X:#define __LDBL_DIG__ 33
6721// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
6722// S390X:#define __LDBL_HAS_DENORM__ 1
6723// S390X:#define __LDBL_HAS_INFINITY__ 1
6724// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
6725// S390X:#define __LDBL_MANT_DIG__ 113
6726// S390X:#define __LDBL_MAX_10_EXP__ 4932
6727// S390X:#define __LDBL_MAX_EXP__ 16384
6728// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
6729// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
6730// S390X:#define __LDBL_MIN_EXP__ (-16381)
6731// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
6732// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
6733// S390X:#define __LONG_MAX__ 9223372036854775807L
6734// S390X:#define __NO_INLINE__ 1
6735// S390X:#define __POINTER_WIDTH__ 64
6736// S390X:#define __PTRDIFF_TYPE__ long int
6737// S390X:#define __PTRDIFF_WIDTH__ 64
6738// S390X:#define __SCHAR_MAX__ 127
6739// S390X:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006740// S390X:#define __SIG_ATOMIC_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00006741// S390X:#define __SIG_ATOMIC_WIDTH__ 32
6742// S390X:#define __SIZEOF_DOUBLE__ 8
6743// S390X:#define __SIZEOF_FLOAT__ 4
6744// S390X:#define __SIZEOF_INT__ 4
6745// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
6746// S390X:#define __SIZEOF_LONG_LONG__ 8
6747// S390X:#define __SIZEOF_LONG__ 8
6748// S390X:#define __SIZEOF_POINTER__ 8
6749// S390X:#define __SIZEOF_PTRDIFF_T__ 8
6750// S390X:#define __SIZEOF_SHORT__ 2
6751// S390X:#define __SIZEOF_SIZE_T__ 8
6752// S390X:#define __SIZEOF_WCHAR_T__ 4
6753// S390X:#define __SIZEOF_WINT_T__ 4
6754// S390X:#define __SIZE_TYPE__ long unsigned int
6755// S390X:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006756// S390X:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006757// S390X:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006758// S390X:#define __UINT16_TYPE__ unsigned short
6759// S390X:#define __UINT32_C_SUFFIX__ U
6760// S390X:#define __UINT32_MAX__ 4294967295U
6761// S390X:#define __UINT32_TYPE__ unsigned int
Ulrich Weigand881497a2015-03-30 13:50:21 +00006762// S390X:#define __UINT64_C_SUFFIX__ UL
6763// S390X:#define __UINT64_MAX__ 18446744073709551615UL
6764// S390X:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006765// S390X:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006766// S390X:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006767// S390X:#define __UINT8_TYPE__ unsigned char
Ulrich Weigand881497a2015-03-30 13:50:21 +00006768// S390X:#define __UINTMAX_C_SUFFIX__ UL
6769// S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
6770// S390X:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006771// S390X:#define __UINTMAX_WIDTH__ 64
6772// S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
6773// S390X:#define __UINTPTR_TYPE__ long unsigned int
6774// S390X:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006775// S390X:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006776// S390X:#define __UINT_FAST16_TYPE__ unsigned short
6777// S390X:#define __UINT_FAST32_MAX__ 4294967295U
6778// S390X:#define __UINT_FAST32_TYPE__ unsigned int
6779// S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6780// S390X:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006781// S390X:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006782// S390X:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006783// S390X:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006784// S390X:#define __UINT_LEAST16_TYPE__ unsigned short
6785// S390X:#define __UINT_LEAST32_MAX__ 4294967295U
6786// S390X:#define __UINT_LEAST32_TYPE__ unsigned int
6787// S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6788// S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006789// S390X:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006790// S390X:#define __UINT_LEAST8_TYPE__ unsigned char
Ulrich Weigand47445072013-05-06 16:26:41 +00006791// S390X:#define __USER_LABEL_PREFIX__ _
6792// S390X:#define __WCHAR_MAX__ 2147483647
6793// S390X:#define __WCHAR_TYPE__ int
6794// S390X:#define __WCHAR_WIDTH__ 32
6795// S390X:#define __WINT_TYPE__ int
6796// S390X:#define __WINT_WIDTH__ 32
6797// S390X:#define __s390__ 1
6798// S390X:#define __s390x__ 1
6799//
James Y Knightc97efa42016-02-11 16:51:29 +00006800// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC %s
Chris Lattnere963d092009-10-29 04:55:36 +00006801//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006802// SPARC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00006803// SPARC:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00006804// SPARC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006805// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006806// SPARC:#define __CHAR16_TYPE__ unsigned short
6807// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006808// SPARC:#define __CHAR_BIT__ 8
6809// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6810// SPARC:#define __DBL_DIG__ 15
6811// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6812// SPARC:#define __DBL_HAS_DENORM__ 1
6813// SPARC:#define __DBL_HAS_INFINITY__ 1
6814// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
6815// SPARC:#define __DBL_MANT_DIG__ 53
6816// SPARC:#define __DBL_MAX_10_EXP__ 308
6817// SPARC:#define __DBL_MAX_EXP__ 1024
6818// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
6819// SPARC:#define __DBL_MIN_10_EXP__ (-307)
6820// SPARC:#define __DBL_MIN_EXP__ (-1021)
6821// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006822// SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006823// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6824// SPARC:#define __FLT_DIG__ 6
6825// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
6826// SPARC:#define __FLT_EVAL_METHOD__ 0
6827// SPARC:#define __FLT_HAS_DENORM__ 1
6828// SPARC:#define __FLT_HAS_INFINITY__ 1
6829// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
6830// SPARC:#define __FLT_MANT_DIG__ 24
6831// SPARC:#define __FLT_MAX_10_EXP__ 38
6832// SPARC:#define __FLT_MAX_EXP__ 128
6833// SPARC:#define __FLT_MAX__ 3.40282347e+38F
6834// SPARC:#define __FLT_MIN_10_EXP__ (-37)
6835// SPARC:#define __FLT_MIN_EXP__ (-125)
6836// SPARC:#define __FLT_MIN__ 1.17549435e-38F
6837// SPARC:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00006838// SPARC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006839// SPARC:#define __INT16_FMTd__ "hd"
6840// SPARC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006841// SPARC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006842// SPARC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006843// SPARC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006844// SPARC:#define __INT32_FMTd__ "d"
6845// SPARC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006846// SPARC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006847// SPARC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006848// SPARC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006849// SPARC:#define __INT64_FMTd__ "lld"
6850// SPARC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006851// SPARC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006852// SPARC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006853// SPARC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006854// SPARC:#define __INT8_FMTd__ "hhd"
6855// SPARC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006856// SPARC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006857// SPARC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006858// SPARC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006859// SPARC:#define __INTMAX_FMTd__ "lld"
6860// SPARC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006861// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006862// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006863// SPARC:#define __INTMAX_WIDTH__ 64
James Y Knight4b4d19e2015-06-04 15:36:29 +00006864// SPARC:#define __INTPTR_FMTd__ "d"
6865// SPARC:#define __INTPTR_FMTi__ "i"
6866// SPARC:#define __INTPTR_MAX__ 2147483647
6867// SPARC:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006868// SPARC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006869// SPARC:#define __INT_FAST16_FMTd__ "hd"
6870// SPARC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006871// SPARC:#define __INT_FAST16_MAX__ 32767
6872// SPARC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006873// SPARC:#define __INT_FAST32_FMTd__ "d"
6874// SPARC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006875// SPARC:#define __INT_FAST32_MAX__ 2147483647
6876// SPARC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006877// SPARC:#define __INT_FAST64_FMTd__ "lld"
6878// SPARC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006879// SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6880// SPARC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006881// SPARC:#define __INT_FAST8_FMTd__ "hhd"
6882// SPARC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006883// SPARC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006884// SPARC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006885// SPARC:#define __INT_LEAST16_FMTd__ "hd"
6886// SPARC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006887// SPARC:#define __INT_LEAST16_MAX__ 32767
6888// SPARC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006889// SPARC:#define __INT_LEAST32_FMTd__ "d"
6890// SPARC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006891// SPARC:#define __INT_LEAST32_MAX__ 2147483647
6892// SPARC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006893// SPARC:#define __INT_LEAST64_FMTd__ "lld"
6894// SPARC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006895// SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6896// SPARC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006897// SPARC:#define __INT_LEAST8_FMTd__ "hhd"
6898// SPARC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006899// SPARC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006900// SPARC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006901// SPARC:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006902// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006903// SPARC:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006904// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00006905// SPARC:#define __LDBL_HAS_DENORM__ 1
6906// SPARC:#define __LDBL_HAS_INFINITY__ 1
6907// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
6908// SPARC:#define __LDBL_MANT_DIG__ 53
6909// SPARC:#define __LDBL_MAX_10_EXP__ 308
6910// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006911// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00006912// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
6913// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00006914// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00006915// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6916// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006917// SPARC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00006918// SPARC:#define __POINTER_WIDTH__ 32
James Y Knight4b4d19e2015-06-04 15:36:29 +00006919// SPARC:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00006920// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00006921// SPARC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006922// SPARC:#define __SCHAR_MAX__ 127
6923// SPARC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006924// SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00006925// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00006926// SPARC:#define __SIZEOF_DOUBLE__ 8
6927// SPARC:#define __SIZEOF_FLOAT__ 4
6928// SPARC:#define __SIZEOF_INT__ 4
6929// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
6930// SPARC:#define __SIZEOF_LONG_LONG__ 8
6931// SPARC:#define __SIZEOF_LONG__ 4
6932// SPARC:#define __SIZEOF_POINTER__ 4
6933// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
6934// SPARC:#define __SIZEOF_SHORT__ 2
6935// SPARC:#define __SIZEOF_SIZE_T__ 4
6936// SPARC:#define __SIZEOF_WCHAR_T__ 4
6937// SPARC:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006938// SPARC:#define __SIZE_MAX__ 4294967295U
James Y Knight4b4d19e2015-06-04 15:36:29 +00006939// SPARC:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00006940// SPARC:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006941// SPARC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006942// SPARC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006943// SPARC:#define __UINT16_TYPE__ unsigned short
6944// SPARC:#define __UINT32_C_SUFFIX__ U
6945// SPARC:#define __UINT32_MAX__ 4294967295U
6946// SPARC:#define __UINT32_TYPE__ unsigned int
6947// SPARC:#define __UINT64_C_SUFFIX__ ULL
6948// SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
6949// SPARC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006950// SPARC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006951// SPARC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006952// SPARC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006953// SPARC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006954// SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00006955// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006956// SPARC:#define __UINTMAX_WIDTH__ 64
6957// SPARC:#define __UINTPTR_MAX__ 4294967295U
James Y Knight4b4d19e2015-06-04 15:36:29 +00006958// SPARC:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006959// SPARC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006960// SPARC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006961// SPARC:#define __UINT_FAST16_TYPE__ unsigned short
6962// SPARC:#define __UINT_FAST32_MAX__ 4294967295U
6963// SPARC:#define __UINT_FAST32_TYPE__ unsigned int
6964// SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6965// SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006966// SPARC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006967// SPARC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006968// SPARC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006969// SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
6970// SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
6971// SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
6972// SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6973// SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006974// SPARC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006975// SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
Chris Lattnere963d092009-10-29 04:55:36 +00006976// SPARC:#define __USER_LABEL_PREFIX__ _
James Y Knightc97efa42016-02-11 16:51:29 +00006977// SPARC:#define __VERSION__ "4.2.1 Compatible{{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +00006978// SPARC:#define __WCHAR_MAX__ 2147483647
6979// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00006980// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006981// SPARC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00006982// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006983// SPARC:#define __sparc 1
6984// SPARC:#define __sparc__ 1
6985// SPARC:#define __sparcv8 1
6986// SPARC:#define sparc 1
6987//
James Y Knightc97efa42016-02-11 16:51:29 +00006988// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC-NETOPENBSD %s
6989// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC-NETOPENBSD %s
Brad Smith73859112015-08-13 21:45:57 +00006990// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
6991// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
6992// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
6993// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
6994// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
6995// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
6996// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
James Y Knight4b4d19e2015-06-04 15:36:29 +00006997
James Y Knightc97efa42016-02-11 16:51:29 +00006998// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE %s
Chris Lattnere963d092009-10-29 04:55:36 +00006999//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007000// TCE-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007001// TCE:#define __BIGGEST_ALIGNMENT__ 4
Robert Lytton2c942c62014-03-10 12:06:29 +00007002// TCE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007003// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007004// TCE:#define __CHAR16_TYPE__ unsigned short
7005// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007006// TCE:#define __CHAR_BIT__ 8
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007007// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnere963d092009-10-29 04:55:36 +00007008// TCE:#define __DBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007009// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnere963d092009-10-29 04:55:36 +00007010// TCE:#define __DBL_HAS_DENORM__ 1
7011// TCE:#define __DBL_HAS_INFINITY__ 1
7012// TCE:#define __DBL_HAS_QUIET_NAN__ 1
7013// TCE:#define __DBL_MANT_DIG__ 24
7014// TCE:#define __DBL_MAX_10_EXP__ 38
7015// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007016// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnere963d092009-10-29 04:55:36 +00007017// TCE:#define __DBL_MIN_10_EXP__ (-37)
7018// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007019// TCE:#define __DBL_MIN__ 1.17549435e-38
Ed Schouten49920992015-02-23 09:12:31 +00007020// TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007021// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7022// TCE:#define __FLT_DIG__ 6
7023// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
7024// TCE:#define __FLT_EVAL_METHOD__ 0
7025// TCE:#define __FLT_HAS_DENORM__ 1
7026// TCE:#define __FLT_HAS_INFINITY__ 1
7027// TCE:#define __FLT_HAS_QUIET_NAN__ 1
7028// TCE:#define __FLT_MANT_DIG__ 24
7029// TCE:#define __FLT_MAX_10_EXP__ 38
7030// TCE:#define __FLT_MAX_EXP__ 128
7031// TCE:#define __FLT_MAX__ 3.40282347e+38F
7032// TCE:#define __FLT_MIN_10_EXP__ (-37)
7033// TCE:#define __FLT_MIN_EXP__ (-125)
7034// TCE:#define __FLT_MIN__ 1.17549435e-38F
7035// TCE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007036// TCE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007037// TCE:#define __INT16_FMTd__ "hd"
7038// TCE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007039// TCE:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007040// TCE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007041// TCE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007042// TCE:#define __INT32_FMTd__ "d"
7043// TCE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007044// TCE:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007045// TCE:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007046// TCE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007047// TCE:#define __INT8_FMTd__ "hhd"
7048// TCE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007049// TCE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007050// TCE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007051// TCE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007052// TCE:#define __INTMAX_FMTd__ "ld"
7053// TCE:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007054// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00007055// TCE:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007056// TCE:#define __INTMAX_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007057// TCE:#define __INTPTR_FMTd__ "d"
7058// TCE:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007059// TCE:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00007060// TCE:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007061// TCE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007062// TCE:#define __INT_FAST16_FMTd__ "hd"
7063// TCE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007064// TCE:#define __INT_FAST16_MAX__ 32767
7065// TCE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007066// TCE:#define __INT_FAST32_FMTd__ "d"
7067// TCE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007068// TCE:#define __INT_FAST32_MAX__ 2147483647
7069// TCE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007070// TCE:#define __INT_FAST8_FMTd__ "hhd"
7071// TCE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007072// TCE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007073// TCE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007074// TCE:#define __INT_LEAST16_FMTd__ "hd"
7075// TCE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007076// TCE:#define __INT_LEAST16_MAX__ 32767
7077// TCE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007078// TCE:#define __INT_LEAST32_FMTd__ "d"
7079// TCE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007080// TCE:#define __INT_LEAST32_MAX__ 2147483647
7081// TCE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007082// TCE:#define __INT_LEAST8_FMTd__ "hhd"
7083// TCE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007084// TCE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007085// TCE:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007086// TCE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007087// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnere963d092009-10-29 04:55:36 +00007088// TCE:#define __LDBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007089// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnere963d092009-10-29 04:55:36 +00007090// TCE:#define __LDBL_HAS_DENORM__ 1
7091// TCE:#define __LDBL_HAS_INFINITY__ 1
7092// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
7093// TCE:#define __LDBL_MANT_DIG__ 24
7094// TCE:#define __LDBL_MAX_10_EXP__ 38
7095// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007096// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnere963d092009-10-29 04:55:36 +00007097// TCE:#define __LDBL_MIN_10_EXP__ (-37)
7098// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007099// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnere963d092009-10-29 04:55:36 +00007100// TCE:#define __LONG_LONG_MAX__ 2147483647LL
7101// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007102// TCE-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007103// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00007104// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00007105// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007106// TCE:#define __SCHAR_MAX__ 127
7107// TCE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007108// TCE:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007109// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007110// TCE:#define __SIZEOF_DOUBLE__ 4
7111// TCE:#define __SIZEOF_FLOAT__ 4
7112// TCE:#define __SIZEOF_INT__ 4
7113// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
7114// TCE:#define __SIZEOF_LONG_LONG__ 4
7115// TCE:#define __SIZEOF_LONG__ 4
7116// TCE:#define __SIZEOF_POINTER__ 4
7117// TCE:#define __SIZEOF_PTRDIFF_T__ 4
7118// TCE:#define __SIZEOF_SHORT__ 2
7119// TCE:#define __SIZEOF_SIZE_T__ 4
7120// TCE:#define __SIZEOF_WCHAR_T__ 4
7121// TCE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007122// TCE:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00007123// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007124// TCE:#define __SIZE_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007125// TCE:#define __TCE_V1__ 1
7126// TCE:#define __TCE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007127// TCE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007128// TCE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007129// TCE:#define __UINT16_TYPE__ unsigned short
7130// TCE:#define __UINT32_C_SUFFIX__ U
7131// TCE:#define __UINT32_MAX__ 4294967295U
7132// TCE:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007133// TCE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007134// TCE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007135// TCE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007136// TCE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007137// TCE:#define __UINTMAX_MAX__ 4294967295UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007138// TCE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007139// TCE:#define __UINTMAX_WIDTH__ 32
7140// TCE:#define __UINTPTR_MAX__ 4294967295U
7141// TCE:#define __UINTPTR_TYPE__ unsigned int
7142// TCE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007143// TCE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007144// TCE:#define __UINT_FAST16_TYPE__ unsigned short
7145// TCE:#define __UINT_FAST32_MAX__ 4294967295U
7146// TCE:#define __UINT_FAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007147// TCE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007148// TCE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007149// TCE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007150// TCE:#define __UINT_LEAST16_TYPE__ unsigned short
7151// TCE:#define __UINT_LEAST32_MAX__ 4294967295U
7152// TCE:#define __UINT_LEAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007153// TCE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007154// TCE:#define __UINT_LEAST8_TYPE__ unsigned char
Chris Lattnere963d092009-10-29 04:55:36 +00007155// TCE:#define __USER_LABEL_PREFIX__ _
7156// TCE:#define __WCHAR_MAX__ 2147483647
7157// TCE:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007158// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007159// TCE:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007160// TCE:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007161// TCE:#define __tce 1
7162// TCE:#define __tce__ 1
7163// TCE:#define tce 1
7164//
James Y Knightc97efa42016-02-11 16:51:29 +00007165// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64 %s
Chris Lattnere963d092009-10-29 04:55:36 +00007166//
7167// X86_64:#define _LP64 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007168// X86_64-NOT:#define _LP32 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007169// X86_64:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007170// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007171// X86_64:#define __CHAR16_TYPE__ unsigned short
7172// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007173// X86_64:#define __CHAR_BIT__ 8
7174// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7175// X86_64:#define __DBL_DIG__ 15
7176// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
7177// X86_64:#define __DBL_HAS_DENORM__ 1
7178// X86_64:#define __DBL_HAS_INFINITY__ 1
7179// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
7180// X86_64:#define __DBL_MANT_DIG__ 53
7181// X86_64:#define __DBL_MAX_10_EXP__ 308
7182// X86_64:#define __DBL_MAX_EXP__ 1024
7183// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
7184// X86_64:#define __DBL_MIN_10_EXP__ (-307)
7185// X86_64:#define __DBL_MIN_EXP__ (-1021)
7186// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007187// X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007188// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7189// X86_64:#define __FLT_DIG__ 6
7190// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
7191// X86_64:#define __FLT_EVAL_METHOD__ 0
7192// X86_64:#define __FLT_HAS_DENORM__ 1
7193// X86_64:#define __FLT_HAS_INFINITY__ 1
7194// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
7195// X86_64:#define __FLT_MANT_DIG__ 24
7196// X86_64:#define __FLT_MAX_10_EXP__ 38
7197// X86_64:#define __FLT_MAX_EXP__ 128
7198// X86_64:#define __FLT_MAX__ 3.40282347e+38F
7199// X86_64:#define __FLT_MIN_10_EXP__ (-37)
7200// X86_64:#define __FLT_MIN_EXP__ (-125)
7201// X86_64:#define __FLT_MIN__ 1.17549435e-38F
7202// X86_64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007203// X86_64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007204// X86_64:#define __INT16_FMTd__ "hd"
7205// X86_64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007206// X86_64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007207// X86_64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007208// X86_64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007209// X86_64:#define __INT32_FMTd__ "d"
7210// X86_64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007211// X86_64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007212// X86_64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007213// X86_64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007214// X86_64:#define __INT64_FMTd__ "ld"
7215// X86_64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007216// X86_64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00007217// X86_64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007218// X86_64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007219// X86_64:#define __INT8_FMTd__ "hhd"
7220// X86_64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007221// X86_64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007222// X86_64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007223// X86_64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007224// X86_64:#define __INTMAX_FMTd__ "ld"
7225// X86_64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007226// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007227// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007228// X86_64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007229// X86_64:#define __INTPTR_FMTd__ "ld"
7230// X86_64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007231// X86_64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007232// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007233// X86_64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007234// X86_64:#define __INT_FAST16_FMTd__ "hd"
7235// X86_64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007236// X86_64:#define __INT_FAST16_MAX__ 32767
7237// X86_64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007238// X86_64:#define __INT_FAST32_FMTd__ "d"
7239// X86_64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007240// X86_64:#define __INT_FAST32_MAX__ 2147483647
7241// X86_64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007242// X86_64:#define __INT_FAST64_FMTd__ "ld"
7243// X86_64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007244// X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
7245// X86_64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007246// X86_64:#define __INT_FAST8_FMTd__ "hhd"
7247// X86_64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007248// X86_64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007249// X86_64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007250// X86_64:#define __INT_LEAST16_FMTd__ "hd"
7251// X86_64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007252// X86_64:#define __INT_LEAST16_MAX__ 32767
7253// X86_64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007254// X86_64:#define __INT_LEAST32_FMTd__ "d"
7255// X86_64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007256// X86_64:#define __INT_LEAST32_MAX__ 2147483647
7257// X86_64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007258// X86_64:#define __INT_LEAST64_FMTd__ "ld"
7259// X86_64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007260// X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
7261// X86_64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007262// X86_64:#define __INT_LEAST8_FMTd__ "hhd"
7263// X86_64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007264// X86_64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007265// X86_64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007266// X86_64:#define __INT_MAX__ 2147483647
7267// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7268// X86_64:#define __LDBL_DIG__ 18
7269// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7270// X86_64:#define __LDBL_HAS_DENORM__ 1
7271// X86_64:#define __LDBL_HAS_INFINITY__ 1
7272// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
7273// X86_64:#define __LDBL_MANT_DIG__ 64
7274// X86_64:#define __LDBL_MAX_10_EXP__ 4932
7275// X86_64:#define __LDBL_MAX_EXP__ 16384
7276// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7277// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
7278// X86_64:#define __LDBL_MIN_EXP__ (-16381)
7279// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7280// X86_64:#define __LITTLE_ENDIAN__ 1
7281// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
7282// X86_64:#define __LONG_MAX__ 9223372036854775807L
7283// X86_64:#define __LP64__ 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007284// X86_64-NOT:#define __ILP32__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007285// X86_64:#define __MMX__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007286// X86_64:#define __NO_MATH_INLINES 1
7287// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00007288// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007289// X86_64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007290// X86_64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007291// X86_64:#define __SCHAR_MAX__ 127
7292// X86_64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007293// X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007294// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007295// X86_64:#define __SIZEOF_DOUBLE__ 8
7296// X86_64:#define __SIZEOF_FLOAT__ 4
7297// X86_64:#define __SIZEOF_INT__ 4
7298// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
7299// X86_64:#define __SIZEOF_LONG_LONG__ 8
7300// X86_64:#define __SIZEOF_LONG__ 8
7301// X86_64:#define __SIZEOF_POINTER__ 8
7302// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
7303// X86_64:#define __SIZEOF_SHORT__ 2
7304// X86_64:#define __SIZEOF_SIZE_T__ 8
7305// X86_64:#define __SIZEOF_WCHAR_T__ 4
7306// X86_64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007307// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00007308// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007309// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00007310// X86_64:#define __SSE2_MATH__ 1
7311// X86_64:#define __SSE2__ 1
7312// X86_64:#define __SSE_MATH__ 1
7313// X86_64:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007314// X86_64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007315// X86_64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007316// X86_64:#define __UINT16_TYPE__ unsigned short
7317// X86_64:#define __UINT32_C_SUFFIX__ U
7318// X86_64:#define __UINT32_MAX__ 4294967295U
7319// X86_64:#define __UINT32_TYPE__ unsigned int
7320// X86_64:#define __UINT64_C_SUFFIX__ UL
7321// X86_64:#define __UINT64_MAX__ 18446744073709551615UL
7322// X86_64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007323// X86_64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007324// X86_64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007325// X86_64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007326// X86_64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007327// X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007328// X86_64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007329// X86_64:#define __UINTMAX_WIDTH__ 64
7330// X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
7331// X86_64:#define __UINTPTR_TYPE__ long unsigned int
7332// X86_64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007333// X86_64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007334// X86_64:#define __UINT_FAST16_TYPE__ unsigned short
7335// X86_64:#define __UINT_FAST32_MAX__ 4294967295U
7336// X86_64:#define __UINT_FAST32_TYPE__ unsigned int
7337// X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7338// X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007339// X86_64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007340// X86_64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007341// X86_64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007342// X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
7343// X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
7344// X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
7345// X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7346// X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007347// X86_64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007348// X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
Chris Lattnere963d092009-10-29 04:55:36 +00007349// X86_64:#define __USER_LABEL_PREFIX__ _
7350// X86_64:#define __WCHAR_MAX__ 2147483647
7351// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007352// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007353// X86_64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007354// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007355// X86_64:#define __amd64 1
7356// X86_64:#define __amd64__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007357// X86_64:#define __x86_64 1
7358// X86_64:#define __x86_64__ 1
7359//
James Y Knightc97efa42016-02-11 16:51:29 +00007360// 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 +00007361//
7362// X86_64H:#define __x86_64 1
7363// X86_64H:#define __x86_64__ 1
7364// X86_64H:#define __x86_64h 1
7365// X86_64H:#define __x86_64h__ 1
7366
James Y Knightc97efa42016-02-11 16:51:29 +00007367// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none-gnux32 < /dev/null | FileCheck -match-full-lines -check-prefix X32 %s
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007368//
7369// X32:#define _ILP32 1
7370// X32-NOT:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007371// X32:#define __BIGGEST_ALIGNMENT__ 16
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007372// X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7373// X32:#define __CHAR16_TYPE__ unsigned short
7374// X32:#define __CHAR32_TYPE__ unsigned int
7375// X32:#define __CHAR_BIT__ 8
7376// X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7377// X32:#define __DBL_DIG__ 15
7378// X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
7379// X32:#define __DBL_HAS_DENORM__ 1
7380// X32:#define __DBL_HAS_INFINITY__ 1
7381// X32:#define __DBL_HAS_QUIET_NAN__ 1
7382// X32:#define __DBL_MANT_DIG__ 53
7383// X32:#define __DBL_MAX_10_EXP__ 308
7384// X32:#define __DBL_MAX_EXP__ 1024
7385// X32:#define __DBL_MAX__ 1.7976931348623157e+308
7386// X32:#define __DBL_MIN_10_EXP__ (-307)
7387// X32:#define __DBL_MIN_EXP__ (-1021)
7388// X32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007389// X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007390// X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7391// X32:#define __FLT_DIG__ 6
7392// X32:#define __FLT_EPSILON__ 1.19209290e-7F
7393// X32:#define __FLT_EVAL_METHOD__ 0
7394// X32:#define __FLT_HAS_DENORM__ 1
7395// X32:#define __FLT_HAS_INFINITY__ 1
7396// X32:#define __FLT_HAS_QUIET_NAN__ 1
7397// X32:#define __FLT_MANT_DIG__ 24
7398// X32:#define __FLT_MAX_10_EXP__ 38
7399// X32:#define __FLT_MAX_EXP__ 128
7400// X32:#define __FLT_MAX__ 3.40282347e+38F
7401// X32:#define __FLT_MIN_10_EXP__ (-37)
7402// X32:#define __FLT_MIN_EXP__ (-125)
7403// X32:#define __FLT_MIN__ 1.17549435e-38F
7404// X32:#define __FLT_RADIX__ 2
7405// X32:#define __ILP32__ 1
7406// X32-NOT:#define __LP64__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007407// X32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007408// X32:#define __INT16_FMTd__ "hd"
7409// X32:#define __INT16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007410// X32:#define __INT16_MAX__ 32767
7411// X32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007412// X32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007413// X32:#define __INT32_FMTd__ "d"
7414// X32:#define __INT32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007415// X32:#define __INT32_MAX__ 2147483647
7416// X32:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007417// X32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007418// X32:#define __INT64_FMTd__ "lld"
7419// X32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007420// X32:#define __INT64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007421// X32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007422// X32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007423// X32:#define __INT8_FMTd__ "hhd"
7424// X32:#define __INT8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007425// X32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007426// X32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007427// X32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007428// X32:#define __INTMAX_FMTd__ "lld"
7429// X32:#define __INTMAX_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007430// X32:#define __INTMAX_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007431// X32:#define __INTMAX_TYPE__ long long int
7432// X32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007433// X32:#define __INTPTR_FMTd__ "d"
7434// X32:#define __INTPTR_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007435// X32:#define __INTPTR_MAX__ 2147483647
7436// X32:#define __INTPTR_TYPE__ int
7437// X32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007438// X32:#define __INT_FAST16_FMTd__ "hd"
7439// X32:#define __INT_FAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007440// X32:#define __INT_FAST16_MAX__ 32767
7441// X32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007442// X32:#define __INT_FAST32_FMTd__ "d"
7443// X32:#define __INT_FAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007444// X32:#define __INT_FAST32_MAX__ 2147483647
7445// X32:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007446// X32:#define __INT_FAST64_FMTd__ "lld"
7447// X32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007448// X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007449// X32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007450// X32:#define __INT_FAST8_FMTd__ "hhd"
7451// X32:#define __INT_FAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007452// X32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007453// X32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007454// X32:#define __INT_LEAST16_FMTd__ "hd"
7455// X32:#define __INT_LEAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007456// X32:#define __INT_LEAST16_MAX__ 32767
7457// X32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007458// X32:#define __INT_LEAST32_FMTd__ "d"
7459// X32:#define __INT_LEAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007460// X32:#define __INT_LEAST32_MAX__ 2147483647
7461// X32:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007462// X32:#define __INT_LEAST64_FMTd__ "lld"
7463// X32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007464// X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007465// X32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007466// X32:#define __INT_LEAST8_FMTd__ "hhd"
7467// X32:#define __INT_LEAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007468// X32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007469// X32:#define __INT_LEAST8_TYPE__ signed char
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007470// X32:#define __INT_MAX__ 2147483647
7471// X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7472// X32:#define __LDBL_DIG__ 18
7473// X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7474// X32:#define __LDBL_HAS_DENORM__ 1
7475// X32:#define __LDBL_HAS_INFINITY__ 1
7476// X32:#define __LDBL_HAS_QUIET_NAN__ 1
7477// X32:#define __LDBL_MANT_DIG__ 64
7478// X32:#define __LDBL_MAX_10_EXP__ 4932
7479// X32:#define __LDBL_MAX_EXP__ 16384
7480// X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7481// X32:#define __LDBL_MIN_10_EXP__ (-4931)
7482// X32:#define __LDBL_MIN_EXP__ (-16381)
7483// X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7484// X32:#define __LITTLE_ENDIAN__ 1
7485// X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
7486// X32:#define __LONG_MAX__ 2147483647L
7487// X32:#define __MMX__ 1
7488// X32:#define __NO_MATH_INLINES 1
7489// X32:#define __POINTER_WIDTH__ 32
7490// X32:#define __PTRDIFF_TYPE__ int
7491// X32:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00007492// X32:#define __REGISTER_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007493// X32:#define __SCHAR_MAX__ 127
7494// X32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007495// X32:#define __SIG_ATOMIC_MAX__ 2147483647
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007496// X32:#define __SIG_ATOMIC_WIDTH__ 32
7497// X32:#define __SIZEOF_DOUBLE__ 8
7498// X32:#define __SIZEOF_FLOAT__ 4
7499// X32:#define __SIZEOF_INT__ 4
7500// X32:#define __SIZEOF_LONG_DOUBLE__ 16
7501// X32:#define __SIZEOF_LONG_LONG__ 8
7502// X32:#define __SIZEOF_LONG__ 4
7503// X32:#define __SIZEOF_POINTER__ 4
7504// X32:#define __SIZEOF_PTRDIFF_T__ 4
7505// X32:#define __SIZEOF_SHORT__ 2
7506// X32:#define __SIZEOF_SIZE_T__ 4
7507// X32:#define __SIZEOF_WCHAR_T__ 4
7508// X32:#define __SIZEOF_WINT_T__ 4
7509// X32:#define __SIZE_MAX__ 4294967295U
7510// X32:#define __SIZE_TYPE__ unsigned int
7511// X32:#define __SIZE_WIDTH__ 32
7512// X32:#define __SSE2_MATH__ 1
7513// X32:#define __SSE2__ 1
7514// X32:#define __SSE_MATH__ 1
7515// X32:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007516// X32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007517// X32:#define __UINT16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007518// X32:#define __UINT16_TYPE__ unsigned short
7519// X32:#define __UINT32_C_SUFFIX__ U
7520// X32:#define __UINT32_MAX__ 4294967295U
7521// X32:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007522// X32:#define __UINT64_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007523// X32:#define __UINT64_MAX__ 18446744073709551615ULL
7524// X32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007525// X32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007526// X32:#define __UINT8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007527// X32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007528// X32:#define __UINTMAX_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007529// X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
7530// X32:#define __UINTMAX_TYPE__ long long unsigned int
7531// X32:#define __UINTMAX_WIDTH__ 64
7532// X32:#define __UINTPTR_MAX__ 4294967295U
7533// X32:#define __UINTPTR_TYPE__ unsigned int
7534// X32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007535// X32:#define __UINT_FAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007536// X32:#define __UINT_FAST16_TYPE__ unsigned short
7537// X32:#define __UINT_FAST32_MAX__ 4294967295U
7538// X32:#define __UINT_FAST32_TYPE__ unsigned int
7539// X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7540// X32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007541// X32:#define __UINT_FAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007542// X32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007543// X32:#define __UINT_LEAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007544// X32:#define __UINT_LEAST16_TYPE__ unsigned short
7545// X32:#define __UINT_LEAST32_MAX__ 4294967295U
7546// X32:#define __UINT_LEAST32_TYPE__ unsigned int
7547// X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7548// X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007549// X32:#define __UINT_LEAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007550// X32:#define __UINT_LEAST8_TYPE__ unsigned char
7551// X32:#define __USER_LABEL_PREFIX__ _
7552// X32:#define __WCHAR_MAX__ 2147483647
7553// X32:#define __WCHAR_TYPE__ int
7554// X32:#define __WCHAR_WIDTH__ 32
7555// X32:#define __WINT_TYPE__ int
7556// X32:#define __WINT_WIDTH__ 32
7557// X32:#define __amd64 1
7558// X32:#define __amd64__ 1
7559// X32:#define __x86_64 1
7560// X32:#define __x86_64__ 1
7561//
James Y Knightc97efa42016-02-11 16:51:29 +00007562// 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 +00007563//
7564// X86_64-CLOUDABI:#define _LP64 1
7565// X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
7566// X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
7567// X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
7568// X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
7569// X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
7570// X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
7571// X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
7572// X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7573// X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
7574// X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
7575// X86_64-CLOUDABI:#define __CHAR_BIT__ 8
7576// X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
7577// X86_64-CLOUDABI:#define __CloudABI__ 1
7578// X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
7579// X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7580// X86_64-CLOUDABI:#define __DBL_DIG__ 15
7581// X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
7582// X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
7583// X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
7584// X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
7585// X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
7586// X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
7587// X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
7588// X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
7589// X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
7590// X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
7591// X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
7592// X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
7593// X86_64-CLOUDABI:#define __ELF__ 1
7594// X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
7595// X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
7596// X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7597// X86_64-CLOUDABI:#define __FLT_DIG__ 6
7598// X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
7599// X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
7600// X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
7601// X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
7602// X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
7603// X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
7604// X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
7605// X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
7606// X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
7607// X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
7608// X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
7609// X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
7610// X86_64-CLOUDABI:#define __FLT_RADIX__ 2
7611// X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
7612// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
7613// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
7614// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
7615// X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
7616// X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
7617// X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
7618// X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
7619// X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
7620// X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
7621// X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
7622// X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
7623// X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
7624// X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
7625// X86_64-CLOUDABI:#define __GNUC__ 4
7626// X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
James Y Knightc97efa42016-02-11 16:51:29 +00007627// X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007628// X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
7629// X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
7630// X86_64-CLOUDABI:#define __INT16_MAX__ 32767
7631// X86_64-CLOUDABI:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007632// X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007633// X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
7634// X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
7635// X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
7636// X86_64-CLOUDABI:#define __INT32_TYPE__ int
7637// X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
7638// X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
7639// X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
7640// X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
7641// X86_64-CLOUDABI:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007642// X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007643// X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
7644// X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
7645// X86_64-CLOUDABI:#define __INT8_MAX__ 127
7646// X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
7647// X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
7648// X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
7649// X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
7650// X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
7651// X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
7652// X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
7653// X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
7654// X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
7655// X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
7656// X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
7657// X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
7658// X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
7659// X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
7660// X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
7661// X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
7662// X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
7663// X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
7664// X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
7665// X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
7666// X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
7667// X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
7668// X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
7669// X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
7670// X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
7671// X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
7672// X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
7673// X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
7674// X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
7675// X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
7676// X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
7677// X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
7678// X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
7679// X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
7680// X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
7681// X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
7682// X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
7683// X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
7684// X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
7685// X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
7686// X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
7687// X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
7688// X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
7689// X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
7690// X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
7691// X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
7692// X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7693// X86_64-CLOUDABI:#define __LDBL_DIG__ 18
7694// X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7695// X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
7696// X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
7697// X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
7698// X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
7699// X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
7700// X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
7701// X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7702// X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
7703// X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
7704// X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7705// X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
7706// X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
7707// X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
7708// X86_64-CLOUDABI:#define __LP64__ 1
7709// X86_64-CLOUDABI:#define __MMX__ 1
7710// X86_64-CLOUDABI:#define __NO_INLINE__ 1
7711// X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
7712// X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
7713// X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
7714// X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
7715// X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
7716// X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
7717// X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
7718// X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
7719// X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
7720// X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
7721// X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007722// X86_64-CLOUDABI:#define __REGISTER_PREFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007723// X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
7724// X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
7725// X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
7726// X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
7727// X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
7728// X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
7729// X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
7730// X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
7731// X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
7732// X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
7733// X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
7734// X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
7735// X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
7736// X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
7737// X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
7738// X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
7739// X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
7740// X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
7741// X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
7742// X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
7743// X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
7744// X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
7745// X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
7746// X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
7747// X86_64-CLOUDABI:#define __SSE2_MATH__ 1
7748// X86_64-CLOUDABI:#define __SSE2__ 1
7749// X86_64-CLOUDABI:#define __SSE_MATH__ 1
7750// X86_64-CLOUDABI:#define __SSE__ 1
7751// X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
7752// X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
7753// X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
7754// X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
7755// X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
7756// X86_64-CLOUDABI:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007757// X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007758// X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
7759// X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
7760// X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
7761// X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
7762// X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
7763// X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
7764// X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
7765// X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
7766// X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
7767// X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
7768// X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
7769// X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
7770// X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
7771// X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
7772// X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
7773// X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
7774// X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
7775// X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
7776// X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
7777// X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007778// X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00007779// X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
7780// X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
7781// X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
7782// X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
7783// X86_64-CLOUDABI:#define __UINT8_MAX__ 255
7784// X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
7785// X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
7786// X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
7787// X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
7788// X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
7789// X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
7790// X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
7791// X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
7792// X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
7793// X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
7794// X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
7795// X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
7796// X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
7797// X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
7798// X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
7799// X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
7800// X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
7801// X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
7802// X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
7803// X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
7804// X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
7805// X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
7806// X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
7807// X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
7808// X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
7809// X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
7810// X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
7811// X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
7812// X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
7813// X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
7814// X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
7815// X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
7816// X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7817// X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
7818// X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
7819// X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
7820// X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
7821// X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
7822// X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
7823// X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
7824// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
7825// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
7826// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
7827// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
7828// X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
7829// X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
7830// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
7831// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
7832// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
7833// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
7834// X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
7835// X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
7836// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
7837// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
7838// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
7839// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
7840// X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7841// X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
7842// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
7843// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
7844// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
7845// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
7846// X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
7847// X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00007848// X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
7849// X86_64-CLOUDABI:#define __VERSION__ "4.2.1 Compatible{{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00007850// X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
7851// X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
7852// X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
7853// X86_64-CLOUDABI:#define __WINT_TYPE__ int
7854// X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
7855// X86_64-CLOUDABI:#define __amd64 1
7856// X86_64-CLOUDABI:#define __amd64__ 1
7857// X86_64-CLOUDABI:#define __clang__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007858// X86_64-CLOUDABI:#define __clang_major__ {{.*}}
7859// X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
7860// X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
7861// X86_64-CLOUDABI:#define __clang_version__ {{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00007862// X86_64-CLOUDABI:#define __llvm__ 1
7863// X86_64-CLOUDABI:#define __x86_64 1
7864// X86_64-CLOUDABI:#define __x86_64__ 1
7865//
James Y Knightc97efa42016-02-11 16:51:29 +00007866// 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 +00007867//
7868// X86_64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007869// X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007870// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00007871// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
7872// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
7873// X86_64-LINUX:#define __CHAR_BIT__ 8
7874// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7875// X86_64-LINUX:#define __DBL_DIG__ 15
7876// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
7877// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
7878// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
7879// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
7880// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
7881// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
7882// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
7883// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
7884// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
7885// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
7886// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007887// X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00007888// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7889// X86_64-LINUX:#define __FLT_DIG__ 6
7890// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
7891// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
7892// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
7893// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
7894// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
7895// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
7896// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
7897// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
7898// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
7899// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
7900// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
7901// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
7902// X86_64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007903// X86_64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007904// X86_64-LINUX:#define __INT16_FMTd__ "hd"
7905// X86_64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007906// X86_64-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00007907// X86_64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007908// X86_64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007909// X86_64-LINUX:#define __INT32_FMTd__ "d"
7910// X86_64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007911// X86_64-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00007912// X86_64-LINUX:#define __INT32_TYPE__ int
7913// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007914// X86_64-LINUX:#define __INT64_FMTd__ "ld"
7915// X86_64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007916// X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00007917// X86_64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007918// X86_64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007919// X86_64-LINUX:#define __INT8_FMTd__ "hhd"
7920// X86_64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007921// X86_64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007922// X86_64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007923// X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007924// X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
7925// X86_64-LINUX:#define __INTMAX_FMTi__ "li"
Douglas Gregore6d6e512011-01-12 21:19:25 +00007926// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
7927// X86_64-LINUX:#define __INTMAX_TYPE__ long int
7928// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007929// X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
7930// X86_64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007931// X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00007932// X86_64-LINUX:#define __INTPTR_TYPE__ long int
7933// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007934// X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
7935// X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007936// X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
7937// X86_64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007938// X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
7939// X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007940// X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
7941// X86_64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007942// X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
7943// X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007944// X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
7945// X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007946// X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
7947// X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007948// X86_64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007949// X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007950// X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
7951// X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007952// X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
7953// X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007954// X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
7955// X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007956// X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
7957// X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007958// X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
7959// X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007960// X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
7961// X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007962// X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
7963// X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007964// X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007965// X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00007966// X86_64-LINUX:#define __INT_MAX__ 2147483647
7967// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7968// X86_64-LINUX:#define __LDBL_DIG__ 18
7969// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7970// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
7971// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
7972// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
7973// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
7974// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
7975// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
7976// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7977// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
7978// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
7979// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7980// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
7981// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
7982// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
7983// X86_64-LINUX:#define __LP64__ 1
7984// X86_64-LINUX:#define __MMX__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00007985// X86_64-LINUX:#define __NO_MATH_INLINES 1
7986// X86_64-LINUX:#define __POINTER_WIDTH__ 64
7987// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
7988// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007989// X86_64-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00007990// X86_64-LINUX:#define __SCHAR_MAX__ 127
7991// X86_64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007992// X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00007993// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
7994// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
7995// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
7996// X86_64-LINUX:#define __SIZEOF_INT__ 4
7997// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
7998// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
7999// X86_64-LINUX:#define __SIZEOF_LONG__ 8
8000// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
8001// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
8002// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
8003// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
8004// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
8005// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00008006// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008007// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
8008// X86_64-LINUX:#define __SIZE_WIDTH__ 64
8009// X86_64-LINUX:#define __SSE2_MATH__ 1
8010// X86_64-LINUX:#define __SSE2__ 1
8011// X86_64-LINUX:#define __SSE_MATH__ 1
8012// X86_64-LINUX:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008013// X86_64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008014// X86_64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008015// X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
8016// X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
8017// X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
8018// X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
8019// X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
8020// X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
8021// X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008022// X86_64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008023// X86_64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008024// X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008025// X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008026// X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008027// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008028// X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
8029// X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
8030// X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
8031// X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008032// X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008033// X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
8034// X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
8035// X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
8036// X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8037// X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008038// X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008039// X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008040// X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008041// X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
8042// X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
8043// X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
8044// X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8045// X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008046// X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008047// X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008048// X86_64-LINUX:#define __USER_LABEL_PREFIX__
8049// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
8050// X86_64-LINUX:#define __WCHAR_TYPE__ int
8051// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
8052// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
8053// X86_64-LINUX:#define __WINT_WIDTH__ 32
8054// X86_64-LINUX:#define __amd64 1
8055// X86_64-LINUX:#define __amd64__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008056// X86_64-LINUX:#define __x86_64 1
8057// X86_64-LINUX:#define __x86_64__ 1
8058//
James Y Knightc97efa42016-02-11 16:51:29 +00008059// 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 +00008060//
Ed Schouten49920992015-02-23 09:12:31 +00008061// X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
8062// X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
Ed Schoutend0621462013-09-29 07:54:52 +00008063// X86_64-FREEBSD:#define __FreeBSD__ 9
8064// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
Ed Schouten49920992015-02-23 09:12:31 +00008065// X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
Ed Schoutend0621462013-09-29 07:54:52 +00008066// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
8067//
James Y Knightc97efa42016-02-11 16:51:29 +00008068// 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 +00008069//
8070// X86_64-NETBSD:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008071// X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008072// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8073// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
8074// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
8075// X86_64-NETBSD:#define __CHAR_BIT__ 8
8076// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8077// X86_64-NETBSD:#define __DBL_DIG__ 15
8078// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
8079// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
8080// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
8081// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
8082// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
8083// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
8084// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
8085// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
8086// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
8087// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
8088// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008089// X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008090// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8091// X86_64-NETBSD:#define __FLT_DIG__ 6
8092// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
8093// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
8094// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
8095// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
8096// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
8097// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
8098// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
8099// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
8100// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
8101// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
8102// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
8103// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
8104// X86_64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008105// X86_64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008106// X86_64-NETBSD:#define __INT16_FMTd__ "hd"
8107// X86_64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008108// X86_64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008109// X86_64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008110// X86_64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008111// X86_64-NETBSD:#define __INT32_FMTd__ "d"
8112// X86_64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008113// X86_64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008114// X86_64-NETBSD:#define __INT32_TYPE__ int
8115// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008116// X86_64-NETBSD:#define __INT64_FMTd__ "ld"
8117// X86_64-NETBSD:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008118// X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008119// X86_64-NETBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008120// X86_64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008121// X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
8122// X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008123// X86_64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008124// X86_64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008125// X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008126// X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
8127// X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008128// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
8129// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
8130// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008131// X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
8132// X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008133// X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008134// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
8135// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008136// X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
8137// X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008138// X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
8139// X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008140// X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
8141// X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008142// X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
8143// X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008144// X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
8145// X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008146// X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
8147// X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008148// X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
8149// X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008150// X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008151// X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008152// X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
8153// X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008154// X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
8155// X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008156// X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
8157// X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008158// X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
8159// X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008160// X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
8161// X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008162// X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
8163// X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008164// X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
8165// X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008166// X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008167// X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008168// X86_64-NETBSD:#define __INT_MAX__ 2147483647
8169// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8170// X86_64-NETBSD:#define __LDBL_DIG__ 18
8171// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8172// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
8173// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
8174// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
8175// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
8176// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
8177// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
8178// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8179// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
8180// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
8181// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8182// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
8183// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
8184// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
8185// X86_64-NETBSD:#define __LP64__ 1
8186// X86_64-NETBSD:#define __MMX__ 1
8187// X86_64-NETBSD:#define __NO_MATH_INLINES 1
8188// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
8189// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
8190// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008191// X86_64-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008192// X86_64-NETBSD:#define __SCHAR_MAX__ 127
8193// X86_64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008194// X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008195// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
8196// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
8197// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
8198// X86_64-NETBSD:#define __SIZEOF_INT__ 4
8199// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
8200// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
8201// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
8202// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
8203// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
8204// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
8205// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
8206// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
8207// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
8208// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
8209// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
8210// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
8211// X86_64-NETBSD:#define __SSE2_MATH__ 1
8212// X86_64-NETBSD:#define __SSE2__ 1
8213// X86_64-NETBSD:#define __SSE_MATH__ 1
8214// X86_64-NETBSD:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008215// X86_64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008216// X86_64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008217// X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
8218// X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
8219// X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
8220// X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
8221// X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
8222// X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
8223// X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008224// X86_64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008225// X86_64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008226// X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008227// X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008228// X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008229// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008230// X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
8231// X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
8232// X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
8233// X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008234// X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008235// X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
8236// X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
8237// X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
8238// X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8239// X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008240// X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008241// X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008242// X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008243// X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
8244// X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
8245// X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
8246// X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8247// X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008248// X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008249// X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008250// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
8251// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
8252// X86_64-NETBSD:#define __WCHAR_TYPE__ int
8253// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
8254// X86_64-NETBSD:#define __WINT_TYPE__ int
8255// X86_64-NETBSD:#define __WINT_WIDTH__ 32
8256// X86_64-NETBSD:#define __amd64 1
8257// X86_64-NETBSD:#define __amd64__ 1
8258// X86_64-NETBSD:#define __x86_64 1
8259// X86_64-NETBSD:#define __x86_64__ 1
8260//
James Y Knightc97efa42016-02-11 16:51:29 +00008261// 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 +00008262//
8263// PS4:#define _LP64 1
8264// PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8265// PS4:#define __CHAR16_TYPE__ unsigned short
8266// PS4:#define __CHAR32_TYPE__ unsigned int
8267// PS4:#define __CHAR_BIT__ 8
8268// PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8269// PS4:#define __DBL_DIG__ 15
8270// PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
8271// PS4:#define __DBL_HAS_DENORM__ 1
8272// PS4:#define __DBL_HAS_INFINITY__ 1
8273// PS4:#define __DBL_HAS_QUIET_NAN__ 1
8274// PS4:#define __DBL_MANT_DIG__ 53
8275// PS4:#define __DBL_MAX_10_EXP__ 308
8276// PS4:#define __DBL_MAX_EXP__ 1024
8277// PS4:#define __DBL_MAX__ 1.7976931348623157e+308
8278// PS4:#define __DBL_MIN_10_EXP__ (-307)
8279// PS4:#define __DBL_MIN_EXP__ (-1021)
8280// PS4:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008281// PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008282// PS4:#define __ELF__ 1
8283// PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8284// PS4:#define __FLT_DIG__ 6
8285// PS4:#define __FLT_EPSILON__ 1.19209290e-7F
8286// PS4:#define __FLT_EVAL_METHOD__ 0
8287// PS4:#define __FLT_HAS_DENORM__ 1
8288// PS4:#define __FLT_HAS_INFINITY__ 1
8289// PS4:#define __FLT_HAS_QUIET_NAN__ 1
8290// PS4:#define __FLT_MANT_DIG__ 24
8291// PS4:#define __FLT_MAX_10_EXP__ 38
8292// PS4:#define __FLT_MAX_EXP__ 128
8293// PS4:#define __FLT_MAX__ 3.40282347e+38F
8294// PS4:#define __FLT_MIN_10_EXP__ (-37)
8295// PS4:#define __FLT_MIN_EXP__ (-125)
8296// PS4:#define __FLT_MIN__ 1.17549435e-38F
8297// PS4:#define __FLT_RADIX__ 2
8298// PS4:#define __FreeBSD__ 9
8299// PS4:#define __FreeBSD_cc_version 900001
8300// PS4:#define __INT16_TYPE__ short
8301// PS4:#define __INT32_TYPE__ int
8302// PS4:#define __INT64_C_SUFFIX__ L
8303// PS4:#define __INT64_TYPE__ long int
8304// PS4:#define __INT8_TYPE__ signed char
8305// PS4:#define __INTMAX_MAX__ 9223372036854775807L
8306// PS4:#define __INTMAX_TYPE__ long int
8307// PS4:#define __INTMAX_WIDTH__ 64
8308// PS4:#define __INTPTR_TYPE__ long int
8309// PS4:#define __INTPTR_WIDTH__ 64
8310// PS4:#define __INT_MAX__ 2147483647
8311// PS4:#define __KPRINTF_ATTRIBUTE__ 1
8312// PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8313// PS4:#define __LDBL_DIG__ 18
8314// PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8315// PS4:#define __LDBL_HAS_DENORM__ 1
8316// PS4:#define __LDBL_HAS_INFINITY__ 1
8317// PS4:#define __LDBL_HAS_QUIET_NAN__ 1
8318// PS4:#define __LDBL_MANT_DIG__ 64
8319// PS4:#define __LDBL_MAX_10_EXP__ 4932
8320// PS4:#define __LDBL_MAX_EXP__ 16384
8321// PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8322// PS4:#define __LDBL_MIN_10_EXP__ (-4931)
8323// PS4:#define __LDBL_MIN_EXP__ (-16381)
8324// PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8325// PS4:#define __LITTLE_ENDIAN__ 1
8326// PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
8327// PS4:#define __LONG_MAX__ 9223372036854775807L
8328// PS4:#define __LP64__ 1
8329// PS4:#define __MMX__ 1
8330// PS4:#define __NO_MATH_INLINES 1
8331// PS4:#define __POINTER_WIDTH__ 64
8332// PS4:#define __PS4__ 1
8333// PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
8334// PS4:#define __PTRDIFF_TYPE__ long int
8335// PS4:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008336// PS4:#define __REGISTER_PREFIX__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008337// PS4:#define __SCHAR_MAX__ 127
8338// PS4:#define __SHRT_MAX__ 32767
8339// PS4:#define __SIG_ATOMIC_MAX__ 2147483647
8340// PS4:#define __SIG_ATOMIC_WIDTH__ 32
8341// PS4:#define __SIZEOF_DOUBLE__ 8
8342// PS4:#define __SIZEOF_FLOAT__ 4
8343// PS4:#define __SIZEOF_INT__ 4
8344// PS4:#define __SIZEOF_LONG_DOUBLE__ 16
8345// PS4:#define __SIZEOF_LONG_LONG__ 8
8346// PS4:#define __SIZEOF_LONG__ 8
8347// PS4:#define __SIZEOF_POINTER__ 8
8348// PS4:#define __SIZEOF_PTRDIFF_T__ 8
8349// PS4:#define __SIZEOF_SHORT__ 2
8350// PS4:#define __SIZEOF_SIZE_T__ 8
8351// PS4:#define __SIZEOF_WCHAR_T__ 2
8352// PS4:#define __SIZEOF_WINT_T__ 4
8353// PS4:#define __SIZE_TYPE__ long unsigned int
8354// PS4:#define __SIZE_WIDTH__ 64
8355// PS4:#define __SSE2_MATH__ 1
8356// PS4:#define __SSE2__ 1
8357// PS4:#define __SSE_MATH__ 1
8358// PS4:#define __SSE__ 1
8359// PS4:#define __UINTMAX_TYPE__ long unsigned int
8360// PS4:#define __USER_LABEL_PREFIX__
8361// PS4:#define __WCHAR_MAX__ 65535
8362// PS4:#define __WCHAR_TYPE__ unsigned short
8363// PS4:#define __WCHAR_UNSIGNED__ 1
8364// PS4:#define __WCHAR_WIDTH__ 16
8365// PS4:#define __WINT_TYPE__ int
8366// PS4:#define __WINT_WIDTH__ 32
8367// PS4:#define __amd64 1
8368// PS4:#define __amd64__ 1
8369// PS4:#define __unix 1
8370// PS4:#define __unix__ 1
8371// PS4:#define __x86_64 1
8372// PS4:#define __x86_64__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008373//
James Y Knightc97efa42016-02-11 16:51:29 +00008374// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8375// RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8376// X86-64-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00008377//
James Y Knightc97efa42016-02-11 16:51:29 +00008378// 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 +00008379// SPARCV9:#define __INT64_TYPE__ long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008380// SPARCV9:#define __INTMAX_C_SUFFIX__ L
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008381// SPARCV9:#define __INTMAX_TYPE__ long int
8382// SPARCV9:#define __INTPTR_TYPE__ long int
8383// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
8384// SPARCV9:#define __LP64__ 1
8385// SPARCV9:#define __SIZEOF_LONG__ 8
8386// SPARCV9:#define __SIZEOF_POINTER__ 8
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00008387// SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008388//
James Y Knightc97efa42016-02-11 16:51:29 +00008389// 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 +00008390// SPARC64-OBSD:#define __INT64_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008391// SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008392// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008393// SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008394// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
8395//
James Y Knightc97efa42016-02-11 16:51:29 +00008396// 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 +00008397// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
8398// KFREEBSD-DEFINE:#define __GLIBC__ 1
8399//
James Y Knightc97efa42016-02-11 16:51:29 +00008400// 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 +00008401// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
8402// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
8403//
James Y Knightc97efa42016-02-11 16:51:29 +00008404// 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 +00008405// GNUSOURCE:#define _GNU_SOURCE 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008406//
James Y Knightc97efa42016-02-11 16:51:29 +00008407// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
8408// NORTTI: #define __GXX_ABI_VERSION {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +00008409// NORTTI-NOT:#define __GXX_RTTI
James Y Knightc97efa42016-02-11 16:51:29 +00008410// NORTTI:#define __STDC__ 1
Evgeniy Stepanov94dc4c92012-04-26 12:08:09 +00008411//
James Y Knightc97efa42016-02-11 16:51:29 +00008412// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID %s
8413// ANDROID:#define __ANDROID__ 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008414//
James Y Knightc97efa42016-02-11 16:51:29 +00008415// 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 +00008416// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008417//
James Y Knightc97efa42016-02-11 16:51:29 +00008418// 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 +00008419// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8420// XCORE:#define __LITTLE_ENDIAN__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00008421// XCORE:#define __XS1B__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008422//
8423// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
8424// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00008425// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY32 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00008426//
James Y Knightc97efa42016-02-11 16:51:29 +00008427// WEBASSEMBLY32:#define _ILP32 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008428// WEBASSEMBLY32-NOT:#define _LP64
James Y Knightc97efa42016-02-11 16:51:29 +00008429// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQUIRE 2
8430// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQ_REL 4
8431// WEBASSEMBLY32-NEXT:#define __ATOMIC_CONSUME 1
8432// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELAXED 0
8433// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELEASE 3
8434// WEBASSEMBLY32-NEXT:#define __ATOMIC_SEQ_CST 5
8435// WEBASSEMBLY32-NEXT:#define __BIGGEST_ALIGNMENT__ 16
8436// WEBASSEMBLY32-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8437// WEBASSEMBLY32-NEXT:#define __CHAR16_TYPE__ unsigned short
8438// WEBASSEMBLY32-NEXT:#define __CHAR32_TYPE__ unsigned int
8439// WEBASSEMBLY32-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00008440// WEBASSEMBLY32-NOT:#define __CHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008441// WEBASSEMBLY32-NEXT:#define __CONSTANT_CFSTRINGS__ 1
8442// WEBASSEMBLY32-NEXT:#define __DBL_DECIMAL_DIG__ 17
8443// WEBASSEMBLY32-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8444// WEBASSEMBLY32-NEXT:#define __DBL_DIG__ 15
8445// WEBASSEMBLY32-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
8446// WEBASSEMBLY32-NEXT:#define __DBL_HAS_DENORM__ 1
8447// WEBASSEMBLY32-NEXT:#define __DBL_HAS_INFINITY__ 1
8448// WEBASSEMBLY32-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
8449// WEBASSEMBLY32-NEXT:#define __DBL_MANT_DIG__ 53
8450// WEBASSEMBLY32-NEXT:#define __DBL_MAX_10_EXP__ 308
8451// WEBASSEMBLY32-NEXT:#define __DBL_MAX_EXP__ 1024
8452// WEBASSEMBLY32-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
8453// WEBASSEMBLY32-NEXT:#define __DBL_MIN_10_EXP__ (-307)
8454// WEBASSEMBLY32-NEXT:#define __DBL_MIN_EXP__ (-1021)
8455// WEBASSEMBLY32-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
8456// WEBASSEMBLY32-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00008457// WEBASSEMBLY32-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00008458// WEBASSEMBLY32-NEXT:#define __FINITE_MATH_ONLY__ 0
8459// WEBASSEMBLY32-NEXT:#define __FLT_DECIMAL_DIG__ 9
8460// WEBASSEMBLY32-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8461// WEBASSEMBLY32-NEXT:#define __FLT_DIG__ 6
8462// WEBASSEMBLY32-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
8463// WEBASSEMBLY32-NEXT:#define __FLT_EVAL_METHOD__ 0
8464// WEBASSEMBLY32-NEXT:#define __FLT_HAS_DENORM__ 1
8465// WEBASSEMBLY32-NEXT:#define __FLT_HAS_INFINITY__ 1
8466// WEBASSEMBLY32-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
8467// WEBASSEMBLY32-NEXT:#define __FLT_MANT_DIG__ 24
8468// WEBASSEMBLY32-NEXT:#define __FLT_MAX_10_EXP__ 38
8469// WEBASSEMBLY32-NEXT:#define __FLT_MAX_EXP__ 128
8470// WEBASSEMBLY32-NEXT:#define __FLT_MAX__ 3.40282347e+38F
8471// WEBASSEMBLY32-NEXT:#define __FLT_MIN_10_EXP__ (-37)
8472// WEBASSEMBLY32-NEXT:#define __FLT_MIN_EXP__ (-125)
8473// WEBASSEMBLY32-NEXT:#define __FLT_MIN__ 1.17549435e-38F
8474// WEBASSEMBLY32-NEXT:#define __FLT_RADIX__ 2
8475// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8476// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8477// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8478// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8479// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8480// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
8481// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8482// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8483// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8484// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8485// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00008486// WEBASSEMBLY32-NEXT:#define __GNUC_MINOR__ {{.*}}
8487// WEBASSEMBLY32-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008488// WEBASSEMBLY32-NEXT:#define __GNUC_STDC_INLINE__ 1
Tim Northover25809012016-02-11 21:31:51 +00008489// WEBASSEMBLY32-NEXT:#define __GNUC__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008490// WEBASSEMBLY32-NEXT:#define __GXX_ABI_VERSION 1002
8491// WEBASSEMBLY32-NEXT:#define __ILP32__ 1
8492// WEBASSEMBLY32-NEXT:#define __INT16_C_SUFFIX__
8493// WEBASSEMBLY32-NEXT:#define __INT16_FMTd__ "hd"
8494// WEBASSEMBLY32-NEXT:#define __INT16_FMTi__ "hi"
8495// WEBASSEMBLY32-NEXT:#define __INT16_MAX__ 32767
8496// WEBASSEMBLY32-NEXT:#define __INT16_TYPE__ short
8497// WEBASSEMBLY32-NEXT:#define __INT32_C_SUFFIX__
8498// WEBASSEMBLY32-NEXT:#define __INT32_FMTd__ "d"
8499// WEBASSEMBLY32-NEXT:#define __INT32_FMTi__ "i"
8500// WEBASSEMBLY32-NEXT:#define __INT32_MAX__ 2147483647
8501// WEBASSEMBLY32-NEXT:#define __INT32_TYPE__ int
8502// WEBASSEMBLY32-NEXT:#define __INT64_C_SUFFIX__ LL
8503// WEBASSEMBLY32-NEXT:#define __INT64_FMTd__ "lld"
8504// WEBASSEMBLY32-NEXT:#define __INT64_FMTi__ "lli"
8505// WEBASSEMBLY32-NEXT:#define __INT64_MAX__ 9223372036854775807LL
8506// WEBASSEMBLY32-NEXT:#define __INT64_TYPE__ long long int
8507// WEBASSEMBLY32-NEXT:#define __INT8_C_SUFFIX__
8508// WEBASSEMBLY32-NEXT:#define __INT8_FMTd__ "hhd"
8509// WEBASSEMBLY32-NEXT:#define __INT8_FMTi__ "hhi"
8510// WEBASSEMBLY32-NEXT:#define __INT8_MAX__ 127
8511// WEBASSEMBLY32-NEXT:#define __INT8_TYPE__ signed char
8512// WEBASSEMBLY32-NEXT:#define __INTMAX_C_SUFFIX__ LL
8513// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTd__ "lld"
8514// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTi__ "lli"
8515// WEBASSEMBLY32-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
8516// WEBASSEMBLY32-NEXT:#define __INTMAX_TYPE__ long long int
8517// WEBASSEMBLY32-NEXT:#define __INTMAX_WIDTH__ 64
8518// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTd__ "ld"
8519// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTi__ "li"
8520// WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647L
8521// WEBASSEMBLY32-NEXT:#define __INTPTR_TYPE__ long int
8522// WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
8523// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTd__ "hd"
8524// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTi__ "hi"
8525// WEBASSEMBLY32-NEXT:#define __INT_FAST16_MAX__ 32767
8526// WEBASSEMBLY32-NEXT:#define __INT_FAST16_TYPE__ short
8527// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTd__ "d"
8528// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTi__ "i"
8529// WEBASSEMBLY32-NEXT:#define __INT_FAST32_MAX__ 2147483647
8530// WEBASSEMBLY32-NEXT:#define __INT_FAST32_TYPE__ int
8531// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTd__ "lld"
8532// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTi__ "lli"
8533// WEBASSEMBLY32-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
8534// WEBASSEMBLY32-NEXT:#define __INT_FAST64_TYPE__ long long int
8535// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTd__ "hhd"
8536// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTi__ "hhi"
8537// WEBASSEMBLY32-NEXT:#define __INT_FAST8_MAX__ 127
8538// WEBASSEMBLY32-NEXT:#define __INT_FAST8_TYPE__ signed char
8539// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTd__ "hd"
8540// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTi__ "hi"
8541// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_MAX__ 32767
8542// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_TYPE__ short
8543// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTd__ "d"
8544// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTi__ "i"
8545// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_MAX__ 2147483647
8546// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_TYPE__ int
8547// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTd__ "lld"
8548// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTi__ "lli"
8549// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8550// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_TYPE__ long long int
8551// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
8552// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
8553// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_MAX__ 127
8554// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_TYPE__ signed char
8555// WEBASSEMBLY32-NEXT:#define __INT_MAX__ 2147483647
8556// WEBASSEMBLY32-NEXT:#define __LDBL_DECIMAL_DIG__ 36
8557// WEBASSEMBLY32-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
8558// WEBASSEMBLY32-NEXT:#define __LDBL_DIG__ 33
8559// WEBASSEMBLY32-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
8560// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_DENORM__ 1
8561// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_INFINITY__ 1
8562// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
8563// WEBASSEMBLY32-NEXT:#define __LDBL_MANT_DIG__ 113
8564// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_10_EXP__ 4932
8565// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_EXP__ 16384
8566// WEBASSEMBLY32-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
8567// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
8568// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_EXP__ (-16381)
8569// WEBASSEMBLY32-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
8570// WEBASSEMBLY32-NEXT:#define __LITTLE_ENDIAN__ 1
8571// WEBASSEMBLY32-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
8572// WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
Dan Gohmanc2853072015-09-03 22:51:53 +00008573// WEBASSEMBLY32-NOT:#define __LP64__
James Y Knightc97efa42016-02-11 16:51:29 +00008574// WEBASSEMBLY32-NEXT:#define __NO_INLINE__ 1
8575// WEBASSEMBLY32-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
8576// WEBASSEMBLY32-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
8577// WEBASSEMBLY32-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
8578// WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
8579// WEBASSEMBLY32-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
8580// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTd__ "ld"
8581// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTi__ "li"
8582// WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647L
8583// WEBASSEMBLY32-NEXT:#define __PTRDIFF_TYPE__ long int
8584// WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
Dan Gohmanc2853072015-09-03 22:51:53 +00008585// WEBASSEMBLY32-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00008586// WEBASSEMBLY32-NEXT:#define __SCHAR_MAX__ 127
8587// WEBASSEMBLY32-NEXT:#define __SHRT_MAX__ 32767
8588// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
8589// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
8590// WEBASSEMBLY32-NEXT:#define __SIZEOF_DOUBLE__ 8
8591// WEBASSEMBLY32-NEXT:#define __SIZEOF_FLOAT__ 4
8592// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT128__ 16
8593// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT__ 4
8594// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
8595// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_LONG__ 8
8596// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
8597// WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
8598// WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
8599// WEBASSEMBLY32-NEXT:#define __SIZEOF_SHORT__ 2
8600// WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
8601// WEBASSEMBLY32-NEXT:#define __SIZEOF_WCHAR_T__ 4
8602// WEBASSEMBLY32-NEXT:#define __SIZEOF_WINT_T__ 4
8603// WEBASSEMBLY32-NEXT:#define __SIZE_FMTX__ "lX"
8604// WEBASSEMBLY32-NEXT:#define __SIZE_FMTo__ "lo"
8605// WEBASSEMBLY32-NEXT:#define __SIZE_FMTu__ "lu"
8606// WEBASSEMBLY32-NEXT:#define __SIZE_FMTx__ "lx"
8607// WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295UL
8608// WEBASSEMBLY32-NEXT:#define __SIZE_TYPE__ long unsigned int
8609// WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
8610// WEBASSEMBLY32-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00008611// WEBASSEMBLY32-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
8612// WEBASSEMBLY32-NOT:#define __STDC_NO_ATOMICS__
8613// WEBASSEMBLY32-NOT:#define __STDC_NO_COMPLEX__
8614// WEBASSEMBLY32-NOT:#define __STDC_NO_VLA__
8615// WEBASSEMBLY32-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00008616// WEBASSEMBLY32-NEXT:#define __STDC_UTF_16__ 1
8617// WEBASSEMBLY32-NEXT:#define __STDC_UTF_32__ 1
8618// WEBASSEMBLY32-NEXT:#define __STDC_VERSION__ 201112L
8619// WEBASSEMBLY32-NEXT:#define __STDC__ 1
8620// WEBASSEMBLY32-NEXT:#define __UINT16_C_SUFFIX__
8621// WEBASSEMBLY32-NEXT:#define __UINT16_FMTX__ "hX"
8622// WEBASSEMBLY32-NEXT:#define __UINT16_FMTo__ "ho"
8623// WEBASSEMBLY32-NEXT:#define __UINT16_FMTu__ "hu"
8624// WEBASSEMBLY32-NEXT:#define __UINT16_FMTx__ "hx"
8625// WEBASSEMBLY32-NEXT:#define __UINT16_MAX__ 65535
8626// WEBASSEMBLY32-NEXT:#define __UINT16_TYPE__ unsigned short
8627// WEBASSEMBLY32-NEXT:#define __UINT32_C_SUFFIX__ U
8628// WEBASSEMBLY32-NEXT:#define __UINT32_FMTX__ "X"
8629// WEBASSEMBLY32-NEXT:#define __UINT32_FMTo__ "o"
8630// WEBASSEMBLY32-NEXT:#define __UINT32_FMTu__ "u"
8631// WEBASSEMBLY32-NEXT:#define __UINT32_FMTx__ "x"
8632// WEBASSEMBLY32-NEXT:#define __UINT32_MAX__ 4294967295U
8633// WEBASSEMBLY32-NEXT:#define __UINT32_TYPE__ unsigned int
8634// WEBASSEMBLY32-NEXT:#define __UINT64_C_SUFFIX__ ULL
8635// WEBASSEMBLY32-NEXT:#define __UINT64_FMTX__ "llX"
8636// WEBASSEMBLY32-NEXT:#define __UINT64_FMTo__ "llo"
8637// WEBASSEMBLY32-NEXT:#define __UINT64_FMTu__ "llu"
8638// WEBASSEMBLY32-NEXT:#define __UINT64_FMTx__ "llx"
8639// WEBASSEMBLY32-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
8640// WEBASSEMBLY32-NEXT:#define __UINT64_TYPE__ long long unsigned int
8641// WEBASSEMBLY32-NEXT:#define __UINT8_C_SUFFIX__
8642// WEBASSEMBLY32-NEXT:#define __UINT8_FMTX__ "hhX"
8643// WEBASSEMBLY32-NEXT:#define __UINT8_FMTo__ "hho"
8644// WEBASSEMBLY32-NEXT:#define __UINT8_FMTu__ "hhu"
8645// WEBASSEMBLY32-NEXT:#define __UINT8_FMTx__ "hhx"
8646// WEBASSEMBLY32-NEXT:#define __UINT8_MAX__ 255
8647// WEBASSEMBLY32-NEXT:#define __UINT8_TYPE__ unsigned char
8648// WEBASSEMBLY32-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
8649// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTX__ "llX"
8650// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTo__ "llo"
8651// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTu__ "llu"
8652// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTx__ "llx"
8653// WEBASSEMBLY32-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
8654// WEBASSEMBLY32-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
8655// WEBASSEMBLY32-NEXT:#define __UINTMAX_WIDTH__ 64
8656// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTX__ "lX"
8657// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTo__ "lo"
8658// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTu__ "lu"
8659// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTx__ "lx"
8660// WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295UL
8661// WEBASSEMBLY32-NEXT:#define __UINTPTR_TYPE__ long unsigned int
8662// WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
8663// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTX__ "hX"
8664// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTo__ "ho"
8665// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTu__ "hu"
8666// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTx__ "hx"
8667// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_MAX__ 65535
8668// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
8669// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTX__ "X"
8670// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTo__ "o"
8671// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTu__ "u"
8672// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTx__ "x"
8673// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
8674// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
8675// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTX__ "llX"
8676// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTo__ "llo"
8677// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTu__ "llu"
8678// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTx__ "llx"
8679// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8680// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
8681// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
8682// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTo__ "hho"
8683// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
8684// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
8685// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_MAX__ 255
8686// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
8687// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
8688// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
8689// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
8690// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
8691// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_MAX__ 65535
8692// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
8693// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTX__ "X"
8694// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTo__ "o"
8695// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTu__ "u"
8696// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTx__ "x"
8697// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
8698// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
8699// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
8700// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
8701// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
8702// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
8703// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8704// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
8705// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
8706// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
8707// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
8708// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
8709// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_MAX__ 255
8710// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
8711// WEBASSEMBLY32-NEXT:#define __USER_LABEL_PREFIX__
8712// WEBASSEMBLY32-NEXT:#define __VERSION__ "{{.*}}"
8713// WEBASSEMBLY32-NEXT:#define __WCHAR_MAX__ 2147483647
8714// WEBASSEMBLY32-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00008715// WEBASSEMBLY32-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008716// WEBASSEMBLY32-NEXT:#define __WCHAR_WIDTH__ 32
8717// WEBASSEMBLY32-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00008718// WEBASSEMBLY32-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008719// WEBASSEMBLY32-NEXT:#define __WINT_WIDTH__ 32
8720// WEBASSEMBLY32-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00008721// WEBASSEMBLY32-NEXT:#define __clang_major__ {{.*}}
8722// WEBASSEMBLY32-NEXT:#define __clang_minor__ {{.*}}
8723// WEBASSEMBLY32-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008724// WEBASSEMBLY32-NEXT:#define __clang_version__ "{{.*}}"
8725// WEBASSEMBLY32-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008726// WEBASSEMBLY32-NOT:#define __wasm_simd128__
8727// WEBASSEMBLY32-NOT:#define __wasm_simd256__
8728// WEBASSEMBLY32-NOT:#define __wasm_simd512__
8729// WEBASSEMBLY32-NOT:#define __unix
8730// WEBASSEMBLY32-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00008731// WEBASSEMBLY32-NEXT:#define __wasm 1
8732// WEBASSEMBLY32-NEXT:#define __wasm32 1
8733// WEBASSEMBLY32-NEXT:#define __wasm32__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008734// WEBASSEMBLY32-NOT:#define __wasm64
8735// WEBASSEMBLY32-NOT:#define __wasm64__
James Y Knightc97efa42016-02-11 16:51:29 +00008736// WEBASSEMBLY32-NEXT:#define __wasm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008737//
8738// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
8739// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00008740// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY64 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00008741//
8742// WEBASSEMBLY64-NOT:#define _ILP32
James Y Knightc97efa42016-02-11 16:51:29 +00008743// WEBASSEMBLY64:#define _LP64 1
8744// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQUIRE 2
8745// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQ_REL 4
8746// WEBASSEMBLY64-NEXT:#define __ATOMIC_CONSUME 1
8747// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELAXED 0
8748// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELEASE 3
8749// WEBASSEMBLY64-NEXT:#define __ATOMIC_SEQ_CST 5
8750// WEBASSEMBLY64-NEXT:#define __BIGGEST_ALIGNMENT__ 16
8751// WEBASSEMBLY64-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8752// WEBASSEMBLY64-NEXT:#define __CHAR16_TYPE__ unsigned short
8753// WEBASSEMBLY64-NEXT:#define __CHAR32_TYPE__ unsigned int
8754// WEBASSEMBLY64-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00008755// WEBASSEMBLY64-NOT:#define __CHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00008756// WEBASSEMBLY64-NEXT:#define __CONSTANT_CFSTRINGS__ 1
8757// WEBASSEMBLY64-NEXT:#define __DBL_DECIMAL_DIG__ 17
8758// WEBASSEMBLY64-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8759// WEBASSEMBLY64-NEXT:#define __DBL_DIG__ 15
8760// WEBASSEMBLY64-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
8761// WEBASSEMBLY64-NEXT:#define __DBL_HAS_DENORM__ 1
8762// WEBASSEMBLY64-NEXT:#define __DBL_HAS_INFINITY__ 1
8763// WEBASSEMBLY64-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
8764// WEBASSEMBLY64-NEXT:#define __DBL_MANT_DIG__ 53
8765// WEBASSEMBLY64-NEXT:#define __DBL_MAX_10_EXP__ 308
8766// WEBASSEMBLY64-NEXT:#define __DBL_MAX_EXP__ 1024
8767// WEBASSEMBLY64-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
8768// WEBASSEMBLY64-NEXT:#define __DBL_MIN_10_EXP__ (-307)
8769// WEBASSEMBLY64-NEXT:#define __DBL_MIN_EXP__ (-1021)
8770// WEBASSEMBLY64-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
8771// WEBASSEMBLY64-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00008772// WEBASSEMBLY64-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00008773// WEBASSEMBLY64-NEXT:#define __FINITE_MATH_ONLY__ 0
8774// WEBASSEMBLY64-NEXT:#define __FLT_DECIMAL_DIG__ 9
8775// WEBASSEMBLY64-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8776// WEBASSEMBLY64-NEXT:#define __FLT_DIG__ 6
8777// WEBASSEMBLY64-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
8778// WEBASSEMBLY64-NEXT:#define __FLT_EVAL_METHOD__ 0
8779// WEBASSEMBLY64-NEXT:#define __FLT_HAS_DENORM__ 1
8780// WEBASSEMBLY64-NEXT:#define __FLT_HAS_INFINITY__ 1
8781// WEBASSEMBLY64-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
8782// WEBASSEMBLY64-NEXT:#define __FLT_MANT_DIG__ 24
8783// WEBASSEMBLY64-NEXT:#define __FLT_MAX_10_EXP__ 38
8784// WEBASSEMBLY64-NEXT:#define __FLT_MAX_EXP__ 128
8785// WEBASSEMBLY64-NEXT:#define __FLT_MAX__ 3.40282347e+38F
8786// WEBASSEMBLY64-NEXT:#define __FLT_MIN_10_EXP__ (-37)
8787// WEBASSEMBLY64-NEXT:#define __FLT_MIN_EXP__ (-125)
8788// WEBASSEMBLY64-NEXT:#define __FLT_MIN__ 1.17549435e-38F
8789// WEBASSEMBLY64-NEXT:#define __FLT_RADIX__ 2
8790// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8791// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8792// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8793// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8794// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8795// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
8796// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8797// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8798// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8799// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8800// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00008801// WEBASSEMBLY64-NEXT:#define __GNUC_MINOR__ {{.*}}
8802// WEBASSEMBLY64-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00008803// WEBASSEMBLY64-NEXT:#define __GNUC_STDC_INLINE__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00008804// WEBASSEMBLY64-NEXT:#define __GNUC__ {{.}}
James Y Knightc97efa42016-02-11 16:51:29 +00008805// WEBASSEMBLY64-NEXT:#define __GXX_ABI_VERSION 1002
Dan Gohmanc2853072015-09-03 22:51:53 +00008806// WEBASSEMBLY64-NOT:#define __ILP32__
James Y Knightc97efa42016-02-11 16:51:29 +00008807// WEBASSEMBLY64-NEXT:#define __INT16_C_SUFFIX__
8808// WEBASSEMBLY64-NEXT:#define __INT16_FMTd__ "hd"
8809// WEBASSEMBLY64-NEXT:#define __INT16_FMTi__ "hi"
8810// WEBASSEMBLY64-NEXT:#define __INT16_MAX__ 32767
8811// WEBASSEMBLY64-NEXT:#define __INT16_TYPE__ short
8812// WEBASSEMBLY64-NEXT:#define __INT32_C_SUFFIX__
8813// WEBASSEMBLY64-NEXT:#define __INT32_FMTd__ "d"
8814// WEBASSEMBLY64-NEXT:#define __INT32_FMTi__ "i"
8815// WEBASSEMBLY64-NEXT:#define __INT32_MAX__ 2147483647
8816// WEBASSEMBLY64-NEXT:#define __INT32_TYPE__ int
8817// WEBASSEMBLY64-NEXT:#define __INT64_C_SUFFIX__ LL
8818// WEBASSEMBLY64-NEXT:#define __INT64_FMTd__ "lld"
8819// WEBASSEMBLY64-NEXT:#define __INT64_FMTi__ "lli"
8820// WEBASSEMBLY64-NEXT:#define __INT64_MAX__ 9223372036854775807LL
8821// WEBASSEMBLY64-NEXT:#define __INT64_TYPE__ long long int
8822// WEBASSEMBLY64-NEXT:#define __INT8_C_SUFFIX__
8823// WEBASSEMBLY64-NEXT:#define __INT8_FMTd__ "hhd"
8824// WEBASSEMBLY64-NEXT:#define __INT8_FMTi__ "hhi"
8825// WEBASSEMBLY64-NEXT:#define __INT8_MAX__ 127
8826// WEBASSEMBLY64-NEXT:#define __INT8_TYPE__ signed char
8827// WEBASSEMBLY64-NEXT:#define __INTMAX_C_SUFFIX__ LL
8828// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTd__ "lld"
8829// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTi__ "lli"
8830// WEBASSEMBLY64-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
8831// WEBASSEMBLY64-NEXT:#define __INTMAX_TYPE__ long long int
8832// WEBASSEMBLY64-NEXT:#define __INTMAX_WIDTH__ 64
8833// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTd__ "ld"
8834// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTi__ "li"
8835// WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
8836// WEBASSEMBLY64-NEXT:#define __INTPTR_TYPE__ long int
8837// WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
8838// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTd__ "hd"
8839// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTi__ "hi"
8840// WEBASSEMBLY64-NEXT:#define __INT_FAST16_MAX__ 32767
8841// WEBASSEMBLY64-NEXT:#define __INT_FAST16_TYPE__ short
8842// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTd__ "d"
8843// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTi__ "i"
8844// WEBASSEMBLY64-NEXT:#define __INT_FAST32_MAX__ 2147483647
8845// WEBASSEMBLY64-NEXT:#define __INT_FAST32_TYPE__ int
8846// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTd__ "lld"
8847// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTi__ "lli"
8848// WEBASSEMBLY64-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
8849// WEBASSEMBLY64-NEXT:#define __INT_FAST64_TYPE__ long long int
8850// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTd__ "hhd"
8851// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTi__ "hhi"
8852// WEBASSEMBLY64-NEXT:#define __INT_FAST8_MAX__ 127
8853// WEBASSEMBLY64-NEXT:#define __INT_FAST8_TYPE__ signed char
8854// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTd__ "hd"
8855// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTi__ "hi"
8856// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_MAX__ 32767
8857// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_TYPE__ short
8858// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTd__ "d"
8859// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTi__ "i"
8860// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_MAX__ 2147483647
8861// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_TYPE__ int
8862// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTd__ "lld"
8863// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTi__ "lli"
8864// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
8865// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_TYPE__ long long int
8866// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
8867// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
8868// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_MAX__ 127
8869// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_TYPE__ signed char
8870// WEBASSEMBLY64-NEXT:#define __INT_MAX__ 2147483647
8871// WEBASSEMBLY64-NEXT:#define __LDBL_DECIMAL_DIG__ 36
8872// WEBASSEMBLY64-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
8873// WEBASSEMBLY64-NEXT:#define __LDBL_DIG__ 33
8874// WEBASSEMBLY64-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
8875// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_DENORM__ 1
8876// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_INFINITY__ 1
8877// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
8878// WEBASSEMBLY64-NEXT:#define __LDBL_MANT_DIG__ 113
8879// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_10_EXP__ 4932
8880// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_EXP__ 16384
8881// WEBASSEMBLY64-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
8882// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
8883// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_EXP__ (-16381)
8884// WEBASSEMBLY64-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
8885// WEBASSEMBLY64-NEXT:#define __LITTLE_ENDIAN__ 1
8886// WEBASSEMBLY64-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
8887// WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
8888// WEBASSEMBLY64-NEXT:#define __LP64__ 1
8889// WEBASSEMBLY64-NEXT:#define __NO_INLINE__ 1
8890// WEBASSEMBLY64-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
8891// WEBASSEMBLY64-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
8892// WEBASSEMBLY64-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
8893// WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
8894// WEBASSEMBLY64-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
8895// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTd__ "ld"
8896// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTi__ "li"
8897// WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
8898// WEBASSEMBLY64-NEXT:#define __PTRDIFF_TYPE__ long int
8899// WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
Dan Gohmanc2853072015-09-03 22:51:53 +00008900// WEBASSEMBLY64-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00008901// WEBASSEMBLY64-NEXT:#define __SCHAR_MAX__ 127
8902// WEBASSEMBLY64-NEXT:#define __SHRT_MAX__ 32767
8903// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
8904// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
8905// WEBASSEMBLY64-NEXT:#define __SIZEOF_DOUBLE__ 8
8906// WEBASSEMBLY64-NEXT:#define __SIZEOF_FLOAT__ 4
8907// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT128__ 16
8908// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT__ 4
8909// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
8910// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_LONG__ 8
8911// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
8912// WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
8913// WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
8914// WEBASSEMBLY64-NEXT:#define __SIZEOF_SHORT__ 2
8915// WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
8916// WEBASSEMBLY64-NEXT:#define __SIZEOF_WCHAR_T__ 4
8917// WEBASSEMBLY64-NEXT:#define __SIZEOF_WINT_T__ 4
8918// WEBASSEMBLY64-NEXT:#define __SIZE_FMTX__ "lX"
8919// WEBASSEMBLY64-NEXT:#define __SIZE_FMTo__ "lo"
8920// WEBASSEMBLY64-NEXT:#define __SIZE_FMTu__ "lu"
8921// WEBASSEMBLY64-NEXT:#define __SIZE_FMTx__ "lx"
8922// WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
8923// WEBASSEMBLY64-NEXT:#define __SIZE_TYPE__ long unsigned int
8924// WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
8925// WEBASSEMBLY64-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00008926// WEBASSEMBLY64-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
8927// WEBASSEMBLY64-NOT:#define __STDC_NO_ATOMICS__
8928// WEBASSEMBLY64-NOT:#define __STDC_NO_COMPLEX__
8929// WEBASSEMBLY64-NOT:#define __STDC_NO_VLA__
8930// WEBASSEMBLY64-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00008931// WEBASSEMBLY64-NEXT:#define __STDC_UTF_16__ 1
8932// WEBASSEMBLY64-NEXT:#define __STDC_UTF_32__ 1
8933// WEBASSEMBLY64-NEXT:#define __STDC_VERSION__ 201112L
8934// WEBASSEMBLY64-NEXT:#define __STDC__ 1
8935// WEBASSEMBLY64-NEXT:#define __UINT16_C_SUFFIX__
8936// WEBASSEMBLY64-NEXT:#define __UINT16_FMTX__ "hX"
8937// WEBASSEMBLY64-NEXT:#define __UINT16_FMTo__ "ho"
8938// WEBASSEMBLY64-NEXT:#define __UINT16_FMTu__ "hu"
8939// WEBASSEMBLY64-NEXT:#define __UINT16_FMTx__ "hx"
8940// WEBASSEMBLY64-NEXT:#define __UINT16_MAX__ 65535
8941// WEBASSEMBLY64-NEXT:#define __UINT16_TYPE__ unsigned short
8942// WEBASSEMBLY64-NEXT:#define __UINT32_C_SUFFIX__ U
8943// WEBASSEMBLY64-NEXT:#define __UINT32_FMTX__ "X"
8944// WEBASSEMBLY64-NEXT:#define __UINT32_FMTo__ "o"
8945// WEBASSEMBLY64-NEXT:#define __UINT32_FMTu__ "u"
8946// WEBASSEMBLY64-NEXT:#define __UINT32_FMTx__ "x"
8947// WEBASSEMBLY64-NEXT:#define __UINT32_MAX__ 4294967295U
8948// WEBASSEMBLY64-NEXT:#define __UINT32_TYPE__ unsigned int
8949// WEBASSEMBLY64-NEXT:#define __UINT64_C_SUFFIX__ ULL
8950// WEBASSEMBLY64-NEXT:#define __UINT64_FMTX__ "llX"
8951// WEBASSEMBLY64-NEXT:#define __UINT64_FMTo__ "llo"
8952// WEBASSEMBLY64-NEXT:#define __UINT64_FMTu__ "llu"
8953// WEBASSEMBLY64-NEXT:#define __UINT64_FMTx__ "llx"
8954// WEBASSEMBLY64-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
8955// WEBASSEMBLY64-NEXT:#define __UINT64_TYPE__ long long unsigned int
8956// WEBASSEMBLY64-NEXT:#define __UINT8_C_SUFFIX__
8957// WEBASSEMBLY64-NEXT:#define __UINT8_FMTX__ "hhX"
8958// WEBASSEMBLY64-NEXT:#define __UINT8_FMTo__ "hho"
8959// WEBASSEMBLY64-NEXT:#define __UINT8_FMTu__ "hhu"
8960// WEBASSEMBLY64-NEXT:#define __UINT8_FMTx__ "hhx"
8961// WEBASSEMBLY64-NEXT:#define __UINT8_MAX__ 255
8962// WEBASSEMBLY64-NEXT:#define __UINT8_TYPE__ unsigned char
8963// WEBASSEMBLY64-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
8964// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTX__ "llX"
8965// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTo__ "llo"
8966// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTu__ "llu"
8967// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTx__ "llx"
8968// WEBASSEMBLY64-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
8969// WEBASSEMBLY64-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
8970// WEBASSEMBLY64-NEXT:#define __UINTMAX_WIDTH__ 64
8971// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTX__ "lX"
8972// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTo__ "lo"
8973// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTu__ "lu"
8974// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTx__ "lx"
8975// WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
8976// WEBASSEMBLY64-NEXT:#define __UINTPTR_TYPE__ long unsigned int
8977// WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
8978// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTX__ "hX"
8979// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTo__ "ho"
8980// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTu__ "hu"
8981// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTx__ "hx"
8982// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_MAX__ 65535
8983// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
8984// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTX__ "X"
8985// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTo__ "o"
8986// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTu__ "u"
8987// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTx__ "x"
8988// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
8989// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
8990// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTX__ "llX"
8991// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTo__ "llo"
8992// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTu__ "llu"
8993// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTx__ "llx"
8994// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8995// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
8996// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
8997// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTo__ "hho"
8998// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
8999// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9000// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_MAX__ 255
9001// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9002// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9003// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9004// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9005// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9006// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_MAX__ 65535
9007// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9008// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9009// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9010// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9011// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9012// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9013// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9014// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9015// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9016// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9017// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9018// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9019// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9020// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9021// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9022// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9023// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9024// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_MAX__ 255
9025// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9026// WEBASSEMBLY64-NEXT:#define __USER_LABEL_PREFIX__
9027// WEBASSEMBLY64-NEXT:#define __VERSION__ "{{.*}}"
9028// WEBASSEMBLY64-NEXT:#define __WCHAR_MAX__ 2147483647
9029// WEBASSEMBLY64-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009030// WEBASSEMBLY64-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009031// WEBASSEMBLY64-NEXT:#define __WCHAR_WIDTH__ 32
9032// WEBASSEMBLY64-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009033// WEBASSEMBLY64-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009034// WEBASSEMBLY64-NEXT:#define __WINT_WIDTH__ 32
9035// WEBASSEMBLY64-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009036// WEBASSEMBLY64-NEXT:#define __clang_major__ {{.*}}
9037// WEBASSEMBLY64-NEXT:#define __clang_minor__ {{.*}}
9038// WEBASSEMBLY64-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009039// WEBASSEMBLY64-NEXT:#define __clang_version__ "{{.*}}"
9040// WEBASSEMBLY64-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009041// WEBASSEMBLY64-NOT:#define __wasm_simd128__
9042// WEBASSEMBLY64-NOT:#define __wasm_simd256__
9043// WEBASSEMBLY64-NOT:#define __wasm_simd512__
9044// WEBASSEMBLY64-NOT:#define __unix
9045// WEBASSEMBLY64-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009046// WEBASSEMBLY64-NEXT:#define __wasm 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009047// WEBASSEMBLY64-NOT:#define __wasm32
9048// WEBASSEMBLY64-NOT:#define __wasm32__
James Y Knightc97efa42016-02-11 16:51:29 +00009049// WEBASSEMBLY64-NEXT:#define __wasm64 1
9050// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
9051// WEBASSEMBLY64-NEXT:#define __wasm__ 1
Saleem Abdulrasool16fcf0a2016-02-26 16:34:01 +00009052
9053// RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
9054// CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
9055
9056// RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
9057// CYGWIN-X64: #define __USER_LABEL_PREFIX__
9058